summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Host.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Support/Host.cpp')
-rw-r--r--llvm/lib/Support/Host.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Support/Host.cpp b/llvm/lib/Support/Host.cpp
index 5a74a6bc402..9f5bf1ffa12 100644
--- a/llvm/lib/Support/Host.cpp
+++ b/llvm/lib/Support/Host.cpp
@@ -903,11 +903,11 @@ static void getAvailableFeatures(unsigned ECX, unsigned EDX, unsigned MaxLeaf,
auto setFeature = [&](unsigned F) {
if (F < 32)
- Features |= 1 << F;
+ Features |= 1U << (F & 0x1f);
else if (F < 64)
- Features2 |= 1 << (F - 32);
+ Features2 |= 1U << ((F - 32) & 0x1f);
else if (F < 96)
- Features3 |= 1 << (F - 64);
+ Features3 |= 1U << ((F - 64) & 0x1f);
else
llvm_unreachable("Unexpected FeatureBit");
};
OpenPOWER on IntegriCloud