[Bug target/95083] x86 fp_movcc expansion depends on real_cst sharing
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed May 13 14:13:25 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95083
--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> ---
It looks to me that a couple of (scalar) splitters are missing in sse.md.
There is vector
(define_insn_and_split "*<sse4_1>_blendv<ssemodesuffix><avxsizesuffix>_lt"
Defined as:
[(set (match_operand:VF_128_256 0 "register_operand" "=Yr,*x,x")
(unspec:VF_128_256
[(match_operand:VF_128_256 1 "register_operand" "0,0,x")
(match_operand:VF_128_256 2 "vector_operand" "YrBm,*xBm,xm")
(lt:VF_128_256
(match_operand:<sseintvecmode> 3 "register_operand" "Yz,Yz,x")
(match_operand:<sseintvecmode> 4 "const0_operand" "C,C,C"))]
UNSPEC_BLENDV))]
(please note const0 operand 4).
Probably similar pattern is missing that would degrade to MIN/MAX, for vector
and scalar versions.
More information about the Gcc-bugs
mailing list