summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/TargetTransformInfo.cpp
diff options
context:
space:
mode:
authorRenato Golin <renato.golin@linaro.org>2013-01-19 00:42:16 +0000
committerRenato Golin <renato.golin@linaro.org>2013-01-19 00:42:16 +0000
commitcc99c421308046e3e5d7f78d45c57e1994a7ddb1 (patch)
tree1ac3107672bf9bd930807e9dfc85ecb7a00616b4 /llvm/lib/Analysis/TargetTransformInfo.cpp
parent746a28bb556e319e6d4da6bda43fe257c6a247c4 (diff)
downloadbcm5719-llvm-cc99c421308046e3e5d7f78d45c57e1994a7ddb1.tar.gz
bcm5719-llvm-cc99c421308046e3e5d7f78d45c57e1994a7ddb1.zip
Fix 80-col and early exit in cost model
llvm-svn: 172877
Diffstat (limited to 'llvm/lib/Analysis/TargetTransformInfo.cpp')
-rw-r--r--llvm/lib/Analysis/TargetTransformInfo.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/llvm/lib/Analysis/TargetTransformInfo.cpp b/llvm/lib/Analysis/TargetTransformInfo.cpp
index 344be719cb5..4873a7f923f 100644
--- a/llvm/lib/Analysis/TargetTransformInfo.cpp
+++ b/llvm/lib/Analysis/TargetTransformInfo.cpp
@@ -289,7 +289,9 @@ ImmutablePass *llvm::createNoTargetTransformInfoPass() {
//======================================= COST TABLES ==
-CostTable::CostTable(const CostTableEntry *table, const size_t size, unsigned numTypes)
+CostTable::CostTable(const CostTableEntry *table,
+ const size_t size,
+ unsigned numTypes)
: table(table), size(size), numTypes(numTypes) {
assert(table && "missing cost table");
assert(size > 0 && "empty cost table");
@@ -297,22 +299,23 @@ CostTable::CostTable(const CostTableEntry *table, const size_t size, unsigned nu
unsigned CostTable::_findCost(int ISD, MVT *Types) const {
for (unsigned i = 0; i < size; ++i) {
- if (table[i].ISD == ISD) {
- bool found = true;
- for (unsigned t=0; t<numTypes; t++) {
- if (table[i].Types[t] != Types[t]) {
- found = false;
- break;
- }
+ if (table[i].ISD != ISD)
+ continue;
+ bool found = true;
+ for (unsigned t=0; t<numTypes; t++) {
+ if (table[i].Types[t] != Types[t]) {
+ found = false;
+ break;
}
- if (found)
- return table[i].Cost;
}
+ if (found)
+ return table[i].Cost;
}
return COST_NOT_FOUND;
}
-UnaryCostTable::UnaryCostTable(const CostTableEntry *table, const size_t size)
+UnaryCostTable::UnaryCostTable(const CostTableEntry *table,
+ const size_t size)
: CostTable(table, size, 1) { }
unsigned UnaryCostTable::findCost(int ISD, MVT Type) const {
@@ -320,7 +323,8 @@ unsigned UnaryCostTable::findCost(int ISD, MVT Type) const {
return _findCost(ISD, tys);
}
-BinaryCostTable::BinaryCostTable(const CostTableEntry *table, const size_t size)
+BinaryCostTable::BinaryCostTable(const CostTableEntry *table,
+ const size_t size)
: CostTable(table, size, 2) { }
unsigned BinaryCostTable::findCost(int ISD, MVT Type, MVT SrcType) const {
OpenPOWER on IntegriCloud