summaryrefslogtreecommitdiff
path: root/utils/PerfectShuffle
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-04-17 05:25:16 +0000
committerChris Lattner <sabre@nondot.org>2006-04-17 05:25:16 +0000
commit8c3e8471592bf46631bff0fab554d5ac3fedcff6 (patch)
treee11cef8acaa2690d77e1509bb6a75ae96c3e3a39 /utils/PerfectShuffle
parent586d6a808dc80abe1b00e5fe943b1042cb4422e9 (diff)
downloadllvm-8c3e8471592bf46631bff0fab554d5ac3fedcff6.tar.gz
llvm-8c3e8471592bf46631bff0fab554d5ac3fedcff6.tar.bz2
llvm-8c3e8471592bf46631bff0fab554d5ac3fedcff6.tar.xz
Encode a cost of zero as a cost of 1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27745 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/PerfectShuffle')
-rw-r--r--utils/PerfectShuffle/PerfectShuffle.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/utils/PerfectShuffle/PerfectShuffle.cpp b/utils/PerfectShuffle/PerfectShuffle.cpp
index c2abe9b611..b19dd0d39a 100644
--- a/utils/PerfectShuffle/PerfectShuffle.cpp
+++ b/utils/PerfectShuffle/PerfectShuffle.cpp
@@ -381,7 +381,9 @@ int main() {
// CostSat - The cost of this operation saturated to two bits.
unsigned CostSat = ShufTab[i].Cost;
- if (CostSat > 3) CostSat = 3;
+ if (CostSat > 4) CostSat = 4;
+ if (CostSat == 0) CostSat = 1;
+ --CostSat; // Cost is now between 0-3.
unsigned OpNum = ShufTab[i].Op ? ShufTab[i].Op->OpNum : 0;
assert(OpNum < 16 && "Too few bits to encode operation!");