Mercurial > hg > truffle
comparison src/cpu/x86/vm/templateInterpreter_x86_64.cpp @ 1295:3cf667df43ef
6919934: JSR 292 needs to support x86 C1
Summary: This implements JSR 292 support for C1 x86.
Reviewed-by: never, jrose, kvn
author | twisti |
---|---|
date | Tue, 09 Mar 2010 20:16:19 +0100 |
parents | ddb7834449d0 |
children | 2338d41fbd81 |
comparison
equal
deleted
inserted
replaced
1293:51db1e4b379d | 1295:3cf667df43ef |
---|---|
1739 // rbp: ebp of caller | 1739 // rbp: ebp of caller |
1740 __ push(rax); // save exception | 1740 __ push(rax); // save exception |
1741 __ push(rdx); // save return address | 1741 __ push(rdx); // save return address |
1742 __ super_call_VM_leaf(CAST_FROM_FN_PTR(address, | 1742 __ super_call_VM_leaf(CAST_FROM_FN_PTR(address, |
1743 SharedRuntime::exception_handler_for_return_address), | 1743 SharedRuntime::exception_handler_for_return_address), |
1744 rdx); | 1744 r15_thread, rdx); |
1745 __ mov(rbx, rax); // save exception handler | 1745 __ mov(rbx, rax); // save exception handler |
1746 __ pop(rdx); // restore return address | 1746 __ pop(rdx); // restore return address |
1747 __ pop(rax); // restore exception | 1747 __ pop(rax); // restore exception |
1748 // Note that an "issuing PC" is actually the next PC after the call | 1748 // Note that an "issuing PC" is actually the next PC after the call |
1749 __ jmp(rbx); // jump to exception | 1749 __ jmp(rbx); // jump to exception |