Home | History | Annotate | Download | only in i386

Lines Matching refs:MODE

213 /* 64bit Sledgehammer mode.  For libgcc2 we make sure this is a
503 /* Extra bits to force on w/ 32-bit mode. */
507 /* Extra bits to force on w/ 64-bit mode. */
537 with the rounding mode forced to 53 bits. */
627 /* Whether to allow x87 floating-point arithmetic on MODE (one of
630 #define X87_ENABLE_ARITH(MODE) \
631 (flag_excess_precision == EXCESS_PRECISION_FAST || (MODE) == XFmode)
633 /* Likewise, whether to allow direct conversions from integer mode
634 IMODE (HImode, SImode or DImode) to MODE. */
635 #define X87_ENABLE_FLOAT(MODE, IMODE) \
637 || (MODE) == XFmode \
638 || ((MODE) == DFmode && (IMODE) == SImode) \
761 /* Decide whether a variable of mode MODE should be 128 bit aligned. */
762 #define ALIGN_MODE_128(MODE) \
763 ((MODE) == XFmode || SSE_REG_MODE_P (MODE))
825 TYPE is the data type, MODE is the widest mode available, and ALIGN
835 #define STACK_SLOT_ALIGNMENT(TYPE, MODE, ALIGN) \
836 ix86_local_alignment ((TYPE), (MODE), (ALIGN))
852 MODE, assuming normal alignment ALIGN.
856 #define MINIMUM_ALIGNMENT(EXP, MODE, ALIGN) \
857 ix86_minimum_alignment (EXP, MODE, ALIGN)
877 #define IS_STACK_MODE(MODE) \
878 (((MODE) == SFmode && !(TARGET_SSE && TARGET_SSE_MATH)) \
879 || ((MODE) == DFmode && !(TARGET_SSE2 && TARGET_SSE_MATH)) \
880 || (MODE) == XFmode)
979 to hold something of mode MODE.
980 This is ordinarily the length in words of a value of mode MODE
987 #define HARD_REGNO_NREGS(REGNO, MODE) \
989 ? (COMPLEX_MODE_P (MODE) ? 2 : 1) \
990 : ((MODE) == XFmode \
992 : (MODE) == XCmode \
994 : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)))
996 #define HARD_REGNO_NREGS_HAS_PADDING(REGNO, MODE) \
1000 : ((MODE) == XFmode || (MODE) == XCmode)) \
1003 #define HARD_REGNO_NREGS_WITH_PADDING(REGNO, MODE) ((MODE) == XFmode ? 4 : 8)
1005 #define VALID_AVX256_REG_MODE(MODE) \
1006 ((MODE) == V32QImode || (MODE) == V16HImode || (MODE) == V8SImode \
1007 || (MODE) == V4DImode || (MODE) == V2TImode || (MODE) == V8SFmode \
1008 || (MODE) == V4DFmode)
1010 #define VALID_AVX256_REG_OR_OI_MODE(MODE) \
1011 (VALID_AVX256_REG_MODE (MODE) || (MODE) == OImode)
1013 #define VALID_SSE2_REG_MODE(MODE) \
1014 ((MODE) == V16QImode || (MODE) == V8HImode || (MODE) == V2DFmode \
1015 || (MODE) == V2DImode || (MODE) == DFmode)
1017 #define VALID_SSE_REG_MODE(MODE) \
1018 ((MODE) == V1TImode || (MODE) == TImode \
1019 || (MODE) == V4SFmode || (MODE) == V4SImode \
1020 || (MODE) == SFmode || (MODE) == TFmode)
1022 #define VALID_MMX_REG_MODE_3DNOW(MODE) \
1023 ((MODE) == V2SFmode || (MODE) == SFmode)
1025 #define VALID_MMX_REG_MODE(MODE) \
1026 ((MODE == V1DImode) || (MODE) == DImode \
1027 || (MODE) == V2SImode || (MODE) == SImode \
1028 || (MODE) == V4HImode || (MODE) == V8QImode)
1030 #define VALID_DFP_MODE_P(MODE) \
1031 ((MODE) == SDmode || (MODE) == DDmode || (MODE) == TDmode)
1033 #define VALID_FP_MODE_P(MODE) \
1034 ((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode \
1035 || (MODE) == SCmode || (MODE) == DCmode || (MODE) == XCmode) \
1037 #define VALID_INT_MODE_P(MODE) \
1038 ((MODE) == QImode || (MODE) == HImode || (MODE) == SImode \
1039 || (MODE) == DImode \
1040 || (MODE) == CQImode || (MODE) == CHImode || (MODE) == CSImode \
1041 || (MODE) == CDImode \
1042 || (TARGET_64BIT && ((MODE) == TImode || (MODE) == CTImode \
1043 || (MODE) == TFmode || (MODE) == TCmode)))
1046 #define SSE_REG_MODE_P(MODE) \
1047 ((MODE) == V1TImode || (MODE) == TImode || (MODE) == V16QImode \
1048 || (MODE) == TFmode || (MODE) == V8HImode || (MODE) == V2DFmode \
1049 || (MODE) == V2DImode || (MODE) == V4SFmode || (MODE) == V4SImode \
1050 || (MODE) == V32QImode || (MODE) == V16HImode || (MODE) == V8SImode \
1051 || (MODE) == V4DImode || (MODE) == V8SFmode || (MODE) == V4DFmode \
1052 || (MODE) == V2TImode)
1054 /* Value is 1 if hard register REGNO can hold a value of machine-mode MODE. */
1056 #define HARD_REGNO_MODE_OK(REGNO, MODE) \
1057 ix86_hard_regno_mode_ok ((REGNO), (MODE))
1060 when one has mode MODE1 and one has mode MODE2.
1075 #define HARD_REGNO_CALLER_SAVE_MODE(REGNO, NREGS, MODE) \
1077 : (MODE) == VOIDmode && (NREGS) != 1 ? VOIDmode \
1078 : (MODE) == VOIDmode ? choose_hard_reg_mode ((REGNO), (NREGS), false) \
1079 : (MODE) == HImode && !TARGET_PARTIAL_REG_STALL ? SImode \
1080 : (MODE) == QImode && !(TARGET_64BIT || QI_REGNO_P (REGNO)) ? SImode \
1081 : (MODE))
1086 #define HARD_REGNO_CALL_PART_CLOBBERED(REGNO, MODE) \
1087 (SSE_REGNO_P (REGNO) && GET_MODE_SIZE (MODE) > 16)
1138 mode. Define the regnum to dummy value to prevent gcc from
1299 /* When this hook returns true for MODE, the compiler allows
1327 #define X87_FLOAT_MODE_P(MODE) \
1328 (TARGET_80387 && ((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode))
1341 #define SSE_FLOAT_MODE_P(MODE) \
1342 ((TARGET_SSE && (MODE) == SFmode) || (TARGET_SSE2 && (MODE) == DFmode))
1344 #define FMA4_VEC_FLOAT_MODE_P(MODE) \
1345 (TARGET_FMA4 && ((MODE) == V4SFmode || (MODE) == V2DFmode \
1346 || (MODE) == V8SFmode || (MODE) == V4DFmode))
1362 is necessary to be able to hold a value of mode MODE in a reload
1367 classes to their "natural mode" single unit register class, depending
1374 #define LIMIT_RELOAD_CLASS(MODE, CLASS) \
1375 (((MODE) == QImode && !TARGET_64BIT \
1377 : (((MODE) == SImode || (MODE) == DImode) \
1379 : (SSE_FLOAT_MODE_P (MODE) && TARGET_SSE_MATH \
1381 : (X87_FLOAT_MODE_P (MODE) \
1387 #define SECONDARY_MEMORY_NEEDED(CLASS1, CLASS2, MODE) \
1388 ix86_secondary_memory_needed ((CLASS1), (CLASS2), (MODE), 1)
1393 #define SECONDARY_MEMORY_NEEDED_MODE(MODE) \
1394 (GET_MODE_BITSIZE (MODE) < 32 && INTEGRAL_MODE_P (MODE) \
1395 ? mode_for_size (32, GET_MODE_CLASS (MODE), 0) \
1396 : MODE)
1398 /* Return a class of registers that cannot change FROM mode to TO mode. */
1472 assuming the value has mode MODE. */
1474 #define LIBCALL_VALUE(MODE) ix86_libcall_value (MODE)
1649 The MODE argument is the machine mode for the MEM expression
1666 #define LEGITIMIZE_RELOAD_ADDRESS(X, MODE, OPNUM, TYPE, INDL, WIN) \
1668 if (ix86_legitimize_reload_address ((X), (MODE), (OPNUM), \
1729 /* Specify the machine mode that this machine uses
1773 TYPE and which has the specified mode and signedness is to be
1780 #define PROMOTE_MODE(MODE, UNSIGNEDP, TYPE) \
1782 if (((MODE) == HImode && TARGET_PROMOTE_HI_REGS) \
1783 || ((MODE) == QImode && TARGET_PROMOTE_QI_REGS)) \
1784 (MODE) = SImode; \
1787 /* Specify the machine mode that pointers have.
1789 between pointers and any other objects of this machine mode. */
1801 so give the MEM rtx a byte's mode. */
1813 mode that should actually be used. We allow pairs of registers. */
1847 /* #define SLOW_UNALIGNED_ACCESS(MODE, ALIGN) 0 */
1859 return the mode to be used for the comparison.
1869 /* Return nonzero if MODE implies a floating point inequality can be
1872 #define REVERSIBLE_CC_MODE(MODE) 1
1875 comparison done in CC_MODE mode. */
1876 #define REVERSE_CONDITION(CODE, MODE) ix86_reverse_condition ((CODE), (MODE))
2120 word. We can't emit proper mode switching code before reload, as spills
2122 redundant computation of new control word by the mode switching pass.
2163 for mode switching in an optimizing compilation. */
2170 refers to an entity that needs mode switching, and specifies the
2174 refer to the mode-switched entity in question. */
2179 /* ENTITY is an integer specifying a mode-switched entity. If
2182 in `NUM_MODES_FOR_MODE_SWITCHING', to denote the mode that ENTITY
2188 mode switching. It determines the mode that an insn results in (if
2189 different from the incoming mode). */
2191 #define MODE_AFTER(ENTITY, MODE, I) ix86_mode_after ((ENTITY), (MODE), (I))
2194 needs mode switching. It should evaluate to an integer, which is
2195 a mode that ENTITY is assumed to be switched to at function entry. */
2200 needs mode switching. It should evaluate to an integer, which is
2201 a mode that ENTITY is assumed to be switched to at function exit. */
2210 /* Generate one or more insns to set ENTITY to MODE. HARD_REG_LIVE
2214 #define EMIT_MODE_SET(ENTITY, MODE, HARD_REGS_LIVE) \
2215 ix86_emit_mode_set ((ENTITY), (MODE), (HARD_REGS_LIVE))
2368 #define CTZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
2369 ((VALUE) = GET_MODE_BITSIZE (MODE), TARGET_BMI)
2370 #define CLZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
2371 ((VALUE) = GET_MODE_BITSIZE (MODE), TARGET_LZCNT)