diff options
-rw-r--r-- | src/arch/arm/isa/insts/sve.isa | 16 | ||||
-rw-r--r-- | src/base/bitfield.hh | 2 |
2 files changed, 13 insertions, 5 deletions
diff --git a/src/arch/arm/isa/insts/sve.isa b/src/arch/arm/isa/insts/sve.isa index 647ceafe3..e5e9e2450 100644 --- a/src/arch/arm/isa/insts/sve.isa +++ b/src/arch/arm/isa/insts/sve.isa @@ -4278,7 +4278,9 @@ let {{ bool negSrc1 = (srcElem1 < 0); bool negSrc2 = (srcElem2 < 0); if ((negDest != negSrc1) && (negSrc1 == negSrc2)) { - destElem = (Element)1 << (sizeof(Element) * 8 - 1); + destElem = static_cast<Element>( + (Element)1 << (sizeof(Element) * 8 - 1) + ); if (negDest) destElem -= 1; } @@ -4293,7 +4295,9 @@ let {{ bool negSrc = (srcElem1 < 0); bool posCount = ((count * imm) >= 0); if ((negDest != negSrc) && (negSrc == posCount)) { - destElem = (%(dstType)s)1 << (sizeof(%(dstType)s) * 8 - 1); + destElem = static_cast<%(dstType)s>( + (%(dstType)s)1 << (sizeof(%(dstType)s) * 8 - 1) + ); if (negDest) destElem -= 1; } @@ -4350,7 +4354,9 @@ let {{ bool negSrc = (srcElem1 < 0); bool negCount = ((count * imm) < 0); if ((negDest != negSrc) && (negSrc == negCount)) { - destElem = (%(dstType)s)1 << (sizeof(%(dstType)s) * 8 - 1); + destElem = static_cast<%(dstType)s>( + (%(dstType)s)1 << (sizeof(%(dstType)s) * 8 - 1) + ); if (negDest) destElem -= 1; } @@ -4407,7 +4413,9 @@ let {{ bool negSrc1 = (srcElem1 < 0); bool posSrc2 = (srcElem2 >= 0); if ((negDest != negSrc1) && (negSrc1 == posSrc2)) { - destElem = (Element)1 << (sizeof(Element) * 8 - 1); + destElem = static_cast<Element>( + (Element)1 << (sizeof(Element) * 8 - 1) + ); if (negDest) destElem -= 1; } diff --git a/src/base/bitfield.hh b/src/base/bitfield.hh index d696715b3..ec1ffce50 100644 --- a/src/base/bitfield.hh +++ b/src/base/bitfield.hh @@ -182,7 +182,7 @@ reverseBits(T val, std::size_t size = sizeof(T)) assert(size <= sizeof(T)); T output = 0; - for (auto byte = 0; byte < size; byte++, val >>= 8) { + for (auto byte = 0; byte < size; byte++, val = static_cast<T>(val >> 8)) { output = (output << 8) | reverseLookUpTable[val & 0xFF]; } |