Mercurial > hg > graal-compiler
changeset 12012:196aa14f9f29
Merge
author | dholmes |
---|---|
date | Tue, 06 Aug 2013 21:06:19 -0700 |
parents | ca0165daa6ec (current diff) c54a3122f9c8 (diff) |
children | 195ff07bc7f6 |
files | |
diffstat | 4 files changed, 25 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/zero/vm/entryFrame_zero.hpp Tue Aug 06 16:33:59 2013 -0700 +++ b/src/cpu/zero/vm/entryFrame_zero.hpp Tue Aug 06 21:06:19 2013 -0700 @@ -58,8 +58,8 @@ JavaCallWrapper* call_wrapper, TRAPS); public: - JavaCallWrapper *call_wrapper() const { - return (JavaCallWrapper *) value_of_word(call_wrapper_off); + JavaCallWrapper **call_wrapper() const { + return (JavaCallWrapper **) addr_of_word(call_wrapper_off); } public:
--- a/src/cpu/zero/vm/frame_zero.inline.hpp Tue Aug 06 16:33:59 2013 -0700 +++ b/src/cpu/zero/vm/frame_zero.inline.hpp Tue Aug 06 21:06:19 2013 -0700 @@ -141,7 +141,7 @@ return fp(); } -inline JavaCallWrapper* frame::entry_frame_call_wrapper() const { +inline JavaCallWrapper** frame::entry_frame_call_wrapper_addr() const { return zero_entryframe()->call_wrapper(); }
--- a/src/cpu/zero/vm/stubGenerator_zero.cpp Tue Aug 06 16:33:59 2013 -0700 +++ b/src/cpu/zero/vm/stubGenerator_zero.cpp Tue Aug 06 21:06:19 2013 -0700 @@ -176,6 +176,19 @@ StubRoutines::_oop_arraycopy; } + static int SafeFetch32(int *adr, int errValue) { + int value = errValue; + value = *adr; + return value; + } + + static intptr_t SafeFetchN(intptr_t *adr, intptr_t errValue) { + intptr_t value = errValue; + value = *adr; + return value; + } + + void generate_initial() { // Generates all stubs and initializes the entry points @@ -225,6 +238,15 @@ // arraycopy stubs used by compilers generate_arraycopy_stubs(); + + // Safefetch stubs. + StubRoutines::_safefetch32_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetch32); + StubRoutines::_safefetch32_fault_pc = NULL; + StubRoutines::_safefetch32_continuation_pc = NULL; + + StubRoutines::_safefetchN_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetchN); + StubRoutines::_safefetchN_fault_pc = NULL; + StubRoutines::_safefetchN_continuation_pc = NULL; } public:
--- a/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Tue Aug 06 16:33:59 2013 -0700 +++ b/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Tue Aug 06 21:06:19 2013 -0700 @@ -410,16 +410,6 @@ int SpinPause() { } - int SafeFetch32(int *adr, int errValue) { - int value = errValue; - value = *adr; - return value; - } - intptr_t SafeFetchN(intptr_t *adr, intptr_t errValue) { - intptr_t value = errValue; - value = *adr; - return value; - } void _Copy_conjoint_jshorts_atomic(jshort* from, jshort* to, size_t count) { if (from > to) {