[PATCH] D104648: [Mem2Reg] Use poison instead of undef for read of uninitialized memory

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 21 08:02:24 PDT 2021


nikic created this revision.
nikic added reviewers: aqjune, nlopes, spatel.
Herald added subscribers: jdoerfert, kerbowa, hiraditya, nhaehnle, jvesely.
nikic requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

During mem2reg, make loads from uninitialized memory return a poison value rather than an undef value. Also clarify the alloca documentation in this regard.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D104648

Files:
  llvm/docs/LangRef.rst
  llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
  llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
  llvm/test/Transforms/Mem2Reg/debug-alloca-vla-1.ll
  llvm/test/Transforms/Mem2Reg/debug-alloca-vla-2.ll
  llvm/test/Transforms/Mem2Reg/pr24179.ll
  llvm/test/Transforms/Mem2Reg/undef-order.ll
  llvm/test/Transforms/PhaseOrdering/X86/nancvt.ll
  llvm/test/Transforms/SROA/addrspacecast.ll
  llvm/test/Transforms/SROA/basictest.ll
  llvm/test/Transforms/SROA/phi-and-select.ll
  llvm/test/Transforms/SROA/phi-gep.ll
  llvm/test/Transforms/SROA/phi-with-duplicate-pred.ll
  llvm/test/Transforms/SROA/pr37267.ll
  llvm/test/Transforms/SROA/scalable-vectors.ll
  llvm/test/Transforms/SROA/slice-width.ll
  llvm/test/Transforms/SROA/vector-promotion.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D104648.353370.patch
Type: text/x-patch
Size: 27761 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210621/4dbc34da/attachment.bin>


More information about the llvm-commits mailing list