[Bug target/50875] O3 and -mavx lead to internal compiler error: in find_reloads
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Oct 26 22:53:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50875
--- Comment #6 from Uros Bizjak <ubizjak at gmail dot com> 2011-10-26 22:52:50 UTC ---
Following (untested) patch fixes the failure for me:
Index: sse.md
===================================================================
--- sse.md (revision 180528)
+++ sse.md (working copy)
@@ -4231,12 +4231,11 @@
[(set (match_operand:V4DF 0 "register_operand" "=x,x")
(vec_select:V4DF
(vec_concat:V8DF
- (match_operand:V4DF 1 "nonimmediate_operand" "xm,x")
+ (match_operand:V4DF 1 "nonimmediate_operand" " m,x")
(match_operand:V4DF 2 "nonimmediate_operand" " 1,xm"))
(parallel [(const_int 0) (const_int 4)
(const_int 2) (const_int 6)])))]
- "TARGET_AVX
- && (!MEM_P (operands[1]) || rtx_equal_p (operands[1], operands[2]))"
+ "TARGET_AVX"
"@
vmovddup\t{%1, %0|%0, %1}
vunpcklpd\t{%2, %1, %0|%0, %1, %2}"
More information about the Gcc-bugs
mailing list