| Index: src/arm/macro-assembler-arm.h
|
| diff --git a/src/arm/macro-assembler-arm.h b/src/arm/macro-assembler-arm.h
|
| index d4187857402854045c378799b01618e518acdb16..d0f770499c0ad348b1e18e224015e7aac86bb2f7 100644
|
| --- a/src/arm/macro-assembler-arm.h
|
| +++ b/src/arm/macro-assembler-arm.h
|
| @@ -608,6 +608,9 @@ class MacroAssembler: public Assembler {
|
|
|
| void LoadContext(Register dst, int context_chain_length);
|
|
|
| + // Load the global proxy from the current context.
|
| + void LoadGlobalProxy(Register dst);
|
| +
|
| // Conditionally load the cached Array transitioned map of type
|
| // transitioned_kind from the native context if the map in register
|
| // map_in_out is the cached Array map in the native context of
|
| @@ -947,7 +950,23 @@ class MacroAssembler: public Assembler {
|
| // Compare the object in a register to a value from the root list.
|
| // Uses the ip register as scratch.
|
| void CompareRoot(Register obj, Heap::RootListIndex index);
|
| + void PushRoot(Heap::RootListIndex index) {
|
| + LoadRoot(ip, index);
|
| + Push(ip);
|
| + }
|
| +
|
| + // Compare the object in a register to a value and jump if they are equal.
|
| + void JumpIfRoot(Register with, Heap::RootListIndex index, Label* if_equal) {
|
| + CompareRoot(with, index);
|
| + b(eq, if_equal);
|
| + }
|
|
|
| + // Compare the object in a register to a value and jump if they are not equal.
|
| + void JumpIfNotRoot(Register with, Heap::RootListIndex index,
|
| + Label* if_not_equal) {
|
| + CompareRoot(with, index);
|
| + b(ne, if_not_equal);
|
| + }
|
|
|
| // Load and check the instance type of an object for being a string.
|
| // Loads the type into the second argument register.
|
| @@ -1288,6 +1307,9 @@ class MacroAssembler: public Assembler {
|
| // Abort execution if argument is not a name, enabled via --debug-code.
|
| void AssertName(Register object);
|
|
|
| + // Abort execution if argument is not a JSFunction, enabled via --debug-code.
|
| + void AssertFunction(Register object);
|
| +
|
| // Abort execution if argument is not undefined or an AllocationSite, enabled
|
| // via --debug-code.
|
| void AssertUndefinedOrAllocationSite(Register object, Register scratch);
|
|
|