Skip to content

Commit 4fa616b

Browse files
[vm] Fix code patcher assertions for RISC-V.
TEST=ci Change-Id: I313d2bb7f03c9ce8fd9fe423e732b34a5a2420e3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/393584 Reviewed-by: Alexander Aprelev <[email protected]>
1 parent 75e6a74 commit 4fa616b

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

runtime/vm/code_patcher_riscv.cc

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,15 @@ class PoolPointerCall : public ValueObject {
1919
ASSERT(*reinterpret_cast<uint16_t*>(end_ - 2) == 0x9082); // jalr ra
2020
uint32_t load_entry = LoadUnaligned(reinterpret_cast<uint32_t*>(end_ - 6));
2121
#if XLEN == 32
22-
ASSERT((load_entry == 0x00362083) || // lw ra, entry(code)
22+
ASSERT((load_entry == 0x0036a083) || // lw ra, entry(tmp)
23+
(load_entry == 0x00b6a083) || // lw ra, unchecked_entry(tmp)
24+
(load_entry == 0x00362083) || // lw ra, entry(code)
2325
(load_entry == 0x00b62083)); // lw ra, unchecked_entry(code)
2426
#elif XLEN == 64
25-
ASSERT((load_entry == 0x00763083) || // ld ra, entry(code)
26-
(load_entry = 0x01763083)); // ld ra, unchecked_entry(code)
27+
ASSERT((load_entry == 0x0076b083) || // ld ra, entry(tmp)
28+
(load_entry == 0x0176b083) || // ld ra, unchecked_entry(tmp)
29+
(load_entry == 0x00763083) || // ld ra, entry(code)
30+
(load_entry == 0x01763083)); // ld ra, unchecked_entry(code)
2731
#endif
2832
InstructionPattern::DecodeLoadWordFromPool(end_ - 6, &reg_, &index_);
2933
}

0 commit comments

Comments
 (0)