aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-range.cc
diff options
context:
space:
mode:
authorHu, Lin1 <lin1.hu@intel.com>2022-09-13 16:28:54 +0800
committerliuhongt <hongtao.liu@intel.com>2022-09-23 13:28:12 +0800
commita282f086ef26d90e9785e992cd09a0d118b24695 (patch)
treee43e7408f14a7fb49518ab2031ef81edbbca40ad /gcc/value-range.cc
parent8b449dcd84334068c769a2f427812dadb95e61de (diff)
downloadgcc-a282f086ef26d90e9785e992cd09a0d118b24695.zip
gcc-a282f086ef26d90e9785e992cd09a0d118b24695.tar.gz
gcc-a282f086ef26d90e9785e992cd09a0d118b24695.tar.bz2
i386: Optimize code generation of __mm256_zextsi128_si256(__mm_set1_epi8(-1))
gcc/ChangeLog: PR target/94962 * config/i386/constraints.md (BH): New define_constraint. * config/i386/i386.cc (standard_sse_constant_p): Add return 3/4 when operand matches new predicate. (standard_sse_constant_opcode): Add new alternative branch to return "vpcmpeqd". * config/i386/predicates.md (vector_all_ones_zero_extend_half_operand): New define_predicate. (vector_all_ones_zero_extend_quarter_operand): Ditto. * config/i386/sse.md: Add constraint to insn "mov<mode>_internal". gcc/testsuite/ChangeLog: PR target/94962 * gcc.target/i386/avx256-unaligned-load-1.c: Modify test. * gcc.target/i386/avx256-unaligned-store-1.c: Ditto. * gcc.target/i386/avx256-unaligned-store-2.c: Ditto. * gcc.target/i386/avx256-unaligned-store-3.c: Ditto. * gcc.target/i386/pr94962-1.c: New test. * gcc.target/i386/pr94962-2.c: Ditto. * gcc.target/i386/pr94962-3.c: Ditto. * gcc.target/i386/pr94962-4.c: Ditto.
Diffstat (limited to 'gcc/value-range.cc')
0 files changed, 0 insertions, 0 deletions