[PATCH] D32423: Simplify barriers of null and undef

Piotr Padlewski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 24 09:08:08 PDT 2017


Prazek added inline comments.


================
Comment at: lib/Analysis/InstructionSimplify.cpp:4432-4438
+    case Intrinsic::invariant_group_barrier: {
+      // invariant.group.barrier(null) -> null
+      // invariant.group.barrier(undef) -> undef
+      if (isa<UndefValue>(*ArgBegin) || isa<ConstantPointerNull>(*ArgBegin))
+        return *ArgBegin;
+      return nullptr;
+    }
----------------
majnemer wrote:
> Prazek wrote:
> > majnemer wrote:
> > > This probably belongs in the constant folder.
> > Do you mean folding barrier(const) -> const?
> Not for all constants, just undef and null in address space zero.
I don't understand what you mean. Do you mean to move this code somewhere else?


https://reviews.llvm.org/D32423





More information about the llvm-commits mailing list