Commit cc1df30b by Uros Bizjak

i386.md (*movdi_internal): Disparage slightly all MMX moves to/from memory.

	* config/i386/i386.md (*movdi_internal): Disparage slightly
	all MMX moves to/from memory.  Use Yi instead of x for SSE-MMX
	conversion alternatives.

From-SVN: r196888
parent 37e99116
2013-03-21 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*movdi_internal): Disparage slightly
all MMX moves to/from memory. Use Yi instead of x for SSE-MMX
conversion alternatives.
2013-03-21 Jakub Jelinek <jakub@redhat.com> 2013-03-21 Jakub Jelinek <jakub@redhat.com>
PR middle-end/48087 PR middle-end/48087
...@@ -53,8 +59,7 @@ ...@@ -53,8 +59,7 @@
(refs_independent_p): Do not test for unanalyzed mems here. (refs_independent_p): Do not test for unanalyzed mems here.
(ref_indep_loop_p_1): Special-case disambiguation against (ref_indep_loop_p_1): Special-case disambiguation against
the unanalyzed ref. the unanalyzed ref.
(ref_indep_loop_p): Assert we are not queried for the (ref_indep_loop_p): Assert we are not queried for the unanalyzed mem.
unanalyzed mem.
2013-03-21 Christophe Lyon <christophe.lyon@linaro.org> 2013-03-21 Christophe Lyon <christophe.lyon@linaro.org>
...@@ -70,8 +75,7 @@ ...@@ -70,8 +75,7 @@
* config/arm/arm.h (TARGET_PREFER_NEON_64BITS): New macro. * config/arm/arm.h (TARGET_PREFER_NEON_64BITS): New macro.
(prefer_neon_for_64bits): Declare new variable. (prefer_neon_for_64bits): Declare new variable.
* config/arm/arm.md (arch): Rename neon_onlya8 and neon_nota8 to * config/arm/arm.md (arch): Rename neon_onlya8 and neon_nota8 to
avoid_neon_for_64bits and neon_for_64bits. Remove onlya8 and avoid_neon_for_64bits and neon_for_64bits. Remove onlya8 and nota8.
nota8.
(arch_enabled): Handle new arch types. Remove support for onlya8 (arch_enabled): Handle new arch types. Remove support for onlya8
and nota8. and nota8.
(one_cmpldi2): Use new arch names. (one_cmpldi2): Use new arch names.
...@@ -88,8 +92,7 @@ ...@@ -88,8 +92,7 @@
PR tree-optimization/39326 PR tree-optimization/39326
* tree-ssa-loop-im.c (bb_loop_postorder): New global static. * tree-ssa-loop-im.c (bb_loop_postorder): New global static.
(sort_bbs_in_loop_postorder_cmp): New function. (sort_bbs_in_loop_postorder_cmp): New function.
(gather_mem_refs_in_loops): Assign mem-ref IDs in loop (gather_mem_refs_in_loops): Assign mem-ref IDs in loop postorder.
postorder.
2013-03-21 Richard Biener <rguenther@suse.de> 2013-03-21 Richard Biener <rguenther@suse.de>
......
...@@ -1864,9 +1864,9 @@ ...@@ -1864,9 +1864,9 @@
(define_insn "*movdi_internal" (define_insn "*movdi_internal"
[(set (match_operand:DI 0 "nonimmediate_operand" [(set (match_operand:DI 0 "nonimmediate_operand"
"=r ,o ,r,r ,r,m ,*y,m*y,*y,?*y,?r ,?*Ym,*x,*x,*x,m ,?r ,?*Yi,?*x,?*Ym") "=r ,o ,r,r ,r,m ,*y,*y,?*y,?m,?r ,?*Ym,*x,*x,*x,m ,?r ,?*Yi,?*Ym,?*Yi")
(match_operand:DI 1 "general_operand" (match_operand:DI 1 "general_operand"
"riFo,riF,Z,rem,i,re,C ,*y ,m ,m ,*Ym,r ,C ,*x,m ,*x,*Yi,r ,*Ym,*x"))] "riFo,riF,Z,rem,i,re,C ,*y,m ,*y,*Ym,r ,C ,*x,m ,*x,*Yi,r ,*Yi ,*Ym"))]
"!(MEM_P (operands[0]) && MEM_P (operands[1]))" "!(MEM_P (operands[0]) && MEM_P (operands[1]))"
{ {
switch (get_attr_type (insn)) switch (get_attr_type (insn))
...@@ -1936,12 +1936,10 @@ ...@@ -1936,12 +1936,10 @@
} }
} }
[(set (attr "isa") [(set (attr "isa")
(cond [(eq_attr "alternative" "0,1,8") (cond [(eq_attr "alternative" "0,1")
(const_string "nox64") (const_string "nox64")
(eq_attr "alternative" "2,3,4,5,9,10,11,16,17") (eq_attr "alternative" "2,3,4,5,10,11,16,17")
(const_string "x64") (const_string "x64")
(eq_attr "alternative" "18,19")
(const_string "sse2")
] ]
(const_string "*"))) (const_string "*")))
(set (attr "type") (set (attr "type")
......
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