mirror of
https://github.com/dart-lang/sdk
synced 2024-09-22 21:13:52 +00:00
Fix Bigint_rsh on mips (was obviously not properly tested).
Review URL: https://codereview.chromium.org//1124553006 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45522 260f80e4-7a28-3924-810f-c04153c831b5
This commit is contained in:
parent
9d0987d1e7
commit
a2f43064dc
|
@ -868,9 +868,12 @@ void Intrinsifier::Bigint_rsh(Assembler* assembler) {
|
|||
// T2 = 32 - T3
|
||||
__ subu(T2, ZR, T3);
|
||||
__ addiu(T2, T2, Immediate(32));
|
||||
// T1 = x_digits[n ~/ _DIGIT_BITS] >> (n % _DIGIT_BITS)
|
||||
__ lw(T1, Address(V0, 0));
|
||||
__ addiu(V0, V0, Immediate(Bigint::kBytesPerDigit));
|
||||
Label loop_exit;
|
||||
__ beq(V1, T6, &loop_exit);
|
||||
__ delay_slot()->mov(T1, ZR);
|
||||
__ delay_slot()->srlv(T1, T1, T3);
|
||||
Label loop;
|
||||
__ Bind(&loop);
|
||||
__ lw(T0, Address(V0, 0));
|
||||
|
|
Loading…
Reference in a new issue