/* Generated automatically from machmode.def and config/riscv/riscv-modes.def by genmodes. */ #include "bconfig.h" #include "system.h" #include "coretypes.h" const char *const mode_name[NUM_MACHINE_MODES] = { "VOID", "BLK", "CC", "BI", "QI", "HI", "SI", "DI", "TI", "QQ", "HQ", "SQ", "DQ", "TQ", "UQQ", "UHQ", "USQ", "UDQ", "UTQ", "HA", "SA", "DA", "TA", "UHA", "USA", "UDA", "UTA", "SF", "DF", "TF", "SD", "DD", "TD", "CQI", "CHI", "CSI", "CDI", "CTI", "SC", "DC", "TC", }; const unsigned char mode_class[NUM_MACHINE_MODES] = { MODE_RANDOM, /* VOID */ MODE_RANDOM, /* BLK */ MODE_CC, /* CC */ MODE_INT, /* BI */ MODE_INT, /* QI */ MODE_INT, /* HI */ MODE_INT, /* SI */ MODE_INT, /* DI */ MODE_INT, /* TI */ MODE_FRACT, /* QQ */ MODE_FRACT, /* HQ */ MODE_FRACT, /* SQ */ MODE_FRACT, /* DQ */ MODE_FRACT, /* TQ */ MODE_UFRACT, /* UQQ */ MODE_UFRACT, /* UHQ */ MODE_UFRACT, /* USQ */ MODE_UFRACT, /* UDQ */ MODE_UFRACT, /* UTQ */ MODE_ACCUM, /* HA */ MODE_ACCUM, /* SA */ MODE_ACCUM, /* DA */ MODE_ACCUM, /* TA */ MODE_UACCUM, /* UHA */ MODE_UACCUM, /* USA */ MODE_UACCUM, /* UDA */ MODE_UACCUM, /* UTA */ MODE_FLOAT, /* SF */ MODE_FLOAT, /* DF */ MODE_FLOAT, /* TF */ MODE_DECIMAL_FLOAT, /* SD */ MODE_DECIMAL_FLOAT, /* DD */ MODE_DECIMAL_FLOAT, /* TD */ MODE_COMPLEX_INT, /* CQI */ MODE_COMPLEX_INT, /* CHI */ MODE_COMPLEX_INT, /* CSI */ MODE_COMPLEX_INT, /* CDI */ MODE_COMPLEX_INT, /* CTI */ MODE_COMPLEX_FLOAT, /* SC */ MODE_COMPLEX_FLOAT, /* DC */ MODE_COMPLEX_FLOAT, /* TC */ }; const poly_uint16_pod mode_nunits[NUM_MACHINE_MODES] = { { 0 }, /* VOID */ { 0 }, /* BLK */ { 1 }, /* CC */ { 1 }, /* BI */ { 1 }, /* QI */ { 1 }, /* HI */ { 1 }, /* SI */ { 1 }, /* DI */ { 1 }, /* TI */ { 1 }, /* QQ */ { 1 }, /* HQ */ { 1 }, /* SQ */ { 1 }, /* DQ */ { 1 }, /* TQ */ { 1 }, /* UQQ */ { 1 }, /* UHQ */ { 1 }, /* USQ */ { 1 }, /* UDQ */ { 1 }, /* UTQ */ { 1 }, /* HA */ { 1 }, /* SA */ { 1 }, /* DA */ { 1 }, /* TA */ { 1 }, /* UHA */ { 1 }, /* USA */ { 1 }, /* UDA */ { 1 }, /* UTA */ { 1 }, /* SF */ { 1 }, /* DF */ { 1 }, /* TF */ { 1 }, /* SD */ { 1 }, /* DD */ { 1 }, /* TD */ { 2 }, /* CQI */ { 2 }, /* CHI */ { 2 }, /* CSI */ { 2 }, /* CDI */ { 2 }, /* CTI */ { 2 }, /* SC */ { 2 }, /* DC */ { 2 }, /* TC */ }; const unsigned char mode_wider[NUM_MACHINE_MODES] = { E_VOIDmode, /* VOID */ E_VOIDmode, /* BLK */ E_VOIDmode, /* CC */ E_QImode, /* BI */ E_HImode, /* QI */ E_SImode, /* HI */ E_DImode, /* SI */ E_TImode, /* DI */ E_VOIDmode, /* TI */ E_HQmode, /* QQ */ E_SQmode, /* HQ */ E_DQmode, /* SQ */ E_TQmode, /* DQ */ E_VOIDmode, /* TQ */ E_UHQmode, /* UQQ */ E_USQmode, /* UHQ */ E_UDQmode, /* USQ */ E_UTQmode, /* UDQ */ E_VOIDmode, /* UTQ */ E_SAmode, /* HA */ E_DAmode, /* SA */ E_TAmode, /* DA */ E_VOIDmode, /* TA */ E_USAmode, /* UHA */ E_UDAmode, /* USA */ E_UTAmode, /* UDA */ E_VOIDmode, /* UTA */ E_DFmode, /* SF */ E_TFmode, /* DF */ E_VOIDmode, /* TF */ E_DDmode, /* SD */ E_TDmode, /* DD */ E_VOIDmode, /* TD */ E_CHImode, /* CQI */ E_CSImode, /* CHI */ E_CDImode, /* CSI */ E_CTImode, /* CDI */ E_VOIDmode, /* CTI */ E_DCmode, /* SC */ E_TCmode, /* DC */ E_VOIDmode, /* TC */ }; const unsigned char mode_2xwider[NUM_MACHINE_MODES] = { E_VOIDmode, /* VOID */ E_BLKmode, /* BLK */ E_VOIDmode, /* CC */ E_VOIDmode, /* BI */ E_HImode, /* QI */ E_SImode, /* HI */ E_DImode, /* SI */ E_TImode, /* DI */ E_VOIDmode, /* TI */ E_HQmode, /* QQ */ E_SQmode, /* HQ */ E_DQmode, /* SQ */ E_TQmode, /* DQ */ E_VOIDmode, /* TQ */ E_UHQmode, /* UQQ */ E_USQmode, /* UHQ */ E_UDQmode, /* USQ */ E_UTQmode, /* UDQ */ E_VOIDmode, /* UTQ */ E_SAmode, /* HA */ E_DAmode, /* SA */ E_TAmode, /* DA */ E_VOIDmode, /* TA */ E_USAmode, /* UHA */ E_UDAmode, /* USA */ E_UTAmode, /* UDA */ E_VOIDmode, /* UTA */ E_DFmode, /* SF */ E_TFmode, /* DF */ E_VOIDmode, /* TF */ E_DDmode, /* SD */ E_TDmode, /* DD */ E_VOIDmode, /* TD */ E_CHImode, /* CQI */ E_CSImode, /* CHI */ E_CDImode, /* CSI */ E_CTImode, /* CDI */ E_VOIDmode, /* CTI */ E_DCmode, /* SC */ E_TCmode, /* DC */ E_VOIDmode, /* TC */ }; const unsigned char mode_inner[NUM_MACHINE_MODES] = { E_VOIDmode, /* VOID */ E_BLKmode, /* BLK */ E_CCmode, /* CC */ E_BImode, /* BI */ E_QImode, /* QI */ E_HImode, /* HI */ E_SImode, /* SI */ E_DImode, /* DI */ E_TImode, /* TI */ E_QQmode, /* QQ */ E_HQmode, /* HQ */ E_SQmode, /* SQ */ E_DQmode, /* DQ */ E_TQmode, /* TQ */ E_UQQmode, /* UQQ */ E_UHQmode, /* UHQ */ E_USQmode, /* USQ */ E_UDQmode, /* UDQ */ E_UTQmode, /* UTQ */ E_HAmode, /* HA */ E_SAmode, /* SA */ E_DAmode, /* DA */ E_TAmode, /* TA */ E_UHAmode, /* UHA */ E_USAmode, /* USA */ E_UDAmode, /* UDA */ E_UTAmode, /* UTA */ E_SFmode, /* SF */ E_DFmode, /* DF */ E_TFmode, /* TF */ E_SDmode, /* SD */ E_DDmode, /* DD */ E_TDmode, /* TD */ E_QImode, /* CQI */ E_HImode, /* CHI */ E_SImode, /* CSI */ E_DImode, /* CDI */ E_TImode, /* CTI */ E_SFmode, /* SC */ E_DFmode, /* DC */ E_TFmode, /* TC */ }; const unsigned char class_narrowest_mode[MAX_MODE_CLASS] = { MIN_MODE_RANDOM, /* VOID */ MIN_MODE_CC, /* CC */ MIN_MODE_INT, /* QI */ MIN_MODE_PARTIAL_INT, /* VOID */ MIN_MODE_FRACT, /* QQ */ MIN_MODE_UFRACT, /* UQQ */ MIN_MODE_ACCUM, /* HA */ MIN_MODE_UACCUM, /* UHA */ MIN_MODE_FLOAT, /* SF */ MIN_MODE_DECIMAL_FLOAT, /* SD */ MIN_MODE_COMPLEX_INT, /* CQI */ MIN_MODE_COMPLEX_FLOAT, /* SC */ MIN_MODE_VECTOR_BOOL, /* VOID */ MIN_MODE_VECTOR_INT, /* VOID */ MIN_MODE_VECTOR_FRACT, /* VOID */ MIN_MODE_VECTOR_UFRACT, /* VOID */ MIN_MODE_VECTOR_ACCUM, /* VOID */ MIN_MODE_VECTOR_UACCUM, /* VOID */ MIN_MODE_VECTOR_FLOAT, /* VOID */ MIN_MODE_OPAQUE, /* VOID */ };