equal
deleted
inserted
replaced
276 |
276 |
277 Label loop; |
277 Label loop; |
278 __ movptr(c_rarg2, parameters); // parameter pointer |
278 __ movptr(c_rarg2, parameters); // parameter pointer |
279 __ movl(c_rarg1, c_rarg3); // parameter counter is in c_rarg1 |
279 __ movl(c_rarg1, c_rarg3); // parameter counter is in c_rarg1 |
280 __ BIND(loop); |
280 __ BIND(loop); |
281 if (TaggedStackInterpreter) { |
|
282 __ movl(rax, Address(c_rarg2, 0)); // get tag |
|
283 __ addptr(c_rarg2, wordSize); // advance to next tag |
|
284 __ push(rax); // pass tag |
|
285 } |
|
286 __ movptr(rax, Address(c_rarg2, 0));// get parameter |
281 __ movptr(rax, Address(c_rarg2, 0));// get parameter |
287 __ addptr(c_rarg2, wordSize); // advance to next parameter |
282 __ addptr(c_rarg2, wordSize); // advance to next parameter |
288 __ decrementl(c_rarg1); // decrement counter |
283 __ decrementl(c_rarg1); // decrement counter |
289 __ push(rax); // pass parameter |
284 __ push(rax); // pass parameter |
290 __ jcc(Assembler::notZero, loop); |
285 __ jcc(Assembler::notZero, loop); |