/* Generated automatically by the program `genattr-common'
   from the machine description file `md'.  */

#ifndef GCC_INSN_ATTR_COMMON_H
#define GCC_INSN_ATTR_COMMON_H

enum attr_got {GOT_UNSET, GOT_XGOT_HIGH, GOT_LOAD};
enum attr_move_type {MOVE_TYPE_UNKNOWN, MOVE_TYPE_LOAD, MOVE_TYPE_FPLOAD, MOVE_TYPE_STORE, MOVE_TYPE_FPSTORE, MOVE_TYPE_MTC, MOVE_TYPE_MFC, MOVE_TYPE_MOVE, MOVE_TYPE_FMOVE, MOVE_TYPE_CONST, MOVE_TYPE_LOGICAL, MOVE_TYPE_ARITH, MOVE_TYPE_ANDI, MOVE_TYPE_SHIFT_SHIFT, MOVE_TYPE_RDVLENB};
enum attr_mode {MODE_UNKNOWN, MODE_NONE, MODE_QI, MODE_HI, MODE_SI, MODE_DI, MODE_TI, MODE_HF, MODE_SF, MODE_DF, MODE_TF, MODE_RVVMF64BI, MODE_RVVMF32BI, MODE_RVVMF16BI, MODE_RVVMF8BI, MODE_RVVMF4BI, MODE_RVVMF2BI, MODE_RVVM1BI, MODE_RVVM8QI, MODE_RVVM4QI, MODE_RVVM2QI, MODE_RVVM1QI, MODE_RVVMF2QI, MODE_RVVMF4QI, MODE_RVVMF8QI, MODE_RVVM8HI, MODE_RVVM4HI, MODE_RVVM2HI, MODE_RVVM1HI, MODE_RVVMF2HI, MODE_RVVMF4HI, MODE_RVVM8HF, MODE_RVVM4HF, MODE_RVVM2HF, MODE_RVVM1HF, MODE_RVVMF2HF, MODE_RVVMF4HF, MODE_RVVM8SI, MODE_RVVM4SI, MODE_RVVM2SI, MODE_RVVM1SI, MODE_RVVMF2SI, MODE_RVVM8SF, MODE_RVVM4SF, MODE_RVVM2SF, MODE_RVVM1SF, MODE_RVVMF2SF, MODE_RVVM8DI, MODE_RVVM4DI, MODE_RVVM2DI, MODE_RVVM1DI, MODE_RVVM8DF, MODE_RVVM4DF, MODE_RVVM2DF, MODE_RVVM1DF, MODE_RVVM1X8QI, MODE_RVVMF2X8QI, MODE_RVVMF4X8QI, MODE_RVVMF8X8QI, MODE_RVVM1X7QI, MODE_RVVMF2X7QI, MODE_RVVMF4X7QI, MODE_RVVMF8X7QI, MODE_RVVM1X6QI, MODE_RVVMF2X6QI, MODE_RVVMF4X6QI, MODE_RVVMF8X6QI, MODE_RVVM1X5QI, MODE_RVVMF2X5QI, MODE_RVVMF4X5QI, MODE_RVVMF8X5QI, MODE_RVVM2X4QI, MODE_RVVM1X4QI, MODE_RVVMF2X4QI, MODE_RVVMF4X4QI, MODE_RVVMF8X4QI, MODE_RVVM2X3QI, MODE_RVVM1X3QI, MODE_RVVMF2X3QI, MODE_RVVMF4X3QI, MODE_RVVMF8X3QI, MODE_RVVM4X2QI, MODE_RVVM2X2QI, MODE_RVVM1X2QI, MODE_RVVMF2X2QI, MODE_RVVMF4X2QI, MODE_RVVMF8X2QI, MODE_RVVM1X8HI, MODE_RVVMF2X8HI, MODE_RVVMF4X8HI, MODE_RVVM1X7HI, MODE_RVVMF2X7HI, MODE_RVVMF4X7HI, MODE_RVVM1X6HI, MODE_RVVMF2X6HI, MODE_RVVMF4X6HI, MODE_RVVM1X5HI, MODE_RVVMF2X5HI, MODE_RVVMF4X5HI, MODE_RVVM2X4HI, MODE_RVVM1X4HI, MODE_RVVMF2X4HI, MODE_RVVMF4X4HI, MODE_RVVM2X3HI, MODE_RVVM1X3HI, MODE_RVVMF2X3HI, MODE_RVVMF4X3HI, MODE_RVVM4X2HI, MODE_RVVM2X2HI, MODE_RVVM1X2HI, MODE_RVVMF2X2HI, MODE_RVVMF4X2HI, MODE_RVVM1X8HF, MODE_RVVMF2X8HF, MODE_RVVMF4X8HF, MODE_RVVM1X7HF, MODE_RVVMF2X7HF, MODE_RVVMF4X7HF, MODE_RVVM1X6HF, MODE_RVVMF2X6HF, MODE_RVVMF4X6HF, MODE_RVVM1X5HF, MODE_RVVMF2X5HF, MODE_RVVMF4X5HF, MODE_RVVM2X4HF, MODE_RVVM1X4HF, MODE_RVVMF2X4HF, MODE_RVVMF4X4HF, MODE_RVVM2X3HF, MODE_RVVM1X3HF, MODE_RVVMF2X3HF, MODE_RVVMF4X3HF, MODE_RVVM4X2HF, MODE_RVVM2X2HF, MODE_RVVM1X2HF, MODE_RVVMF2X2HF, MODE_RVVMF4X2HF, MODE_RVVM1X8SI, MODE_RVVMF2X8SI, MODE_RVVM1X7SI, MODE_RVVMF2X7SI, MODE_RVVM1X6SI, MODE_RVVMF2X6SI, MODE_RVVM1X5SI, MODE_RVVMF2X5SI, MODE_RVVM2X4SI, MODE_RVVM1X4SI, MODE_RVVMF2X4SI, MODE_RVVM2X3SI, MODE_RVVM1X3SI, MODE_RVVMF2X3SI, MODE_RVVM4X2SI, MODE_RVVM2X2SI, MODE_RVVM1X2SI, MODE_RVVMF2X2SI, MODE_RVVM1X8SF, MODE_RVVMF2X8SF, MODE_RVVM1X7SF, MODE_RVVMF2X7SF, MODE_RVVM1X6SF, MODE_RVVMF2X6SF, MODE_RVVM1X5SF, MODE_RVVMF2X5SF, MODE_RVVM2X4SF, MODE_RVVM1X4SF, MODE_RVVMF2X4SF, MODE_RVVM2X3SF, MODE_RVVM1X3SF, MODE_RVVMF2X3SF, MODE_RVVM4X2SF, MODE_RVVM2X2SF, MODE_RVVM1X2SF, MODE_RVVMF2X2SF, MODE_RVVM1X8DI, MODE_RVVM1X7DI, MODE_RVVM1X6DI, MODE_RVVM1X5DI, MODE_RVVM2X4DI, MODE_RVVM1X4DI, MODE_RVVM2X3DI, MODE_RVVM1X3DI, MODE_RVVM4X2DI, MODE_RVVM2X2DI, MODE_RVVM1X2DI, MODE_RVVM1X8DF, MODE_RVVM1X7DF, MODE_RVVM1X6DF, MODE_RVVM1X5DF, MODE_RVVM2X4DF, MODE_RVVM1X4DF, MODE_RVVM2X3DF, MODE_RVVM1X3DF, MODE_RVVM4X2DF, MODE_RVVM2X2DF, MODE_RVVM1X2DF, MODE_V1QI, MODE_V2QI, MODE_V4QI, MODE_V8QI, MODE_V16QI, MODE_V32QI, MODE_V64QI, MODE_V128QI, MODE_V256QI, MODE_V512QI, MODE_V1024QI, MODE_V2048QI, MODE_V4096QI, MODE_V1HI, MODE_V2HI, MODE_V4HI, MODE_V8HI, MODE_V16HI, MODE_V32HI, MODE_V64HI, MODE_V128HI, MODE_V256HI, MODE_V512HI, MODE_V1024HI, MODE_V2048HI, MODE_V1SI, MODE_V2SI, MODE_V4SI, MODE_V8SI, MODE_V16SI, MODE_V32SI, MODE_V64SI, MODE_V128SI, MODE_V256SI, MODE_V512SI, MODE_V1024SI, MODE_V1DI, MODE_V2DI, MODE_V4DI, MODE_V8DI, MODE_V16DI, MODE_V32DI, MODE_V64DI, MODE_V128DI, MODE_V256DI, MODE_V512DI, MODE_V1HF, MODE_V2HF, MODE_V4HF, MODE_V8HF, MODE_V16HF, MODE_V32HF, MODE_V64HF, MODE_V128HF, MODE_V256HF, MODE_V512HF, MODE_V1024HF, MODE_V2048HF, MODE_V1SF, MODE_V2SF, MODE_V4SF, MODE_V8SF, MODE_V16SF, MODE_V32SF, MODE_V64SF, MODE_V128SF, MODE_V256SF, MODE_V512SF, MODE_V1024SF, MODE_V1DF, MODE_V2DF, MODE_V4DF, MODE_V8DF, MODE_V16DF, MODE_V32DF, MODE_V64DF, MODE_V128DF, MODE_V256DF, MODE_V512DF, MODE_V1BI, MODE_V2BI, MODE_V4BI, MODE_V8BI, MODE_V16BI, MODE_V32BI, MODE_V64BI, MODE_V128BI, MODE_V256BI, MODE_V512BI, MODE_V1024BI, MODE_V2048BI, MODE_V4096BI};
enum attr_dword_mode {DWORD_MODE_NO, DWORD_MODE_YES};
enum attr_ext {EXT_BASE, EXT_F, EXT_D, EXT_VECTOR};
enum attr_ext_enabled {EXT_ENABLED_NO, EXT_ENABLED_YES};
enum attr_type {TYPE_UNKNOWN, TYPE_BRANCH, TYPE_JUMP, TYPE_JALR, TYPE_RET, TYPE_CALL, TYPE_LOAD, TYPE_FPLOAD, TYPE_STORE, TYPE_FPSTORE, TYPE_MTC, TYPE_MFC, TYPE_CONST, TYPE_ARITH, TYPE_LOGICAL, TYPE_SHIFT, TYPE_SLT, TYPE_IMUL, TYPE_IDIV, TYPE_MOVE, TYPE_FMOVE, TYPE_FADD, TYPE_FMUL, TYPE_FMADD, TYPE_FDIV, TYPE_FCMP, TYPE_FCVT, TYPE_FCVT_I2F, TYPE_FCVT_F2I, TYPE_FSQRT, TYPE_MULTI, TYPE_AUIPC, TYPE_SFB_ALU, TYPE_NOP, TYPE_TRAP, TYPE_GHOST, TYPE_BITMANIP, TYPE_ROTATE, TYPE_CLMUL, TYPE_MIN, TYPE_MAX, TYPE_MINU, TYPE_MAXU, TYPE_CLZ, TYPE_CTZ, TYPE_CPOP, TYPE_ATOMIC, TYPE_CONDMOVE, TYPE_CRYPTO, TYPE_MVPAIR, TYPE_ZICOND, TYPE_RDVLENB, TYPE_RDVL, TYPE_WRVXRM, TYPE_WRFRM, TYPE_RDFRM, TYPE_VSETVL, TYPE_VSETVL_PRE, TYPE_VLDE, TYPE_VSTE, TYPE_VLDM, TYPE_VSTM, TYPE_VLDS, TYPE_VSTS, TYPE_VLDUX, TYPE_VLDOX, TYPE_VSTUX, TYPE_VSTOX, TYPE_VLDFF, TYPE_VLDR, TYPE_VSTR, TYPE_VLSEGDE, TYPE_VSSEGTE, TYPE_VLSEGDS, TYPE_VSSEGTS, TYPE_VLSEGDUX, TYPE_VLSEGDOX, TYPE_VSSEGTUX, TYPE_VSSEGTOX, TYPE_VLSEGDFF, TYPE_VIALU, TYPE_VIWALU, TYPE_VEXT, TYPE_VICALU, TYPE_VSHIFT, TYPE_VNSHIFT, TYPE_VICMP, TYPE_VIMINMAX, TYPE_VIMUL, TYPE_VIDIV, TYPE_VIWMUL, TYPE_VIMULADD, TYPE_VIWMULADD, TYPE_VIMERGE, TYPE_VIMOV, TYPE_VSALU, TYPE_VAALU, TYPE_VSMUL, TYPE_VSSHIFT, TYPE_VNCLIP, TYPE_VFALU, TYPE_VFWALU, TYPE_VFMUL, TYPE_VFDIV, TYPE_VFWMUL, TYPE_VFMULADD, TYPE_VFWMULADD, TYPE_VFSQRT, TYPE_VFRECP, TYPE_VFCMP, TYPE_VFMINMAX, TYPE_VFSGNJ, TYPE_VFCLASS, TYPE_VFMERGE, TYPE_VFMOV, TYPE_VFCVTITOF, TYPE_VFCVTFTOI, TYPE_VFWCVTITOF, TYPE_VFWCVTFTOI, TYPE_VFWCVTFTOF, TYPE_VFNCVTITOF, TYPE_VFNCVTFTOI, TYPE_VFNCVTFTOF, TYPE_VIRED, TYPE_VIWRED, TYPE_VFREDU, TYPE_VFREDO, TYPE_VFWREDU, TYPE_VFWREDO, TYPE_VMALU, TYPE_VMPOP, TYPE_VMFFS, TYPE_VMSFS, TYPE_VMIOTA, TYPE_VMIDX, TYPE_VIMOVVX, TYPE_VIMOVXV, TYPE_VFMOVVF, TYPE_VFMOVFV, TYPE_VSLIDEUP, TYPE_VSLIDEDOWN, TYPE_VISLIDE1UP, TYPE_VISLIDE1DOWN, TYPE_VFSLIDE1UP, TYPE_VFSLIDE1DOWN, TYPE_VGATHER, TYPE_VCOMPRESS, TYPE_VMOV, TYPE_VECTOR, TYPE_VANDN, TYPE_VBREV, TYPE_VBREV8, TYPE_VREV8, TYPE_VCLZ, TYPE_VCTZ, TYPE_VCPOP, TYPE_VROL, TYPE_VROR, TYPE_VWSLL, TYPE_VCLMUL, TYPE_VCLMULH, TYPE_VGHSH, TYPE_VGMUL, TYPE_VAESEF, TYPE_VAESEM, TYPE_VAESDF, TYPE_VAESDM, TYPE_VAESKF1, TYPE_VAESKF2, TYPE_VAESZ, TYPE_VSHA2MS, TYPE_VSHA2CH, TYPE_VSHA2CL, TYPE_VSM4K, TYPE_VSM4R, TYPE_VSM3ME, TYPE_VSM3C};
enum attr_fp_vector_disabled {FP_VECTOR_DISABLED_NO, FP_VECTOR_DISABLED_YES};
enum attr_spec_restriction {SPEC_RESTRICTION_NONE, SPEC_RESTRICTION_THV, SPEC_RESTRICTION_RVV};
enum attr_spec_restriction_disabled {SPEC_RESTRICTION_DISABLED_NO, SPEC_RESTRICTION_DISABLED_YES};
enum attr_enabled {ENABLED_NO, ENABLED_YES};
enum attr_cannot_copy {CANNOT_COPY_NO, CANNOT_COPY_YES};
enum attr_tune {TUNE_GENERIC, TUNE_SIFIVE_7, TUNE_SIFIVE_P400, TUNE_SIFIVE_P600, TUNE_XIANGSHAN, TUNE_GENERIC_OOO};
enum attr_has_vtype_op {HAS_VTYPE_OP_FALSE, HAS_VTYPE_OP_TRUE};
enum attr_has_vl_op {HAS_VL_OP_FALSE, HAS_VL_OP_TRUE};
enum attr_vxrm_mode {VXRM_MODE_RNU, VXRM_MODE_RNE, VXRM_MODE_RDN, VXRM_MODE_ROD, VXRM_MODE_NONE};
#define INSN_SCHEDULING
#define DELAY_SLOTS 0

#endif /* GCC_INSN_ATTR_COMMON_H */
