diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2009-07-03 13:30:51 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2009-07-03 13:30:51 +0200 |
commit | 5071eab79a946632010c75349494c745f35ae1e6 (patch) | |
tree | 50682a92438973b62f5c5ed4683d2b51b2d6144f /gcc | |
parent | f0e410bca1566df48d5a8e5099271c9caf1fb5c9 (diff) | |
download | gcc-5071eab79a946632010c75349494c745f35ae1e6.zip gcc-5071eab79a946632010c75349494c745f35ae1e6.tar.gz gcc-5071eab79a946632010c75349494c745f35ae1e6.tar.bz2 |
i386.md (fix_trunc<mode>_fisttp_i387_1): Use can_create_pseudo_p.
* config/i386/i386.md (fix_trunc<mode>_fisttp_i387_1): Use
can_create_pseudo_p.
(*fix_trunc<mode>_i387_1): Ditto.
(*floathi<mode>2_1): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Ditto.
(*fistdi2_1): Ditto.
(*fist<mode>2_1): Ditto.
(frndintxf2_floor): Ditto.
(*fist<mode>2_floor_1): Ditto.
(frndintxf2_ceil): Ditto.
(*fist<mode>2_ceil_1): Ditto.
(frndintxf2_trunc): Ditto.
(frndintxf2_mask_pm): Ditto.
(fxam<mode>2_i387_with_temp): Ditto.
* config/i386/sse.md (mulv16qi3): Ditto.
(*sse2_mulv4si3): Ditto.
(mulv2di3): Ditto.
(sse4_2_pcmpestr): Ditto.
(sse4_2_pcmpistr): Ditto.
From-SVN: r149205
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 37 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 2 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 34 | ||||
-rw-r--r-- | gcc/config/i386/sse.md | 10 |
4 files changed, 52 insertions, 31 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24d7676..552fd44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,25 @@ +2009-07-03 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md (fix_trunc<mode>_fisttp_i387_1): Use + can_create_pseudo_p. + (*fix_trunc<mode>_i387_1): Ditto. + (*floathi<mode>2_1): Ditto. + (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Ditto. + (*fistdi2_1): Ditto. + (*fist<mode>2_1): Ditto. + (frndintxf2_floor): Ditto. + (*fist<mode>2_floor_1): Ditto. + (frndintxf2_ceil): Ditto. + (*fist<mode>2_ceil_1): Ditto. + (frndintxf2_trunc): Ditto. + (frndintxf2_mask_pm): Ditto. + (fxam<mode>2_i387_with_temp): Ditto. + * config/i386/sse.md (mulv16qi3): Ditto. + (*sse2_mulv4si3): Ditto. + (mulv2di3): Ditto. + (sse4_2_pcmpestr): Ditto. + (sse4_2_pcmpistr): Ditto. + 2009-07-03 Jan Hubicka <jh@suse.cz> * tree-ssa-dce.c (bb_contains_live_stmts): New bitmap. @@ -48,8 +70,7 @@ * config/mep/mep.c (mep_handle_option): Leave IVC2 control registers as fixed. - (mep_interrupt_saved_reg): Save appropriate IVC2 control - registers. + (mep_interrupt_saved_reg): Save appropriate IVC2 control registers. * config/mep/mep-ivc2.cpu: Add VOLATILE to insns that make unspecified accesses to control registers. * config/mep/intrinsics.md: Regenerate. @@ -100,7 +121,8 @@ 2009-07-01 DJ Delorie <dj@redhat.com> - * config/mep/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic names to VLIW variants. + * config/mep/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic + names to VLIW variants. (ivc2rm, ivc2crn): Make data type consistent with non-VLIW variants. * config/mep/intrinsics.md: Regenerate. * config/mep/intrinsics.h: Regenerate. @@ -119,8 +141,8 @@ of the jump table. (casesi64p): Likewise. - * pa.c (forward_branch_p): Return bool type. Use instruction addresses - when available. Assert that INSN has a jump label. + * pa.c (forward_branch_p): Return bool type. Use instruction + addresses when available. Assert that INSN has a jump label. (pa_adjust_insn_length): Don't call forward_branch_p if INSN doesn't have a jump label. @@ -128,8 +150,7 @@ PR tree-optimization/19831 * tree-ssa-dce.c (propagate_necessity): Calls to functions - that only act as barriers do not make any previous stores - necessary. + that only act as barriers do not make any previous stores necessary. * tree-ssa-structalias.c (handle_lhs_call): Delay making HEAP variables global, do not add a constraint from nonlocal. (find_func_aliases): Handle escapes through return statements. @@ -422,7 +443,7 @@ * config/xtensa/xtensa-protos.h (xtensa_frame_pointer_required): Remove. -2009-06-29 Olatunji Ruwase <tjruwase@google.com> +2009-06-29 Olatunji Ruwase <tjruwase@google.com> * doc/plugins.texi: Document PLUGIN_START_UNIT. * toplev.c (compile_file): Call PLUGIN_START_UNIT. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index a6bab1b..1da1896 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -12760,7 +12760,7 @@ ix86_expand_move (enum machine_mode mode, rtx operands[]) op1 = force_reg (Pmode, op1); else if (!TARGET_64BIT || !x86_64_movabs_operand (op1, Pmode)) { - rtx reg = !can_create_pseudo_p () ? op0 : NULL_RTX; + rtx reg = can_create_pseudo_p () ? NULL_RTX : op0; op1 = legitimize_pic_address (op1, reg); if (op0 == op1) return; diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 33ff7a5..353a70b 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -5122,7 +5122,7 @@ && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1])) && (TARGET_64BIT || <MODE>mode != DImode)) && TARGET_SSE_MATH) - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -5202,7 +5202,7 @@ && !TARGET_FISTTP && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1])) && (TARGET_64BIT || <MODE>mode != DImode)) - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -5377,7 +5377,7 @@ "TARGET_80387 && (!(SSE_FLOAT_MODE_P (<MODE>mode) && TARGET_SSE_MATH) || TARGET_MIX_SSE_I387) - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(parallel [(set (match_dup 0) @@ -5472,7 +5472,7 @@ && flag_trapping_math) || !(TARGET_INTER_UNIT_CONVERSIONS || optimize_function_for_size_p (cfun))))) - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(parallel [(set (match_dup 0) (float:X87MODEF (match_dup 1))) @@ -16670,7 +16670,7 @@ (clobber (reg:CC FLAGS_REG))])] "!TARGET_64BIT && TARGET_GNU2_TLS" { - operands[3] = !can_create_pseudo_p () ? operands[0] : gen_reg_rtx (Pmode); + operands[3] = can_create_pseudo_p () ? gen_reg_rtx (Pmode) : operands[0]; ix86_tls_descriptor_calls_expanded_in_cfun = true; }) @@ -16719,7 +16719,7 @@ "" [(set (match_dup 0) (match_dup 5))] { - operands[5] = !can_create_pseudo_p () ? operands[0] : gen_reg_rtx (Pmode); + operands[5] = can_create_pseudo_p () ? gen_reg_rtx (Pmode) : operands[0]; emit_insn (gen_tls_dynamic_gnu2_32 (operands[5], operands[1], operands[2])); }) @@ -16734,7 +16734,7 @@ (clobber (reg:CC FLAGS_REG))])] "TARGET_64BIT && TARGET_GNU2_TLS" { - operands[2] = !can_create_pseudo_p () ? operands[0] : gen_reg_rtx (Pmode); + operands[2] = can_create_pseudo_p () ? gen_reg_rtx (Pmode) : operands[0]; ix86_tls_descriptor_calls_expanded_in_cfun = true; }) @@ -16778,7 +16778,7 @@ "" [(set (match_dup 0) (match_dup 4))] { - operands[4] = !can_create_pseudo_p () ? operands[0] : gen_reg_rtx (Pmode); + operands[4] = can_create_pseudo_p () ? gen_reg_rtx (Pmode) : operands[0]; emit_insn (gen_tls_dynamic_gnu2_64 (operands[4], operands[1])); }) @@ -18563,7 +18563,7 @@ (unspec:DI [(match_operand:XF 1 "register_operand" "")] UNSPEC_FIST))] "TARGET_USE_FANCY_MATH_387 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -18630,7 +18630,7 @@ (unspec:X87MODEI12 [(match_operand:XF 1 "register_operand" "")] UNSPEC_FIST))] "TARGET_USE_FANCY_MATH_387 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -18717,7 +18717,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -18808,7 +18808,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -18991,7 +18991,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -19082,7 +19082,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -19261,7 +19261,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -19353,7 +19353,7 @@ (clobber (reg:CC FLAGS_REG))] "TARGET_USE_FANCY_MATH_387 && flag_unsafe_math_optimizations - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -19431,7 +19431,7 @@ [(match_operand:MODEF 1 "memory_operand" "")] UNSPEC_FXAM_MEM))] "TARGET_USE_FANCY_MATH_387 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(set (match_dup 2)(match_dup 1)) diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index da06d44..1e938ca 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -4760,7 +4760,7 @@ (mult:V16QI (match_operand:V16QI 1 "register_operand" "") (match_operand:V16QI 2 "register_operand" "")))] "TARGET_SSE2 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -5218,7 +5218,7 @@ (mult:V4SI (match_operand:V4SI 1 "register_operand" "") (match_operand:V4SI 2 "register_operand" "")))] "TARGET_SSE2 && !TARGET_SSE4_1 && !TARGET_SSE5 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -5271,7 +5271,7 @@ (mult:V2DI (match_operand:V2DI 1 "register_operand" "") (match_operand:V2DI 2 "register_operand" "")))] "TARGET_SSE2 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -9842,7 +9842,7 @@ (match_dup 6)] UNSPEC_PCMPESTR))] "TARGET_SSE4_2 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] @@ -9972,7 +9972,7 @@ (match_dup 4)] UNSPEC_PCMPISTR))] "TARGET_SSE4_2 - && !(reload_completed || reload_in_progress)" + && can_create_pseudo_p ()" "#" "&& 1" [(const_int 0)] |