#include "defs.h"#include "mtypes.h"#include "ir_a2b_util.h"
Go to the source code of this file.
Classes | |
| struct | MtypeToStr_t |
Functions | |
| const char * | Mtype_Name (TYPE_ID tid) |
| TYPE_ID | Name_To_Mtype (const char *nm) |
| TYPE_ID | Mtype_AlignmentClass (INT32 align, mUINT8 type_class) |
| TYPE_ID | Mtype_Promote_to_A4A8 (TYPE_ID x) |
| TYPE_ID | Mtype_TransferSign (TYPE_ID x, TYPE_ID y) |
| TYPE_ID | Mtype_TransferSize (TYPE_ID x, TYPE_ID y) |
| TYPE_ID | Mtype_complex_to_real (TYPE_ID type) |
| TYPE_ID | Mtype_comparison (TYPE_ID type) |
| TYPE_ID | Mtype_next_alignment (TYPE_ID type) |
| TYPE_ID | Mtype_prev_alignment (TYPE_ID type) |
Variables | |
| TYPE_DESC | Machine_Types [] |
| MtypeToStr_t | MtypeToNameTbl [] |
| static TYPE_ID | Machine_Next_Alignment [] |
| static TYPE_ID | Machine_Prev_Alignment [] |
| MTYPE_MASK | Machine_Types_Available = 0x1fdffe |
Definition at line 252 of file mtypes.cxx.
References MTYPE_align_min, MTYPE_id, and MTYPE_type_class.
Definition at line 371 of file mtypes.cxx.
References MTYPE_I1, MTYPE_I2, MTYPE_U1, and MTYPE_U2.
Referenced by cwh_expr_compare(), cwh_stmt_falsebr(), cwh_stmt_truebr(), fei_doloop(), fei_ibits(), fei_leqv(), fei_lxor(), fei_mvbits(), Fill_Align_Symbol(), WN_Create_Shared_Store(), WN_Iload(), WN_Ldid(), and WN_Rrotate().
Definition at line 344 of file mtypes.cxx.
References MTYPE_C4, MTYPE_C8, MTYPE_CQ, and MTYPE_is_complex.
Referenced by cwh_convert_to_ty(), cwh_get_highest_type(), fei_imag(), Get_Return_Info(), and WN_generic_call().
| const char* Mtype_Name | ( | TYPE_ID | tid | ) |
Definition at line 226 of file mtypes.cxx.
References ir_a2b::MapEnumToStr(), and MTYPE_LAST.
Referenced by Check_TCON(), complex_divide(), complex_sqrt(), Em_Targ_Emit_Const(), Extract_Complex_Imag(), Extract_Complex_Real(), Extract_Quad_Hi(), Extract_Quad_Lo(), Hash_TCON(), Host_To_Targ(), Host_To_Targ_Complex(), Host_To_Targ_Complex_4(), Host_To_Targ_Float(), Host_To_Targ_Float_4(), Host_To_Targ_String(), Host_To_Targ_UV(), Make_Complex(), Make_Const(), TY::Print(), Targ_Conv(), Targ_Emit_Const(), Targ_fp_class(), Targ_Hexfptoc(), Targ_Is_Integral(), Targ_Is_Zero(), Targ_Print(), Targ_String_Address(), Targ_String_Length(), Targ_To_Host(), Targ_To_Host_ComplexImag(), Targ_To_Host_ComplexReal(), Targ_To_Host_Float(), Targ_To_Host_Quad(), and Targ_WhirlOp().

Definition at line 398 of file mtypes.cxx.
References Machine_Next_Alignment.
Definition at line 414 of file mtypes.cxx.
References Machine_Prev_Alignment.
Definition at line 275 of file mtypes.cxx.
References MTYPE_byte_size, and MTYPE_is_integral.
Referenced by Mtype_TransferSign().
Definition at line 295 of file mtypes.cxx.
References MTYPE_A4, MTYPE_A8, MTYPE_complement, Mtype_Promote_to_A4A8(), and MTYPE_signed.
Referenced by U64_LOWER_expr(), WN_Create_Shared_Load(), WN_Type_Conversion(), and WN_UVConst().

