aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorKenneth Zadeck <zadeck@naturalbridge.com>2012-08-02 22:39:57 +0000
committerKenneth Zadeck <zadeck@gcc.gnu.org>2012-08-02 22:39:57 +0000
commit481755378d5632997e4f91b284a4eef52001b79c (patch)
tree7cdb1d401796f97fad83229f9a66eb5bc7f2177e /gcc/expr.c
parent36be1dee1d8f88f1da9a27a9ce6d20f8976f210c (diff)
downloadgcc-481755378d5632997e4f91b284a4eef52001b79c.zip
gcc-481755378d5632997e4f91b284a4eef52001b79c.tar.gz
gcc-481755378d5632997e4f91b284a4eef52001b79c.tar.bz2
cfgexpand.c (expand_debug_locations): Encapsulate test for CONST_DOUBLE in macro.
2012-08-02 Kenneth Zadeck <zadeck@naturalbridge.com> * cfgexpand.c (expand_debug_locations): Encapsulate test for CONST_DOUBLE in macro. * combine.c (try_combine, gen_lowpart_for_combine): Ditto. * cprop.c (implicit_set_cond_p): Ditto. * cselib.c (rtx_equal_for_cselib_1): Ditto. * expmed.c (expand_mult): Ditto. * expr.c (convert_modes): Ditto. * ira-costs.c (record_reg_classes): Ditto. * ira-lives.c (single_reg_class): Ditto. * optabs.c (expand_copysign_absneg, expand_copysign): Ditto. * print-rtl.c (print_rtx): Ditto. * recog.c (simplify_while_replacing, const_double_operand) (asm_operand_ok, constrain_operands): Ditto. * reg-stack.c (subst_stack_regs_pat): Ditto. * reload.c (find_reloads, find_equiv_reg): Ditto. * rtlanal.c (replace_rtx): Remove test. * rtlanal.c (constant_pool_constant_p, split_double): Encapsulate test for CONST_DOUBLE in macro. * simplify-rtx.c (mode_signbit_p, avoid_constant_pool_reference) (simplify_unary_operation_1, simplify_const_unary_operation) (simplify_binary_operation_1, simplify_const_binary_operation) (simplify_relational_operation_1) (simplify_const_relational_operations) (implify_subreg): Ditto. * varasm.c (output_constant_pool_2): Ditto. * rtl.h (CONST_DOUBLE_AS_INT_P, CONST_DOUBLE_AS_FLOAT_P): New macros. * rtl.def (CONST_DOUBLE): Updated comments. From-SVN: r190105
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index e2dd4d2..f7c4419 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -745,7 +745,7 @@ convert_modes (enum machine_mode mode, enum machine_mode oldmode, rtx x, int uns
&& GET_MODE_PRECISION (mode) <= HOST_BITS_PER_WIDE_INT)
|| (GET_MODE_CLASS (mode) == MODE_INT
&& GET_MODE_CLASS (oldmode) == MODE_INT
- && (GET_CODE (x) == CONST_DOUBLE
+ && (CONST_DOUBLE_AS_INT_P (x)
|| (GET_MODE_PRECISION (mode) <= GET_MODE_PRECISION (oldmode)
&& ((MEM_P (x) && ! MEM_VOLATILE_P (x)
&& direct_load[(int) mode])