diff options
Diffstat (limited to 'gcc/config/mips/mips.c')
-rw-r--r-- | gcc/config/mips/mips.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 2af93d7..7eaff14 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -22328,6 +22328,14 @@ mips_promote_function_mode (const_tree type ATTRIBUTE_UNUSED, *punsignedp = unsignedp; return mode; } + +/* Implement TARGET_TRULY_NOOP_TRUNCATION. */ + +static bool +mips_truly_noop_truncation (unsigned int outprec, unsigned int inprec) +{ + return !TARGET_64BIT || inprec <= 32 || outprec > 32; +} /* Initialize the GCC target structure. */ #undef TARGET_ASM_ALIGNED_HI_OP @@ -22623,6 +22631,9 @@ mips_promote_function_mode (const_tree type ATTRIBUTE_UNUSED, #undef TARGET_CAN_CHANGE_MODE_CLASS #define TARGET_CAN_CHANGE_MODE_CLASS mips_can_change_mode_class +#undef TARGET_TRULY_NOOP_TRUNCATION +#define TARGET_TRULY_NOOP_TRUNCATION mips_truly_noop_truncation + struct gcc_target targetm = TARGET_INITIALIZER; #include "gt-mips.h" |