Definition at line 317 of file mtypes.cxx.
References MTYPE_A4, MTYPE_A8, MTYPE_byte_size, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, and MTYPE_signed.
Referenced by U64_LOWER_expr(), and Widen_Mtype().
| TYPE_ID Name_To_Mtype | ( | const char * | nm | ) |
Definition at line 235 of file mtypes.cxx.
References ir_a2b::MapStrToEnum(), and MTYPE_LAST.

TYPE_ID Machine_Next_Alignment[] [static] |
{
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_I2,
MTYPE_I4,
MTYPE_I8,
MTYPE_UNKNOWN,
MTYPE_U2,
MTYPE_U4,
MTYPE_U8,
MTYPE_UNKNOWN,
MTYPE_F8,
MTYPE_FQ,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_C8,
MTYPE_CQ,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN
}
Definition at line 141 of file mtypes.cxx.
Referenced by Mtype_next_alignment().
TYPE_ID Machine_Prev_Alignment[] [static] |
{
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_I1,
MTYPE_I2,
MTYPE_I4,
MTYPE_UNKNOWN,
MTYPE_U1,
MTYPE_U2,
MTYPE_U4,
MTYPE_UNKNOWN,
MTYPE_F4,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_F8,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_C4,
MTYPE_C8,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN,
MTYPE_UNKNOWN
}
Definition at line 169 of file mtypes.cxx.
Referenced by Mtype_prev_alignment().
{ { MTYPE_UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, MTYPE_UNKNOWN },
{ MTYPE_B, 1, 0, 0, 0, 0, 0, 0, 0, 0, MTYPE_CLASS_INTEGER,0, MTYPE_B },
{ MTYPE_I1, 8, 8, 8, 1, 1, 1, 1, 0, 0, MTYPE_CLASS_INTEGER,1, MTYPE_U1 },
{ MTYPE_I2, 16, 16, 16, 2, 2, 2, 1, 0, 0, MTYPE_CLASS_INTEGER,3, MTYPE_U2 },
{ MTYPE_I4, 32, 32, 32, 4, 4, 4, 1, 0, 0, MTYPE_CLASS_INTEGER,5, MTYPE_U4 },
{ MTYPE_I8, 64, 64, 64, 8, 8, 8, 1, 0, 0, MTYPE_CLASS_INTEGER,7, MTYPE_U8 },
{ MTYPE_U1, 8, 8, 8, 1, 1, 1, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,2, MTYPE_I1 },
{ MTYPE_U2, 16, 16, 16, 2, 2, 2, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,4, MTYPE_I2 },
{ MTYPE_U4, 32, 32, 32, 4, 4, 4, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,6, MTYPE_I4 },
{ MTYPE_U8, 64, 64, 64, 8, 8, 8, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,8, MTYPE_I8 },
{ MTYPE_F4, 32, 32, 32, 4, 4, 4, 1, 1, 0, MTYPE_CLASS_FLOAT,9, MTYPE_F4 },
{ MTYPE_F8, 64, 64, 64, 8, 8, 8, 1, 1, 0, MTYPE_CLASS_FLOAT,11, MTYPE_F8 },
{ MTYPE_F10, 128,128,128,16, 16,16, 1, 1, 0, MTYPE_CLASS_FLOAT,13, MTYPE_F10 },
{ MTYPE_F16, 128,128,128,16, 16,16, 1, 1, 0, MTYPE_CLASS_FLOAT,15, MTYPE_F16 },
{ MTYPE_STR, 0, 0, 0, 1, 1, 4, 0, 0, 0, MTYPE_CLASS_STR,0, MTYPE_STR },
{ MTYPE_FQ, 128,128,128,16, 16,16, 1, 1, 0, MTYPE_CLASS_FLOAT,14, MTYPE_FQ },
{ MTYPE_M, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, MTYPE_M },
{ MTYPE_C4, 64, 64,64, 4, 4, 4, 0, 1, 0, MTYPE_CLASS_COMPLEX_FLOAT,10, MTYPE_C4 },
{ MTYPE_C8, 128,128,128, 8, 8, 8, 0, 1, 0, MTYPE_CLASS_COMPLEX_FLOAT,12, MTYPE_C8 },
{ MTYPE_CQ, 256,256,256,16, 16,16, 0, 1, 0, MTYPE_CLASS_COMPLEX_FLOAT,16, MTYPE_CQ },
{ MTYPE_V, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, MTYPE_V },
{ MTYPE_BS, 1, 0, 0, 0, 0, 0, 0, 0, 0, MTYPE_CLASS_INTEGER,0, MTYPE_BS },
{ MTYPE_A4, 32, 32, 32, 4, 4, 4, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,6, MTYPE_A4 },
{ MTYPE_A8, 64, 64, 64, 8, 8, 8, 0, 0, 0, MTYPE_CLASS_UNSIGNED_INTEGER,8, MTYPE_A8 },
{ MTYPE_C10, 256,256,256,16, 16,16, 0, 1, 0, MTYPE_CLASS_COMPLEX_FLOAT,16, MTYPE_C10 },
{ MTYPE_C16, 256,256,256,16, 16,16, 0, 1, 0, MTYPE_CLASS_COMPLEX_FLOAT,16, MTYPE_C16 },
{ MTYPE_I16, 256,256,256,16, 16,16, 0, 1, 0, MTYPE_CLASS_INTEGER,16, MTYPE_I16 },
{ MTYPE_U16, 256,256,256,16, 16,16, 0, 1, 0, MTYPE_CLASS_UNSIGNED_INTEGER,16, MTYPE_U16 }
}
Definition at line 77 of file mtypes.cxx.
Referenced by IVAR::IPA_LNO_Print_File(), IVAR::Print(), and IVAR::WB_Print().
| MTYPE_MASK Machine_Types_Available = 0x1fdffe |
Definition at line 198 of file mtypes.cxx.
{
MtypeToStr_t(MTYPE_UNKNOWN, "UNK"),
MtypeToStr_t(MTYPE_B, "B"),
MtypeToStr_t(MTYPE_I1, "I1"),
MtypeToStr_t(MTYPE_I2, "I2"),
MtypeToStr_t(MTYPE_I4, "I4"),
MtypeToStr_t(MTYPE_I8, "I8"),
MtypeToStr_t(MTYPE_U1, "U1"),
MtypeToStr_t(MTYPE_U2, "U2"),
MtypeToStr_t(MTYPE_U4, "U4"),
MtypeToStr_t(MTYPE_U8, "U8"),
MtypeToStr_t(MTYPE_F4, "F4"),
MtypeToStr_t(MTYPE_F8, "F8"),
MtypeToStr_t(MTYPE_F10, "F10"),
MtypeToStr_t(MTYPE_F16, "F16"),
MtypeToStr_t(MTYPE_STR, "STR"),
MtypeToStr_t(MTYPE_FQ, "FQ"),
MtypeToStr_t(MTYPE_M, "M"),
MtypeToStr_t(MTYPE_C4, "C4"),
MtypeToStr_t(MTYPE_C8, "C8"),
MtypeToStr_t(MTYPE_CQ, "CQ"),
MtypeToStr_t(MTYPE_V, "V"),
MtypeToStr_t(MTYPE_BS, "BS"),
MtypeToStr_t(MTYPE_A4, "A4"),
MtypeToStr_t(MTYPE_A8, "A8"),
MtypeToStr_t(MTYPE_C10, "C10"),
MtypeToStr_t(MTYPE_C16, "C16"),
MtypeToStr_t(MTYPE_I16, "I16"),
MtypeToStr_t(MTYPE_U16, "U16")
}
Definition at line 109 of file mtypes.cxx.
1.7.1