aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/m68k/m68k-opts.h
diff options
context:
space:
mode:
authorliuhongt <hongtao.liu@intel.com>2024-10-16 13:43:48 +0800
committerliuhongt <hongtao.liu@intel.com>2024-10-21 10:28:48 +0800
commit5259d3927c1c8e3a15b4b844adef59b48c241233 (patch)
tree1e4d4d9281522d78671739f46692b39d6285c4a2 /gcc/config/m68k/m68k-opts.h
parent0ceb5cc1867fce940b2f4eaaa2b6ace49cb0b853 (diff)
downloadgcc-master.zip
gcc-master.tar.gz
gcc-master.tar.bz2
Refine splitters related to "combine vpcmpuw + zero_extend to vpcmpuw"HEADtrunkmaster
r12-6103-g1a7ce8570997eb combines vpcmpuw + zero_extend to vpcmpuw with the pre_reload splitter, but the splitter transforms the zero_extend into a subreg which make reload think the upper part is garbage, it's not correct. The patch adjusts the zero_extend define_insn_and_split to define_insn to keep zero_extend. gcc/ChangeLog: PR target/117159 * config/i386/sse.md (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>): Change from define_insn_and_split to define_insn. (*<avx512>_cmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>): Ditto. (*<avx512>_ucmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>): Ditto. (*<avx512>_ucmp<VI48_AVX512VL:mode>3_zero_extend<SWI248x:mode>): Ditto. (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): Split to the zero_extend pattern. (*<avx512>_cmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): Ditto. (*<avx512>_ucmp<VI12_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): Ditto. (*<avx512>_ucmp<VI48_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): Ditto. gcc/testsuite/ChangeLog: * gcc.target/i386/pr117159.c: New test. * gcc.target/i386/avx512bw-pr103750-1.c: Remove xfail. * gcc.target/i386/avx512bw-pr103750-2.c: Remove xfail.
Diffstat (limited to 'gcc/config/m68k/m68k-opts.h')
0 files changed, 0 insertions, 0 deletions