[llvm] r300518 - [Target] Use hasOneUse() instead of getNumUses().

Davide Italiano via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 17 17:29:54 PDT 2017


Author: davide
Date: Mon Apr 17 19:29:54 2017
New Revision: 300518

URL: http://llvm.org/viewvc/llvm-project?rev=300518&view=rev
Log:
[Target] Use hasOneUse() instead of getNumUses().

The latter does a liner scan over a linked list, therefore is
much more expensive.

Modified:
    llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp

Modified: llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp?rev=300518&r1=300517&r2=300518&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp Mon Apr 17 19:29:54 2017
@@ -7126,7 +7126,7 @@ bool AArch64TargetLowering::isProfitable
   if (I->getOpcode() != Instruction::FMul)
     return true;
 
-  if (I->getNumUses() != 1)
+  if (!I->hasOneUse())
     return true;
 
   Instruction *User = I->user_back();




More information about the llvm-commits mailing list