#region License
/* 
 * Copyright (C) 1999-2022 John Källén.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; see the file COPYING.  If not, write to
 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 */
#endregion

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Reko.Arch.Sparc
{
    public enum Mnemonic
    {
        illegal = 0,

        add,
        addc,
        addcc,
        addccc,
        addx,
        addxcc,
        and,
        andcc,
        andn,
        andncc,
        ba,
        bcc,
        bcs,
        be,
        bg,
        bge,
        bgu,
        bl,
        ble,
        bleu,
        bn,
        bne,
        bneg,
        bpos,
        brgez,
        brgz,
        brlez,
        brlz,
        brnz,
        brz,
        bvc,
        bvs,
        call,
        casa,
        casxa,
        cb0,
        cb01,
        cb012,
        cb013,
        cb02,
        cb023,
        cb03,
        cb1,
        cb12,
        cb123,
        cb13,
        cb2,
        cb23,
        cb3,
        cba,
        cbn,
        done,
        fabss,
        faddd,
        faddq,
        fadds,
        fba,
        fbe,
        fbg,
        fbge,
        fbl,
        fble,
        fblg,
        fbn,
        fbne,
        fbo,
        fbu,
        fbue,
        fbug,
        fbuge,
        fbul,
        fbule,
        fcmpd,
        fcmped,
        fcmpeq,
        fcmpes,
        fcmpq,
        fcmps,
        fdivd,
        fdivq,
        fdivs,
        fdmulq,
        fdtoi,
        fdtoq,
        fdtos,
        fitod,
        fitoq,
        fitos,
        flush,
        flushw,
        fmovs,
        fmuld,
        fmulq,
        fmuls,
        fnegs,
        fqtod,
        fqtoi,
        fqtos,
        fsmuld,
        fsqrtd,
        fsqrtq,
        fsqrts,
        fstod,
        fstoi,
        fstoq,
        fsubd,
        fsubq,
        fsubs,
        jmpl,
        ld,
        lda,
        ldc,
        ldcsr,
        ldd,
        ldda,
        lddc,
        lddf,
        lddfa,
        ldf,
        ldfa,
        ldfsr,
        ldqf,
        ldqfa,
        ldsb,
        ldsba,
        ldsh,
        ldsha,
        ldstub,
        ldstuba,
        ldsw,
        ldswa,
        ldua,
        ldub,
        lduba,
        lduh,
        lduha,
        lduw,
        ldx,
        ldxa,
        ldxfsr,
        movcc,
        movrgez,
        movrgz,
        movrlez,
        movrlz,
        movrnz,
        movrz,
        mulscc,
        mulx,
        or,
        orcc,
        orn,
        orncc,
        popc,
        prefetch,
        prefetcha,
        rd,
        rdpr,
        rdpsr,
        rdtbr,
        restore,
        restored,
        retry,
        rett,
        @return,
        save,
        saved,
        sdiv,
        sdivcc,
        sdivx,
        sethi,
        sll,
        sllx,
        smul,
        smulcc,
        sra,
        srax,
        srl,
        srlx,
        st,
        sta,
        stb,
        stba,
        stc,
        stcsr,
        std,
        stda,
        stdc,
        stdcq,
        stdf,
        stdfa,
        stdfq,
        stf,
        stfa,
        stfsr,
        sth,
        stha,
        stqf,
        stqfa,
        stw,
        stwa,
        stx,
        stxa,
        stxfsr,
        sub,
        subc,
        subcc,
        subx,
        subxcc,
        swap,
        swapa,
        ta,
        taddcc,
        taddcctv,
        tcc,
        tcs,
        te,
        tg,
        tge,
        tgu,
        Ticc,
        tl,
        tle,
        tleu,
        tn,
        tne,
        tneg,
        tpos,
        tsubcc,
        tsubcctv,
        tvc,
        tvs,
        udiv,
        udivcc,
        udivx,
        umul,
        umulcc,
        unimp,
        wrasr,
        wrpr,
        wrpsr,
        wrtbr,
        wrwim,
        xnor,
        xnorcc,
        xor,
        xorcc,
    }
}
