[Bug target/52437] [4.7 Regression] internal compiler error: in spill_failure, at reload1.c:2120
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Feb 29 20:38:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52437
--- Comment #2 from Uros Bizjak <ubizjak at gmail dot com> 2012-02-29 20:32:06 UTC ---
This patch adds missing alternative, and also disparages alternatives that end
with excess register->mem moves.
Index: sse.md
===================================================================
--- sse.md (revision 184630)
+++ sse.md (working copy)
@@ -3895,13 +3895,13 @@
;; see comment above inline_secondary_memory_needed function in i386.c
(define_insn "vec_set<mode>_0"
[(set (match_operand:VI4F_128 0 "nonimmediate_operand"
- "=x,x,x ,x,x,x,x ,x ,m,m ,m")
+ "=x,x,x ,x,x,x,x ,x ,m ,m ,m")
(vec_merge:VI4F_128
(vec_duplicate:VI4F_128
(match_operand:<ssescalarmode> 2 "general_operand"
- " x,m,*r,m,x,x,*rm,*rm,x,fF,*r"))
+ " x,m,*r,m,x,x,*rm,*rm,!x,!*rn,!*fF"))
(match_operand:VI4F_128 1 "vector_move_operand"
- " C,C,C ,C,0,x,0 ,x ,0,0 ,0")
+ " C,C,C ,C,0,x,0 ,x ,0 ,0 ,0")
(const_int 1)))]
"TARGET_SSE"
"@
More information about the Gcc-bugs
mailing list