Index: src/a64/code-stubs-a64.cc |
diff --git a/src/a64/code-stubs-a64.cc b/src/a64/code-stubs-a64.cc |
index 50b8bb2852e042b74ff1efbebfe95736de92a0a5..bf6ab321b5939b3a25b2c3e39d8cce6094c0f650 100644 |
--- a/src/a64/code-stubs-a64.cc |
+++ b/src/a64/code-stubs-a64.cc |
@@ -523,11 +523,14 @@ void HydrogenCodeStub::GenerateLightweightMiss(MacroAssembler* masm) { |
FrameScope scope(masm, StackFrame::INTERNAL); |
ASSERT((descriptor->register_param_count_ == 0) || |
x0.Is(descriptor->register_params_[param_count - 1])); |
+ |
// Push arguments |
- // TODO(jbramley): Try to push these in blocks. |
+ MacroAssembler::PushPopQueue queue(masm); |
for (int i = 0; i < param_count; ++i) { |
- __ Push(descriptor->register_params_[i]); |
+ queue.Queue(descriptor->register_params_[i]); |
} |
+ queue.PushQueued(); |
+ |
ExternalReference miss = descriptor->miss_handler(); |
__ CallExternalReference(miss, descriptor->register_param_count_); |
} |