diff options
Diffstat (limited to 'deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc')
-rw-r--r-- | deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc b/deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc index 72770779b9..78be35552e 100644 --- a/deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc +++ b/deps/v8/src/regexp/arm/regexp-macro-assembler-arm.cc @@ -702,10 +702,9 @@ Handle<HeapObject> RegExpMacroAssemblerARM::GetCode(Handle<String> source) { // Start new stack frame. // Store link register in existing stack-cell. // Order here should correspond to order of offset constants in header file. - RegList registers_to_retain = r4.bit() | r5.bit() | r6.bit() | - r7.bit() | r8.bit() | r9.bit() | r10.bit() | fp.bit(); - RegList argument_registers = r0.bit() | r1.bit() | r2.bit() | r3.bit(); - __ stm(db_w, sp, argument_registers | registers_to_retain | lr.bit()); + RegList registers_to_retain = {r4, r5, r6, r7, r8, r9, r10, fp}; + RegList argument_registers = {r0, r1, r2, r3}; + __ stm(db_w, sp, argument_registers | registers_to_retain | lr); // Set frame pointer in space for it if this is not a direct call // from generated code. __ add(frame_pointer(), sp, Operand(4 * kPointerSize)); @@ -922,7 +921,7 @@ Handle<HeapObject> RegExpMacroAssemblerARM::GetCode(Handle<String> source) { // Skip sp past regexp registers and local variables.. __ mov(sp, frame_pointer()); // Restore registers r4..r11 and return (restoring lr to pc). - __ ldm(ia_w, sp, registers_to_retain | pc.bit()); + __ ldm(ia_w, sp, registers_to_retain | pc); // Backtrack code (branch target for conditional backtracks). if (backtrack_label_.is_linked()) { |