Index: src/arm/macro-assembler-arm.h |
diff --git a/src/arm/macro-assembler-arm.h b/src/arm/macro-assembler-arm.h |
index 8eb97125eab14ddb0f7a12fa1a97d8341b2679bd..7d127b5e8781f6086ceaacc0c5c50ece65b8adf3 100644 |
--- a/src/arm/macro-assembler-arm.h |
+++ b/src/arm/macro-assembler-arm.h |
@@ -1273,6 +1273,15 @@ class MacroAssembler: public Assembler { |
Register descriptors, |
Register scratch); |
void EnumLength(Register dst, Register map); |
+ void NumberOfOwnDescriptors(Register dst, Register map); |
+ |
+ template<typename Field> |
+ void DecodeField(Register reg) { |
+ static const int shift = Field::kShift; |
+ static const int mask = (Field::kMask >> shift) << kSmiTagSize; |
+ mov(reg, Operand(reg, LSR, shift)); |
+ and_(reg, reg, Operand(mask)); |
+ } |
// Activation support. |
void EnterFrame(StackFrame::Type type); |