case TargetOpcode::G_BSWAP: {
Register SrcReg = MI.getOperand(1).getReg();
computeKnownBitsImpl(SrcReg, Known, DemandedElts, Depth + 1);
- Known.byteSwap();
+ Known = Known.byteSwap();
break;
}
case TargetOpcode::G_BITREVERSE: {
Register SrcReg = MI.getOperand(1).getReg();
computeKnownBitsImpl(SrcReg, Known, DemandedElts, Depth + 1);
- Known.reverseBits();
+ Known = Known.reverseBits();
break;
}
case TargetOpcode::G_UBFX: {
if (!TM)
return;
- const uint32_t TestVal = 0x11223344;
+ const uint32_t ByteSwappedVal = 0x44332211;
+ const uint32_t BitSwappedVal = 0x22cc4488;
Register CopyBSwap = Copies[Copies.size() - 2];
Register CopyBitReverse = Copies[Copies.size() - 1];
KnownBits BSwapKnown = Info.getKnownBits(CopyBSwap);
EXPECT_EQ(32u, BSwapKnown.getBitWidth());
- EXPECT_EQ(TestVal, BSwapKnown.One.getZExtValue());
- EXPECT_EQ(~TestVal, BSwapKnown.Zero.getZExtValue());
+ EXPECT_EQ(ByteSwappedVal, BSwapKnown.One.getZExtValue());
+ EXPECT_EQ(~ByteSwappedVal, BSwapKnown.Zero.getZExtValue());
KnownBits BitReverseKnown = Info.getKnownBits(CopyBitReverse);
EXPECT_EQ(32u, BitReverseKnown.getBitWidth());
- EXPECT_EQ(TestVal, BitReverseKnown.One.getZExtValue());
- EXPECT_EQ(~TestVal, BitReverseKnown.Zero.getZExtValue());
+ EXPECT_EQ(BitSwappedVal, BitReverseKnown.One.getZExtValue());
+ EXPECT_EQ(~BitSwappedVal, BitReverseKnown.Zero.getZExtValue());
}
TEST_F(AArch64GISelMITest, TestKnownBitsUMAX) {
if (!TM)
return;
- const uint32_t TestVal = 0x11223344;
+ const uint32_t ByteSwappedVal = 0x44332211;
+ const uint32_t BitSwappedVal = 0x22cc4488;
Register CopyBSwap = Copies[Copies.size() - 2];
Register CopyBitReverse = Copies[Copies.size() - 1];
KnownBits BSwapKnown = Info.getKnownBits(CopyBSwap);
EXPECT_EQ(32u, BSwapKnown.getBitWidth());
- EXPECT_EQ(TestVal, BSwapKnown.One.getZExtValue());
- EXPECT_EQ(~TestVal, BSwapKnown.Zero.getZExtValue());
+ EXPECT_EQ(ByteSwappedVal, BSwapKnown.One.getZExtValue());
+ EXPECT_EQ(~ByteSwappedVal, BSwapKnown.Zero.getZExtValue());
KnownBits BitReverseKnown = Info.getKnownBits(CopyBitReverse);
EXPECT_EQ(32u, BitReverseKnown.getBitWidth());
- EXPECT_EQ(TestVal, BitReverseKnown.One.getZExtValue());
- EXPECT_EQ(~TestVal, BitReverseKnown.Zero.getZExtValue());
+ EXPECT_EQ(BitSwappedVal, BitReverseKnown.One.getZExtValue());
+ EXPECT_EQ(~BitSwappedVal, BitReverseKnown.Zero.getZExtValue());
}
TEST_F(AArch64GISelMITest, TestKnownBitsVectorUMAX) {