llvm-project/clang/test/CodeGen/X86
Philip Reames e6ad9ef4e7 [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement
The basic idea to this is that a) having a single canonical type makes CSE easier, and b) many of our transforms are inconsistent about which types we end up with based on visit order.

I'm restricting this to constants as for non-constants, we'd have to decide whether the simplicity was worth extra instructions. For constants, there are no extra instructions.

We chose the canonical type as i64 arbitrarily.  We might consider changing this to something else in the future if we have cause.

Differential Revision: https://reviews.llvm.org/D115387
2021-12-13 16:56:22 -08:00
..
3dnow-builtins.c
adc-builtins.c
adx-builtins.c
amx.c
amx_api.c
amx_errors.c
amx_inline_asm.c
att-inline-asm-prefix.c
avx-builtins-constrained-cmp.c
avx-builtins.c [X86][AVX] Update _mm256_loadu2_m128* intrinsics to use _mm256_set_m128* (PR51796) 2021-09-09 19:15:48 +01:00
avx-cmp-builtins.c
avx-shuffle-builtins.c [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
avx-union.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
avx2-builtins.c
avx512-inline-asm-kregisters-basics.c
avx512-kconstraints-att_inline_asm.c
avx512-reduceIntrin.c
avx512-reduceMinMaxIntrin.c
avx512bf16-builtins.c
avx512bitalg-builtins.c
avx512bw-builtins.c
avx512cdintrin.c
avx512dq-builtins-constrained.c
avx512dq-builtins.c
avx512er-builtins.c
avx512f-builtins-constrained-cmp.c
avx512f-builtins-constrained.c
avx512f-builtins.c
avx512fp16-abi.c Revert "The _Float16 type is supported on x86 systems with SSE2 enabled." 2021-11-23 08:00:57 -05:00
avx512fp16-builtins.c [X86][FP16] add alias for f*mul_*ch intrinsics 2021-11-17 13:26:11 +08:00
avx512fp16-complex-abi.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
avx512fp16-complex.c Revert "The _Float16 type is supported on x86 systems with SSE2 enabled." 2021-11-23 08:00:57 -05:00
avx512ifma-builtins.c
avx512ifmavl-builtins.c
avx512pf-builtins.c
avx512vbmi-builtins.c
avx512vbmi2-builtins.c
avx512vbmivl-builtin.c
avx512vl-builtins-constrained-cmp.c
avx512vl-builtins-constrained.c
avx512vl-builtins.c
avx512vlbf16-builtins.c [X86] add 3 missing intrinsics: _mm_(mask/maskz)_cvtpbh_ps 2021-11-18 08:48:19 +08:00
avx512vlbitalg-builtins.c
avx512vlbw-builtins.c
avx512vlcd-builtins.c
avx512vldq-builtins.c
avx512vlfp16-builtins.c [X86][FP16] add alias for f*mul_*ch intrinsics 2021-11-17 13:26:11 +08:00
avx512vlvbmi2-builtins.c
avx512vlvnni-builtins.c
avx512vnni-builtins.c
avx512vpopcntdqintrin.c
avx512vpopcntdqvlintrin.c
avxvnni-builtins.c
bitscan-builtins.c
bmi-builtins.c
bmi2-builtins.c
builtin-clflushopt.c
builtin-clwb.c
builtin-clzero.c
builtin-movdir.c [test] Remove tests pinned to the legacy PM 2021-10-18 16:40:46 -07:00
builtin-wbinvd.c
builtin-wbnoinvd.c
cetintrin.c
cldemote.c
f16c-builtins-constrained.c
f16c-builtins.c
fma-builtins-constrained.c
fma-builtins.c
fma4-builtins.c
fsgsbase-builtins.c
gfni-builtins.c
intel-avx512vlvp2intersect.c
intel-avx512vp2intersect.c
invpcid.c
keylocker.c [X86] Adjust Keylocker handle mem size 2021-09-13 18:03:27 +08:00
lwp-builtins.c
lzcnt-builtins.c
mmx-builtins.c
mmx-inline-asm-error.c
mmx-inline-asm.c
mmx-shift-with-immediate.c
movbe-builtins.c
ms-inline-asm-prefix.c
ms-x86-intrinsics.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
ms_fmul.c [X86][MS-InlineAsm] Make the constraint *m to be simple place holder 2021-12-10 09:29:38 +08:00
pause.c
pclmul-builtins.c
pku.c
popcnt-builtins.c
prefetchw-builtins.c
ptwrite.c
rd-builtins.c
rdpid-builtins.c
rdrand-builtins.c
rot-intrinsics.c
rtm-builtins.c
sha-builtins.c
sse-builtins-constrained-cmp.c
sse-builtins-constrained.c
sse-builtins-dbg.c
sse-builtins.c
sse.c
sse2-builtins-constrained-cmp.c
sse2-builtins.c
sse3-builtins.c
sse4a-builtins.c
sse41-builtins.c [X86] Add parentheses around casts in some of the X86 intrinsic headers. 2021-08-13 09:36:16 -07:00
sse42-builtins.c
ssse3-builtins.c
strictfp_builtins.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
tbm-builtins.c
va-arg-sse.c [X86] Always check the size of SourceTy before getting the next type 2021-09-20 23:34:19 +08:00
vaes-builtins.c
vpclmulqdq-builtins.c
waitpkg.c
x86-64-inline-asm.c
x86-GCC-inline-asm-Y-constraints.c
x86-atomic-long_double.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86-bswap.c
x86-builtins-vector-width.c
x86-builtins.c
x86-cf-protection.c
x86-crc-builtins.c [X86] Add CRC32 feature. 2021-09-06 17:24:30 +08:00
x86-enqcmd-builtins.c
x86-inline-asm-min-vector-width.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86-inline-asm-v-constraint.c
x86-long-double.cpp Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86-nontemporal.c
x86-serialize-intrin.c
x86-soft-float.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86-ssc-mark.c [X86] Support __SSC_MARK(const int id) 2021-08-30 09:55:35 +08:00
x86-tsxldtrk-builtins.c
x86-uintr-builtins.c
x86-vec-i128.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86-vec-struct-packing.c
x86-vector-width.c
x86.c
x86_32-arguments-darwin.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-arguments-iamcu.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-arguments-linux.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-arguments-nommx.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-arguments-realign.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-arguments-win32.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_32-fpcc-struct-return.c
x86_32-inline-asm.c
x86_32-xsave.c
x86_64-PR42672.c
x86_64-arguments-darwin.c
x86_64-arguments-nacl.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_64-arguments-win32.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_64-arguments.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_64-atomic-128.c
x86_64-floatvectors.c
x86_64-instrument-functions.c [test] Remove tests pinned to the legacy PM 2021-10-18 16:40:46 -07:00
x86_64-longdouble.c Revert "[Clang/Test]: Rename enable_noundef_analysis to disable-noundef-analysis and turn it off by default" 2021-11-09 02:15:55 +09:00
x86_64-mno-sse.c Revert "[X86][clang] Emit diagnostic for float and double when we have features -x87 and -sse on 64-bits" 2021-12-10 10:31:09 +08:00
x86_64-mno-sse2.c
x86_64-profiling-keep-fp.c
x86_64-xsave.c
x86_inlineasm_curly_bracket_escape.c
xop-builtins-cmp.c
xop-builtins.c