diff options
author | Kenneth Zadeck <zadeck@naturalbridge.com> | 2012-08-02 22:39:57 +0000 |
---|---|---|
committer | Kenneth Zadeck <zadeck@gcc.gnu.org> | 2012-08-02 22:39:57 +0000 |
commit | 481755378d5632997e4f91b284a4eef52001b79c (patch) | |
tree | 7cdb1d401796f97fad83229f9a66eb5bc7f2177e /gcc/reload.c | |
parent | 36be1dee1d8f88f1da9a27a9ce6d20f8976f210c (diff) | |
download | gcc-481755378d5632997e4f91b284a4eef52001b79c.tar.gz |
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/reload.c')
-rw-r--r-- | gcc/reload.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/gcc/reload.c b/gcc/reload.c index e42cc5c041f..39178d857d1 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -3363,7 +3363,7 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, case 'E': case 'F': - if (GET_CODE (operand) == CONST_DOUBLE + if (CONST_DOUBLE_AS_FLOAT_P (operand) || (GET_CODE (operand) == CONST_VECTOR && (GET_MODE_CLASS (GET_MODE (operand)) == MODE_VECTOR_FLOAT))) @@ -3372,15 +3372,13 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, case 'G': case 'H': - if (GET_CODE (operand) == CONST_DOUBLE + if (CONST_DOUBLE_AS_FLOAT_P (operand) && CONST_DOUBLE_OK_FOR_CONSTRAINT_P (operand, c, p)) win = 1; break; case 's': - if (CONST_INT_P (operand) - || (GET_CODE (operand) == CONST_DOUBLE - && GET_MODE (operand) == VOIDmode)) + if (CONST_INT_P (operand) || CONST_DOUBLE_AS_INT_P (operand)) break; case 'i': if (CONSTANT_P (operand) @@ -3389,9 +3387,7 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, break; case 'n': - if (CONST_INT_P (operand) - || (GET_CODE (operand) == CONST_DOUBLE - && GET_MODE (operand) == VOIDmode)) + if (CONST_INT_P (operand) || CONST_DOUBLE_AS_INT_P (operand)) win = 1; break; @@ -6810,7 +6806,7 @@ find_equiv_reg (rtx goal, rtx insn, enum reg_class rclass, int other, && (valueno = true_regnum (valtry = SET_DEST (pat))) >= 0) || (REG_P (SET_DEST (pat)) - && GET_CODE (XEXP (tem, 0)) == CONST_DOUBLE + && CONST_DOUBLE_AS_FLOAT_P (XEXP (tem, 0)) && SCALAR_FLOAT_MODE_P (GET_MODE (XEXP (tem, 0))) && CONST_INT_P (goal) && 0 != (goaltry @@ -6824,7 +6820,7 @@ find_equiv_reg (rtx goal, rtx insn, enum reg_class rclass, int other, || (goal_const && (tem = find_reg_note (p, REG_EQUIV, NULL_RTX)) && REG_P (SET_DEST (pat)) - && GET_CODE (XEXP (tem, 0)) == CONST_DOUBLE + && CONST_DOUBLE_AS_FLOAT_P (XEXP (tem, 0)) && SCALAR_FLOAT_MODE_P (GET_MODE (XEXP (tem, 0))) && CONST_INT_P (goal) && 0 != (goaltry = operand_subword (XEXP (tem, 0), 1, 0, |