3150 |
3150 |
3151 |
3151 |
3152 RegisterOrConstant MacroAssembler::argument_offset(RegisterOrConstant arg_slot, |
3152 RegisterOrConstant MacroAssembler::argument_offset(RegisterOrConstant arg_slot, |
3153 int extra_slot_offset) { |
3153 int extra_slot_offset) { |
3154 // cf. TemplateTable::prepare_invoke(), if (load_receiver). |
3154 // cf. TemplateTable::prepare_invoke(), if (load_receiver). |
3155 int stackElementSize = Interpreter::stackElementSize(); |
3155 int stackElementSize = Interpreter::stackElementSize; |
3156 int offset = extra_slot_offset * stackElementSize; |
3156 int offset = extra_slot_offset * stackElementSize; |
3157 if (arg_slot.is_constant()) { |
3157 if (arg_slot.is_constant()) { |
3158 offset += arg_slot.as_constant() * stackElementSize; |
3158 offset += arg_slot.as_constant() * stackElementSize; |
3159 return offset; |
3159 return offset; |
3160 } else { |
3160 } else { |