Commit 34203483 by Uros Bizjak

i386.md (*movxf_internal): Use !can_create_pseudo ().

	* config/i386/i386.md (*movxf_internal): Use !can_create_pseudo ().
	(*movxf_internal_nointeger): Ditto.
	(*movdf_internal_rex64): Ditto.
	(*movdf_internal): Ditto.
	(*movdf_internal_nointeger): Ditto.
	(*movsf_internal): Ditto.
	(sincos splitters): Use can_create_pseudo ().

From-SVN: r173729
parent 7eb68c06
2011-05-13 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*movxf_internal): Use !can_create_pseudo ().
(*movxf_internal_nointeger): Ditto.
(*movdf_internal_rex64): Ditto.
(*movdf_internal): Ditto.
(*movdf_internal_nointeger): Ditto.
(*movsf_internal): Ditto.
(sincos splitters): Use can_create_pseudo ().
2011-05-13 Joseph Myers <joseph@codesourcery.com> 2011-05-13 Joseph Myers <joseph@codesourcery.com>
* config/i386/i386-opts.h: New. * config/i386/i386-opts.h: New.
...@@ -10,11 +20,9 @@ ...@@ -10,11 +20,9 @@
(ix86_option_override_internal): Don't decode strings for options (ix86_option_override_internal): Don't decode strings for options
other than -march=, -mtune= and -mfpmath=. Don't allow for other than -march=, -mtune= and -mfpmath=. Don't allow for
__attribute__ uses in remaining diagnostics for options with __attribute__ uses in remaining diagnostics for options with
string arguments. Don't check for integer arguments being string arguments. Don't check for integer arguments being negative.
negative.
* gcc/config/i386/i386.h (enum stringop_alg, enum calling_abi, * gcc/config/i386/i386.h (enum stringop_alg, enum calling_abi,
enum tls_dialect, enum cmodel, enum asm_dialect): Move to enum tls_dialect, enum cmodel, enum asm_dialect): Move to i386-opts.h.
i386-opts.h.
(ix86_abi, ix86_tls_dialect, ix86_cmodel, ix86_asm_dialect, (ix86_abi, ix86_tls_dialect, ix86_cmodel, ix86_asm_dialect,
ix86_branch_cost, ix86_section_threshold): Remove. ix86_branch_cost, ix86_section_threshold): Remove.
* gcc/config/i386/i386.opt (config/i386/i386-opts.h): New * gcc/config/i386/i386.opt (config/i386/i386-opts.h): New
...@@ -41,10 +49,8 @@ ...@@ -41,10 +49,8 @@
2011-05-13 Nick Clifton <nickc@redhat.com> 2011-05-13 Nick Clifton <nickc@redhat.com>
* config/rx/rx.md (mov expander): Fix use of * config/rx/rx.md (mov expander): Fix use of rx_legitimate_constant_p.
rx_legitimate_constant_p. * config/rx/rx-protos.h (rx_legitimate_constant_p): Rename prototype.
* config/rx/rx-protos.h (rx_legitimate_constant_p): Rename
prototype.
2011-05-13 Kai Tietz <ktietz@redhat.com> 2011-05-13 Kai Tietz <ktietz@redhat.com>
...@@ -68,8 +74,7 @@ ...@@ -68,8 +74,7 @@
2011-05-12 H.J. Lu <hongjiu.lu@intel.com> 2011-05-12 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_save_reg): Change maybe_eh_return * config/i386/i386.c (ix86_save_reg): Change maybe_eh_return to bool.
to bool.
(ix86_emit_restore_regs_using_mov): Likewise. (ix86_emit_restore_regs_using_mov): Likewise.
(ix86_emit_restore_sse_regs_using_mov): Likewise. (ix86_emit_restore_sse_regs_using_mov): Likewise.
...@@ -140,8 +145,7 @@ ...@@ -140,8 +145,7 @@
(ADD_RX_BUILTIN1, ADD_RX_BUILTIN2, ADD_RX_BUILTIN3): Install (ADD_RX_BUILTIN1, ADD_RX_BUILTIN2, ADD_RX_BUILTIN3): Install
created builtin into rx_builtins array. created builtin into rx_builtins array.
(rx_builtin_decl): New function. (rx_builtin_decl): New function.
(TARGET_BUITLIN_DECL): Define. (TARGET_BUITLIN_DECL): Define. Include gt-rx.h.
Include gt-rx.h.
2011-05-12 DJ Delorie <dj@redhat.com> 2011-05-12 DJ Delorie <dj@redhat.com>
Nick Clifton <nickc@redhat.com> Nick Clifton <nickc@redhat.com>
...@@ -152,8 +156,7 @@ ...@@ -152,8 +156,7 @@
addressing in HImode and QImode. Fix test for out of range addressing in HImode and QImode. Fix test for out of range
REG+INT addressing. REG+INT addressing.
(rx_legitimate_constant_p): Rename to rx_is_legitimate_constant. (rx_legitimate_constant_p): Rename to rx_is_legitimate_constant.
(rx_align_for_label): Test label before extracting its usage (rx_align_for_label): Test label before extracting its usage count.
count.
(rx_adjust_insn_lengths): Fix selection of insn codes. (rx_adjust_insn_lengths): Fix selection of insn codes.
(TARGET_LEGITIMATE_CONSTANT_P): Use renamed function. (TARGET_LEGITIMATE_CONSTANT_P): Use renamed function.
...@@ -169,8 +172,7 @@ ...@@ -169,8 +172,7 @@
2011-05-11 Satoru Takabayashi <satorux@google.com> 2011-05-11 Satoru Takabayashi <satorux@google.com>
Paul Pluzhnikov <ppluzhnikov@google.com> Paul Pluzhnikov <ppluzhnikov@google.com>
* doc/install.texi (Configuration): Document * doc/install.texi (Configuration): Document --with-linker-hash-style.
--with-linker-hash-style.
* gcc.c (init_spec): Handle LINKER_HASH_STYLE. * gcc.c (init_spec): Handle LINKER_HASH_STYLE.
* config.in: Add LINKER_HASH_STYLE. * config.in: Add LINKER_HASH_STYLE.
* configure.ac: Add --with-linker-hash-style. * configure.ac: Add --with-linker-hash-style.
......
...@@ -2866,7 +2866,7 @@ ...@@ -2866,7 +2866,7 @@
(match_operand:XF 1 "general_operand" "fm,f,G,roF,Fr"))] (match_operand:XF 1 "general_operand" "fm,f,G,roF,Fr"))]
"optimize_function_for_speed_p (cfun) "optimize_function_for_speed_p (cfun)
&& !(MEM_P (operands[0]) && MEM_P (operands[1])) && !(MEM_P (operands[0]) && MEM_P (operands[1]))
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| GET_CODE (operands[1]) != CONST_DOUBLE || GET_CODE (operands[1]) != CONST_DOUBLE
|| memory_operand (operands[0], XFmode))" || memory_operand (operands[0], XFmode))"
{ {
...@@ -2895,7 +2895,7 @@ ...@@ -2895,7 +2895,7 @@
(match_operand:XF 1 "general_operand" "fm,f,G,*roF,F*r"))] (match_operand:XF 1 "general_operand" "fm,f,G,*roF,F*r"))]
"optimize_function_for_size_p (cfun) "optimize_function_for_size_p (cfun)
&& !(MEM_P (operands[0]) && MEM_P (operands[1])) && !(MEM_P (operands[0]) && MEM_P (operands[1]))
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| standard_80387_constant_p (operands[1]) || standard_80387_constant_p (operands[1])
|| GET_CODE (operands[1]) != CONST_DOUBLE || GET_CODE (operands[1]) != CONST_DOUBLE
|| memory_operand (operands[0], XFmode))" || memory_operand (operands[0], XFmode))"
...@@ -2938,7 +2938,7 @@ ...@@ -2938,7 +2938,7 @@
(match_operand:DF 1 "general_operand" (match_operand:DF 1 "general_operand"
"fm,f,G,rm,r,F ,F ,C ,Y2*x,m ,Y2*x,r ,Yi"))] "fm,f,G,rm,r,F ,F ,C ,Y2*x,m ,Y2*x,r ,Yi"))]
"TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1])) "TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1]))
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE) || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
|| (!(TARGET_SSE2 && TARGET_SSE_MATH) || (!(TARGET_SSE2 && TARGET_SSE_MATH)
&& optimize_function_for_size_p (cfun) && optimize_function_for_size_p (cfun)
...@@ -3102,7 +3102,7 @@ ...@@ -3102,7 +3102,7 @@
"!TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1])) "!TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1]))
&& optimize_function_for_speed_p (cfun) && optimize_function_for_speed_p (cfun)
&& TARGET_INTEGER_DFMODE_MOVES && TARGET_INTEGER_DFMODE_MOVES
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE) || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
|| (!(TARGET_SSE2 && TARGET_SSE_MATH) || (!(TARGET_SSE2 && TARGET_SSE_MATH)
&& optimize_function_for_size_p (cfun) && optimize_function_for_size_p (cfun)
...@@ -3255,7 +3255,7 @@ ...@@ -3255,7 +3255,7 @@
"!TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1])) "!TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1]))
&& (optimize_function_for_size_p (cfun) && (optimize_function_for_size_p (cfun)
|| !TARGET_INTEGER_DFMODE_MOVES) || !TARGET_INTEGER_DFMODE_MOVES)
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE) || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
|| (!(TARGET_SSE2 && TARGET_SSE_MATH) || (!(TARGET_SSE2 && TARGET_SSE_MATH)
&& optimize_function_for_size_p (cfun) && optimize_function_for_size_p (cfun)
...@@ -3263,8 +3263,7 @@ ...@@ -3263,8 +3263,7 @@
&& standard_80387_constant_p (operands[1])) && standard_80387_constant_p (operands[1]))
|| GET_CODE (operands[1]) != CONST_DOUBLE || GET_CODE (operands[1]) != CONST_DOUBLE
|| ((optimize_function_for_size_p (cfun) || ((optimize_function_for_size_p (cfun)
|| !TARGET_MEMORY_MISMATCH_STALL || !TARGET_MEMORY_MISMATCH_STALL)
|| reload_in_progress || reload_completed)
&& memory_operand (operands[0], DFmode)))" && memory_operand (operands[0], DFmode)))"
{ {
switch (which_alternative) switch (which_alternative)
...@@ -3420,7 +3419,7 @@ ...@@ -3420,7 +3419,7 @@
(match_operand:SF 1 "general_operand" (match_operand:SF 1 "general_operand"
"fm,f,G,rmF,Fr,C,x,xm,x,m ,*y,*y ,r ,Yi,r ,*Ym"))] "fm,f,G,rmF,Fr,C,x,xm,x,m ,*y,*y ,r ,Yi,r ,*Ym"))]
"!(MEM_P (operands[0]) && MEM_P (operands[1])) "!(MEM_P (operands[0]) && MEM_P (operands[1]))
&& (reload_in_progress || reload_completed && (!can_create_pseudo_p ()
|| (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE) || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
|| (!TARGET_SSE_MATH && optimize_function_for_size_p (cfun) || (!TARGET_SSE_MATH && optimize_function_for_size_p (cfun)
&& standard_80387_constant_p (operands[1])) && standard_80387_constant_p (operands[1]))
...@@ -13525,7 +13524,7 @@ ...@@ -13525,7 +13524,7 @@
(set (match_operand:XF 1 "register_operand" "") (set (match_operand:XF 1 "register_operand" "")
(unspec:XF [(match_dup 2)] UNSPEC_SINCOS_SIN))] (unspec:XF [(match_dup 2)] UNSPEC_SINCOS_SIN))]
"find_regno_note (insn, REG_UNUSED, REGNO (operands[0])) "find_regno_note (insn, REG_UNUSED, REGNO (operands[0]))
&& !(reload_completed || reload_in_progress)" && can_create_pseudo_p ()"
[(set (match_dup 1) (unspec:XF [(match_dup 2)] UNSPEC_SIN))]) [(set (match_dup 1) (unspec:XF [(match_dup 2)] UNSPEC_SIN))])
(define_split (define_split
...@@ -13535,7 +13534,7 @@ ...@@ -13535,7 +13534,7 @@
(set (match_operand:XF 1 "register_operand" "") (set (match_operand:XF 1 "register_operand" "")
(unspec:XF [(match_dup 2)] UNSPEC_SINCOS_SIN))] (unspec:XF [(match_dup 2)] UNSPEC_SINCOS_SIN))]
"find_regno_note (insn, REG_UNUSED, REGNO (operands[1])) "find_regno_note (insn, REG_UNUSED, REGNO (operands[1]))
&& !(reload_completed || reload_in_progress)" && can_create_pseudo_p ()"
[(set (match_dup 0) (unspec:XF [(match_dup 2)] UNSPEC_COS))]) [(set (match_dup 0) (unspec:XF [(match_dup 2)] UNSPEC_COS))])
(define_insn "sincos_extend<mode>xf3_i387" (define_insn "sincos_extend<mode>xf3_i387"
...@@ -13561,7 +13560,7 @@ ...@@ -13561,7 +13560,7 @@
(set (match_operand:XF 1 "register_operand" "") (set (match_operand:XF 1 "register_operand" "")
(unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SINCOS_SIN))] (unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SINCOS_SIN))]
"find_regno_note (insn, REG_UNUSED, REGNO (operands[0])) "find_regno_note (insn, REG_UNUSED, REGNO (operands[0]))
&& !(reload_completed || reload_in_progress)" && can_create_pseudo_p ()"
[(set (match_dup 1) [(set (match_dup 1)
(unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SIN))]) (unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SIN))])
...@@ -13573,7 +13572,7 @@ ...@@ -13573,7 +13572,7 @@
(set (match_operand:XF 1 "register_operand" "") (set (match_operand:XF 1 "register_operand" "")
(unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SINCOS_SIN))] (unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_SINCOS_SIN))]
"find_regno_note (insn, REG_UNUSED, REGNO (operands[1])) "find_regno_note (insn, REG_UNUSED, REGNO (operands[1]))
&& !(reload_completed || reload_in_progress)" && can_create_pseudo_p ()"
[(set (match_dup 0) [(set (match_dup 0)
(unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_COS))]) (unspec:XF [(float_extend:XF (match_dup 2))] UNSPEC_COS))])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment