[PATCH] D109334: Don't check if the result of hasAttrSomewhere is non-zero in CallBase::getReturnedArgOperand()

Arthur Eubanks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 6 12:59:51 PDT 2021


aeubanks created this revision.
aeubanks added a reviewer: rnk.
Herald added subscribers: dexonsmith, hiraditya.
aeubanks requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Index is 0 when the return value has the returned attribute. But the
return value cannot have the returned attribute, so the check is
pointless.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D109334

Files:
  llvm/lib/IR/Instructions.cpp


Index: llvm/lib/IR/Instructions.cpp
===================================================================
--- llvm/lib/IR/Instructions.cpp
+++ llvm/lib/IR/Instructions.cpp
@@ -328,11 +328,10 @@
 Value *CallBase::getReturnedArgOperand() const {
   unsigned Index;
 
-  if (Attrs.hasAttrSomewhere(Attribute::Returned, &Index) && Index)
+  if (Attrs.hasAttrSomewhere(Attribute::Returned, &Index))
     return getArgOperand(Index - AttributeList::FirstArgIndex);
   if (const Function *F = getCalledFunction())
-    if (F->getAttributes().hasAttrSomewhere(Attribute::Returned, &Index) &&
-        Index)
+    if (F->getAttributes().hasAttrSomewhere(Attribute::Returned, &Index))
       return getArgOperand(Index - AttributeList::FirstArgIndex);
 
   return nullptr;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D109334.370963.patch
Type: text/x-patch
Size: 761 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210906/17f98c4c/attachment.bin>


More information about the llvm-commits mailing list