diff options
Diffstat (limited to 'lib/Support/APInt.cpp')
-rw-r--r-- | lib/Support/APInt.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Support/APInt.cpp b/lib/Support/APInt.cpp index 3501774967..c8c3c24627 100644 --- a/lib/Support/APInt.cpp +++ b/lib/Support/APInt.cpp @@ -1249,6 +1249,8 @@ APInt APInt::shl(uint32_t shiftAmt) const { } APInt APInt::rotl(uint32_t rotateAmt) const { + if (rotateAmt == 0) + return *this; // Don't get too fancy, just use existing shift/or facilities APInt hi(*this); APInt lo(*this); @@ -1258,6 +1260,8 @@ APInt APInt::rotl(uint32_t rotateAmt) const { } APInt APInt::rotr(uint32_t rotateAmt) const { + if (rotateAmt == 0) + return *this; // Don't get too fancy, just use existing shift/or facilities APInt hi(*this); APInt lo(*this); |