| Index: src/ia32/macro-assembler-ia32.h
|
| ===================================================================
|
| --- src/ia32/macro-assembler-ia32.h (revision 7031)
|
| +++ src/ia32/macro-assembler-ia32.h (working copy)
|
| @@ -143,7 +143,11 @@
|
| // Push and pop the registers that can hold pointers.
|
| void PushSafepointRegisters() { pushad(); }
|
| void PopSafepointRegisters() { popad(); }
|
| - static int SafepointRegisterStackIndex(int reg_code);
|
| + // Store the value in register/immediate src in the safepoint
|
| + // register stack slot for register dst.
|
| + void StoreToSafepointRegisterSlot(Register dst, Register src);
|
| + void StoreToSafepointRegisterSlot(Register dst, Immediate src);
|
| + void LoadFromSafepointRegisterSlot(Register dst, Register src);
|
|
|
| // ---------------------------------------------------------------------------
|
| // JavaScript invokes
|
| @@ -304,6 +308,11 @@
|
| // Unlink the stack handler on top of the stack from the try handler chain.
|
| void PopTryHandler();
|
|
|
| + // Activate the top handler in the try hander chain.
|
| + void Throw(Register value);
|
| +
|
| + void ThrowUncatchable(UncatchableExceptionType type, Register value);
|
| +
|
| // ---------------------------------------------------------------------------
|
| // Inline caching support
|
|
|
| @@ -662,6 +671,15 @@
|
| MUST_USE_RESULT MaybeObject* PopHandleScopeHelper(Register saved,
|
| Register scratch,
|
| bool gc_allowed);
|
| +
|
| +
|
| + // Compute memory operands for safepoint stack slots.
|
| + Operand SafepointRegisterSlot(Register reg);
|
| + static int SafepointRegisterStackIndex(int reg_code);
|
| +
|
| + // Needs access to SafepointRegisterStackIndex for optimized frame
|
| + // traversal.
|
| + friend class OptimizedFrame;
|
| };
|
|
|
|
|
|
|