[PATCH] D34458: [TTI] Refine the cost of EXT in getUserCost()
Haicheng Wu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 20 06:29:29 PDT 2017
haicheng added inline comments.
================
Comment at: llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h:167
+
+ return TargetTransformInfo::TCC_Basic;
+ }
----------------
delena wrote:
> haicheng wrote:
> > delena wrote:
> > > At this point we should call to getOperationCost() and ask the target about the cost of Ext for the given type.
> > Sorry about the performance regression.
> >
> > I think isExtFree(I) above checks isZExtFree() with its types. The part that can affect x86 is isExtLoad(). Do you want me to add a target hook to choose use refined ext cost?
> First, I should understand why if the Src is not ExtLoad you return TargetTransformInfo::TCC_Basic.
> Why you are not asking the target about the actual cost of the Ext?
I think that getTLI()->isExtFree(I) above asks the actual cost of the Ext which is equivalent to calling getOperationCost() since they both check target specific isZExtFree() with type.
Repository:
rL LLVM
https://reviews.llvm.org/D34458
More information about the llvm-commits
mailing list