[PATCH] D68491: [PATCH 08/38] [noalias] [IR] IRBuilder support for noalias intrinsics.

Wouter Vermaelen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 8 04:33:11 PDT 2019


vermaelen.wouter added inline comments.


================
Comment at: llvm/include/llvm/IR/IntrinsicInst.h:891-896
+    return (lhs->getOperand(Intrinsic::SideNoAliasScopeArg) ==
+            rhs->getOperand(Intrinsic::SideNoAliasScopeArg)) &&
+           (lhs->getOperand(Intrinsic::SideNoAliasIdentifyPObjIdArg) ==
+            rhs->getOperand(Intrinsic::SideNoAliasIdentifyPObjIdArg)) &&
+           (lhs->getOperand(Intrinsic::SideNoAliasIdentifyPArg) ==
+            rhs->getOperand(Intrinsic::SideNoAliasIdentifyPArg));
----------------
jeroen.dobbelaere wrote:
> lebedev.ri wrote:
> > `std::tie(<...>) == std::tie(<...>)` ?
> You mean: std::forward_as_tuple ?
> 
> 
Doesn't that loose the short-circuit behavior of operator&&?

Detail: IMHO it doesn't really improve readability:
   (a == b) && (c == d)
versus
   std::tie(a, c) == std::tie(b, d);


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

https://reviews.llvm.org/D68491





More information about the llvm-commits mailing list