[PATCH] D26174: DAG: Avoid OOB when legalizing vector indexing

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 31 17:03:34 PDT 2016


arsenm created this revision.
arsenm added reviewers: eli.friedman, reames.
arsenm added a subscriber: llvm-commits.
Herald added a reviewer: tstellarAMD.
Herald added subscribers: nhaehnle, wdng, nemanjai.

If a vector index is out of bounds, the result is supposed to be
undefined but is not undefined behavior. Change the legalization
for indexing the vector on the stack so that an out of bounds
index does not create an out of bounds memory access.


https://reviews.llvm.org/D26174

Files:
  include/llvm/Target/TargetLowering.h
  lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
  lib/CodeGen/SelectionDAG/LegalizeTypes.h
  lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
  lib/CodeGen/SelectionDAG/TargetLowering.cpp
  test/CodeGen/AArch64/arm64-neon-copy.ll
  test/CodeGen/AArch64/arm64-nvcast.ll
  test/CodeGen/AMDGPU/insert_vector_elt.ll
  test/CodeGen/AMDGPU/local-stack-slot-bug.ll
  test/CodeGen/ARM/fp16-promote.ll
  test/CodeGen/ARM/vdup.ll
  test/CodeGen/Mips/llvm-ir/extractelement.ll
  test/CodeGen/PowerPC/variable_elem_vec_extracts.ll
  test/CodeGen/X86/extractelement-index.ll
  test/CodeGen/X86/extractelement-legalization-store-ordering.ll
  test/CodeGen/X86/i64-mem-copy.ll
  test/CodeGen/X86/vec_ins_extract-1.ll
  test/CodeGen/X86/vec_insert-4.ll
  test/CodeGen/X86/vec_insert-8.ll
  test/CodeGen/X86/vector-shuffle-variable-128.ll
  test/CodeGen/X86/vector-shuffle-variable-256.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26174.76506.patch
Type: text/x-patch
Size: 121378 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161101/9da6fbca/attachment.bin>


More information about the llvm-commits mailing list