[PATCH] D93817: Update transformations to use poison for insertelement/shufflevector's placeholder value

Juneyoung Lee via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Jan 3 08:43:42 PST 2021


aqjune updated this revision to Diff 314289.
aqjune added a comment.

Rebase
I'll continue splitting after working on lifetime patches


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D93817/new/

https://reviews.llvm.org/D93817

Files:
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector-constrained.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-constrained.c
  clang/test/CodeGen/SystemZ/builtins-systemz-zvector2.c
  clang/test/CodeGen/X86/avx-shuffle-builtins.c
  clang/test/CodeGen/aarch64-bf16-dotprod-intrinsics.c
  clang/test/CodeGen/aarch64-bf16-getset-intrinsics.c
  clang/test/CodeGen/aarch64-bf16-lane-intrinsics.c
  clang/test/CodeGen/aarch64-bf16-ldst-intrinsics.c
  clang/test/CodeGen/aarch64-neon-dot-product.c
  clang/test/CodeGen/arm-bf16-convert-intrinsics.c
  clang/test/CodeGen/arm-bf16-dotprod-intrinsics.c
  clang/test/CodeGen/arm-bf16-getset-intrinsics.c
  clang/test/CodeGen/arm-neon-dot-product.c
  llvm/lib/CodeGen/CodeGenPrepare.cpp
  llvm/lib/CodeGen/InterleavedAccessPass.cpp
  llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
  llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
  llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
  llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
  llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
  llvm/test/Transforms/CodeGenPrepare/ARM/sink-add-mul-shufflevector-inseltpoison.ll
  llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts-inseltpoison.ll
  llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll
  llvm/test/Transforms/InstCombine/X86/x86-avx2-inseltpoison.ll
  llvm/test/Transforms/InstCombine/X86/x86-avx2.ll
  llvm/test/Transforms/InstCombine/X86/x86-avx512-inseltpoison.ll
  llvm/test/Transforms/InstCombine/X86/x86-avx512.ll
  llvm/test/Transforms/InstCombine/X86/x86-f16c-inseltpoison.ll
  llvm/test/Transforms/InstCombine/X86/x86-f16c.ll
  llvm/test/Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll
  llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll
  llvm/test/Transforms/InstCombine/X86/x86-vpermil-inseltpoison.ll
  llvm/test/Transforms/InstCombine/X86/x86-vpermil.ll
  llvm/test/Transforms/InstCombine/bitcast-vec-canon-inseltpoison.ll
  llvm/test/Transforms/InstCombine/bitcast-vec-canon.ll
  llvm/test/Transforms/InstCombine/broadcast-inseltpoison.ll
  llvm/test/Transforms/InstCombine/broadcast.ll
  llvm/test/Transforms/InstCombine/canonicalize-vector-extract.ll
  llvm/test/Transforms/InstCombine/extractelement-inseltpoison.ll
  llvm/test/Transforms/InstCombine/extractelement.ll
  llvm/test/Transforms/InstCombine/gep-inbounds-null.ll
  llvm/test/Transforms/InstCombine/getelementptr.ll
  llvm/test/Transforms/InstCombine/icmp-vec-inseltpoison.ll
  llvm/test/Transforms/InstCombine/icmp-vec.ll
  llvm/test/Transforms/InstCombine/insert-extract-shuffle-inseltpoison.ll
  llvm/test/Transforms/InstCombine/insert-extract-shuffle.ll
  llvm/test/Transforms/InstCombine/masked_intrinsics-inseltpoison.ll
  llvm/test/Transforms/InstCombine/masked_intrinsics.ll
  llvm/test/Transforms/InstCombine/obfuscated_splat-inseltpoison.ll
  llvm/test/Transforms/InstCombine/obfuscated_splat.ll
  llvm/test/Transforms/InstCombine/select-extractelement-inseltpoison.ll
  llvm/test/Transforms/InstCombine/select-extractelement.ll
  llvm/test/Transforms/InstCombine/shufflevector-div-rem-inseltpoison.ll
  llvm/test/Transforms/InstCombine/shufflevector-div-rem.ll
  llvm/test/Transforms/InstCombine/trunc-extractelement-inseltpoison.ll
  llvm/test/Transforms/InstCombine/trunc-extractelement.ll
  llvm/test/Transforms/InstCombine/trunc-inseltpoison.ll
  llvm/test/Transforms/InstCombine/trunc.ll
  llvm/test/Transforms/InstCombine/vec-binop-select-inseltpoison.ll
  llvm/test/Transforms/InstCombine/vec-binop-select.ll
  llvm/test/Transforms/InstCombine/vec_demanded_elts-inseltpoison.ll
  llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
  llvm/test/Transforms/InstCombine/vec_gep_scalar_arg-inseltpoison.ll
  llvm/test/Transforms/InstCombine/vec_shuffle-inseltpoison.ll
  llvm/test/Transforms/InstCombine/vec_shuffle.ll
  llvm/test/Transforms/InstCombine/vector-casts-inseltpoison.ll
  llvm/test/Transforms/InstCombine/vscale_cmp.ll
  llvm/test/Transforms/InstSimplify/shufflevector-inseltpoison.ll
  llvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
  llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll
  llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
  llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
  llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
  llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
  llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
  llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
  llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
  llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
  llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
  llvm/test/Transforms/LoopVectorize/induction.ll
  llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
  llvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
  llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
  llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-multiple-blocks.ll
  llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused.ll
  llvm/test/Transforms/LowerMatrixIntrinsics/multiply-minimal.ll
  llvm/test/Transforms/PhaseOrdering/X86/shuffle-inseltpoison.ll
  llvm/test/Transforms/PhaseOrdering/X86/shuffle.ll
  llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/commute.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/gather-root.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/matmul.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
  llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
  llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat.ll
  llvm/test/Transforms/SLPVectorizer/AMDGPU/packed-math.ll
  llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll
  llvm/test/Transforms/SLPVectorizer/WebAssembly/no-vectorize-rotate.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR35628_2.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR35865-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
  llvm/test/Transforms/SLPVectorizer/X86/PR40310.ll
  llvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
  llvm/test/Transforms/SLPVectorizer/X86/bad-reduction.ll
  llvm/test/Transforms/SLPVectorizer/X86/barriercall.ll
  llvm/test/Transforms/SLPVectorizer/X86/broadcast.ll
  llvm/test/Transforms/SLPVectorizer/X86/cmp_sel.ll
  llvm/test/Transforms/SLPVectorizer/X86/commutativity.ll
  llvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll
  llvm/test/Transforms/SLPVectorizer/X86/crash_cmpop.ll
  llvm/test/Transforms/SLPVectorizer/X86/crash_lencod.ll
  llvm/test/Transforms/SLPVectorizer/X86/crash_mandeltext.ll
  llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll
  llvm/test/Transforms/SLPVectorizer/X86/cse.ll
  llvm/test/Transforms/SLPVectorizer/X86/diamond.ll
  llvm/test/Transforms/SLPVectorizer/X86/extract.ll
  llvm/test/Transforms/SLPVectorizer/X86/extract_in_tree_user.ll
  llvm/test/Transforms/SLPVectorizer/X86/extractcost.ll
  llvm/test/Transforms/SLPVectorizer/X86/extractelement.ll
  llvm/test/Transforms/SLPVectorizer/X86/fabs-cost-softfp.ll
  llvm/test/Transforms/SLPVectorizer/X86/hoist.ll
  llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
  llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
  llvm/test/Transforms/SLPVectorizer/X86/in-tree-user.ll
  llvm/test/Transforms/SLPVectorizer/X86/insert-after-bundle.ll
  llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
  llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-multiuse.ll
  llvm/test/Transforms/SLPVectorizer/X86/jumbled-load.ll
  llvm/test/Transforms/SLPVectorizer/X86/jumbled_store_crash.ll
  llvm/test/Transforms/SLPVectorizer/X86/long_chains.ll
  llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll
  llvm/test/Transforms/SLPVectorizer/X86/loopinvariant.ll
  llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
  llvm/test/Transforms/SLPVectorizer/X86/multi_user.ll
  llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
  llvm/test/Transforms/SLPVectorizer/X86/partail.ll
  llvm/test/Transforms/SLPVectorizer/X86/phi.ll
  llvm/test/Transforms/SLPVectorizer/X86/phi3.ll
  llvm/test/Transforms/SLPVectorizer/X86/phi_overalignedtype.ll
  llvm/test/Transforms/SLPVectorizer/X86/pr35497.ll
  llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll
  llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
  llvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
  llvm/test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll
  llvm/test/Transforms/SLPVectorizer/X86/resched.ll
  llvm/test/Transforms/SLPVectorizer/X86/saxpy.ll
  llvm/test/Transforms/SLPVectorizer/X86/supernode.ll
  llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
  llvm/test/Transforms/SLPVectorizer/X86/used-reduced-op.ll
  llvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/value-bug.ll
  llvm/test/Transforms/SLPVectorizer/X86/vectorize-reorder-reuse.ll
  llvm/test/Transforms/SLPVectorizer/slp-max-phi-size.ll
  llvm/test/Transforms/Scalarizer/variable-extractelement.ll



More information about the cfe-commits mailing list