Mercurial > hg > graal-compiler
comparison src/cpu/x86/vm/stubGenerator_x86_32.cpp @ 6275:957c266d8bc5
Merge with http://hg.openjdk.java.net/hsx/hsx24/hotspot/
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 21 Aug 2012 10:39:19 +0200 |
parents | 1c7c5be93e84 1d7922586cf6 |
children | e522a00b91aa |
comparison
equal
deleted
inserted
replaced
5891:fd8832ae511d | 6275:957c266d8bc5 |
---|---|
2134 | 2134 |
2135 __ fld_d(Address(rsp, 4)); | 2135 __ fld_d(Address(rsp, 4)); |
2136 __ trigfunc('t'); | 2136 __ trigfunc('t'); |
2137 __ ret(0); | 2137 __ ret(0); |
2138 } | 2138 } |
2139 | 2139 { |
2140 // The intrinsic version of these seem to return the same value as | 2140 StubCodeMark mark(this, "StubRoutines", "exp"); |
2141 // the strict version. | 2141 StubRoutines::_intrinsic_exp = (double (*)(double)) __ pc(); |
2142 StubRoutines::_intrinsic_exp = SharedRuntime::dexp; | 2142 |
2143 StubRoutines::_intrinsic_pow = SharedRuntime::dpow; | 2143 __ fld_d(Address(rsp, 4)); |
2144 __ exp_with_fallback(0); | |
2145 __ ret(0); | |
2146 } | |
2147 { | |
2148 StubCodeMark mark(this, "StubRoutines", "pow"); | |
2149 StubRoutines::_intrinsic_pow = (double (*)(double,double)) __ pc(); | |
2150 | |
2151 __ fld_d(Address(rsp, 12)); | |
2152 __ fld_d(Address(rsp, 4)); | |
2153 __ pow_with_fallback(0); | |
2154 __ ret(0); | |
2155 } | |
2144 } | 2156 } |
2145 | 2157 |
2146 public: | 2158 public: |
2147 // Information about frame layout at time of blocking runtime call. | 2159 // Information about frame layout at time of blocking runtime call. |
2148 // Note that we only have to preserve callee-saved registers since | 2160 // Note that we only have to preserve callee-saved registers since |
2313 CAST_FROM_FN_PTR(address, SharedRuntime::d2i)); | 2325 CAST_FROM_FN_PTR(address, SharedRuntime::d2i)); |
2314 StubRoutines::_d2l_wrapper = generate_d2i_wrapper(T_LONG, | 2326 StubRoutines::_d2l_wrapper = generate_d2i_wrapper(T_LONG, |
2315 CAST_FROM_FN_PTR(address, SharedRuntime::d2l)); | 2327 CAST_FROM_FN_PTR(address, SharedRuntime::d2l)); |
2316 | 2328 |
2317 // Build this early so it's available for the interpreter | 2329 // Build this early so it's available for the interpreter |
2318 StubRoutines::_throw_WrongMethodTypeException_entry = | |
2319 generate_throw_exception("WrongMethodTypeException throw_exception", | |
2320 CAST_FROM_FN_PTR(address, SharedRuntime::throw_WrongMethodTypeException), | |
2321 rax, rcx); | |
2322 | |
2323 // Build this early so it's available for the interpreter | |
2324 StubRoutines::_throw_StackOverflowError_entry = generate_throw_exception("StackOverflowError throw_exception", CAST_FROM_FN_PTR(address, SharedRuntime::throw_StackOverflowError)); | 2330 StubRoutines::_throw_StackOverflowError_entry = generate_throw_exception("StackOverflowError throw_exception", CAST_FROM_FN_PTR(address, SharedRuntime::throw_StackOverflowError)); |
2325 } | 2331 } |
2326 | 2332 |
2327 | 2333 |
2328 void generate_all() { | 2334 void generate_all() { |