| Index: src/arm/macro-assembler-arm.cc
|
| ===================================================================
|
| --- src/arm/macro-assembler-arm.cc (revision 6703)
|
| +++ src/arm/macro-assembler-arm.cc (working copy)
|
| @@ -1150,7 +1150,8 @@
|
|
|
| // Calculate new top and bail out if new space is exhausted. Use result
|
| // to calculate the new top.
|
| - add(scratch2, result, Operand(obj_size_reg));
|
| + add(scratch2, result, Operand(obj_size_reg), SetCC);
|
| + b(cs, gc_required);
|
| cmp(scratch2, Operand(ip));
|
| b(hi, gc_required);
|
| str(scratch2, MemOperand(topaddr));
|
| @@ -1229,10 +1230,11 @@
|
| // to calculate the new top. Object size may be in words so a shift is
|
| // required to get the number of bytes.
|
| if ((flags & SIZE_IN_WORDS) != 0) {
|
| - add(scratch2, result, Operand(object_size, LSL, kPointerSizeLog2));
|
| + add(scratch2, result, Operand(object_size, LSL, kPointerSizeLog2), SetCC);
|
| } else {
|
| - add(scratch2, result, Operand(object_size));
|
| + add(scratch2, result, Operand(object_size), SetCC);
|
| }
|
| + b(cs, gc_required);
|
| cmp(scratch2, Operand(ip));
|
| b(hi, gc_required);
|
|
|
|
|