[PATCH] D86576: [IR] Add NoUndef attribute to Intrinsics.td

Juneyoung Lee via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 25 14:01:11 PDT 2020


aqjune created this revision.
aqjune added reviewers: jdoerfert, efriedma.
Herald added subscribers: llvm-commits, okura, kuter, hiraditya.
Herald added a project: LLVM.
aqjune requested review of this revision.
Herald added a reviewer: sstefan1.
Herald added a reviewer: baziotis.
Herald added a subscriber: bbn.

This patch adds NoUndef to Intrinsics.td.
The attribute is attached to llvm.assume's operand, because llvm.assume(undef)
is UB.
It is attached to pointer operands of several memory accessing intrinsics
as well.

This change makes ValueTracking::getGuaranteedNonPoisonOps' intrinsic check
unnecessary, so it is removed.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D86576

Files:
  llvm/include/llvm/IR/Intrinsics.td
  llvm/lib/Analysis/ValueTracking.cpp
  llvm/test/Bitcode/upgrade-memory-intrinsics.ll
  llvm/test/Transforms/Attributor/norecurse.ll
  llvm/test/Transforms/Attributor/nosync.ll
  llvm/utils/TableGen/CodeGenIntrinsics.h
  llvm/utils/TableGen/CodeGenTarget.cpp
  llvm/utils/TableGen/IntrinsicEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D86576.287773.patch
Type: text/x-patch
Size: 10583 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200825/153869cf/attachment.bin>


More information about the llvm-commits mailing list