aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2013-01-07 03:16:03 +0000
committerChandler Carruth <chandlerc@gmail.com>2013-01-07 03:16:03 +0000
commitd1b8ef97c47d347f2a2261a0d6de4872f248321f (patch)
tree2d50accb52c1165093aa4780d27d8ec2240c3ba1 /lib
parentbe04929f7fd76a921540e9901f24563e51dc1219 (diff)
Make the popcnt support enums and methods have more clear names and
follow the conding conventions regarding enumerating a set of "kinds" of things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171687 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Analysis/TargetTransformInfo.cpp10
-rw-r--r--lib/Target/X86/X86TargetTransformInfo.cpp6
-rw-r--r--lib/Transforms/Scalar/LoopIdiomRecognize.cpp2
3 files changed, 9 insertions, 9 deletions
diff --git a/lib/Analysis/TargetTransformInfo.cpp b/lib/Analysis/TargetTransformInfo.cpp
index e156277a27..029937397e 100644
--- a/lib/Analysis/TargetTransformInfo.cpp
+++ b/lib/Analysis/TargetTransformInfo.cpp
@@ -79,9 +79,9 @@ bool TargetTransformInfo::shouldBuildLookupTables() const {
return PrevTTI->shouldBuildLookupTables();
}
-TargetTransformInfo::PopcntHwSupport
-TargetTransformInfo::getPopcntHwSupport(unsigned IntTyWidthInBit) const {
- return PrevTTI->getPopcntHwSupport(IntTyWidthInBit);
+TargetTransformInfo::PopcntSupportKind
+TargetTransformInfo::getPopcntSupport(unsigned IntTyWidthInBit) const {
+ return PrevTTI->getPopcntSupport(IntTyWidthInBit);
}
unsigned TargetTransformInfo::getIntImmCost(const APInt &Imm, Type *Ty) const {
@@ -202,8 +202,8 @@ struct NoTTI : ImmutablePass, TargetTransformInfo {
return true;
}
- PopcntHwSupport getPopcntHwSupport(unsigned IntTyWidthInBit) const {
- return None;
+ PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) const {
+ return PSK_Software;
}
unsigned getIntImmCost(const APInt &Imm, Type *Ty) const {
diff --git a/lib/Target/X86/X86TargetTransformInfo.cpp b/lib/Target/X86/X86TargetTransformInfo.cpp
index c98681b629..8a699afa6a 100644
--- a/lib/Target/X86/X86TargetTransformInfo.cpp
+++ b/lib/Target/X86/X86TargetTransformInfo.cpp
@@ -76,7 +76,7 @@ public:
/// \name Scalar TTI Implementations
/// @{
- virtual PopcntHwSupport getPopcntHwSupport(unsigned TyWidth) const;
+ virtual PopcntSupportKind getPopcntSupport(unsigned TyWidth) const;
/// @}
@@ -157,12 +157,12 @@ FindInConvertTable(const X86TypeConversionCostTblEntry *Tbl, unsigned len,
}
-X86TTI::PopcntHwSupport X86TTI::getPopcntHwSupport(unsigned TyWidth) const {
+X86TTI::PopcntSupportKind X86TTI::getPopcntSupport(unsigned TyWidth) const {
assert(isPowerOf2_32(TyWidth) && "Ty width must be power of 2");
// TODO: Currently the __builtin_popcount() implementation using SSE3
// instructions is inefficient. Once the problem is fixed, we should
// call ST->hasSSE3() instead of ST->hasSSE4().
- return ST->hasSSE41() ? Fast : None;
+ return ST->hasSSE41() ? PSK_FastHardware : PSK_Software;
}
unsigned X86TTI::getNumberOfRegisters(bool Vector) const {
diff --git a/lib/Transforms/Scalar/LoopIdiomRecognize.cpp b/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
index 20eec91cf9..59109a7865 100644
--- a/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
+++ b/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
@@ -311,7 +311,7 @@ NclPopcountRecognize::NclPopcountRecognize(LoopIdiomRecognize &TheLIR):
bool NclPopcountRecognize::preliminaryScreen() {
const TargetTransformInfo *TTI = LIR.getTargetTransformInfo();
- if (TTI->getPopcntHwSupport(32) != TargetTransformInfo::Fast)
+ if (TTI->getPopcntSupport(32) != TargetTransformInfo::PSK_FastHardware)
return false;
// Counting population are usually conducted by few arithmetic instrutions.