Mercurial > hg > truffle
comparison src/cpu/zero/vm/stubGenerator_zero.cpp @ 12371:e32f2b195867
Merge
author | Christos Kotselidis <christos.kotselidis@oracle.com> |
---|---|
date | Fri, 11 Oct 2013 17:21:14 +0200 |
parents | c54a3122f9c8 |
children | de6a9e811145 |
comparison
equal
deleted
inserted
replaced
12370:1e4d1c150ed5 | 12371:e32f2b195867 |
---|---|
174 StubRoutines::_oop_disjoint_arraycopy; | 174 StubRoutines::_oop_disjoint_arraycopy; |
175 StubRoutines::_arrayof_oop_arraycopy = | 175 StubRoutines::_arrayof_oop_arraycopy = |
176 StubRoutines::_oop_arraycopy; | 176 StubRoutines::_oop_arraycopy; |
177 } | 177 } |
178 | 178 |
179 static int SafeFetch32(int *adr, int errValue) { | |
180 int value = errValue; | |
181 value = *adr; | |
182 return value; | |
183 } | |
184 | |
185 static intptr_t SafeFetchN(intptr_t *adr, intptr_t errValue) { | |
186 intptr_t value = errValue; | |
187 value = *adr; | |
188 return value; | |
189 } | |
190 | |
191 | |
179 void generate_initial() { | 192 void generate_initial() { |
180 // Generates all stubs and initializes the entry points | 193 // Generates all stubs and initializes the entry points |
181 | 194 |
182 // entry points that exist in all platforms Note: This is code | 195 // entry points that exist in all platforms Note: This is code |
183 // that could be shared among different platforms - however the | 196 // that could be shared among different platforms - however the |
223 StubRoutines::_verify_oop_subroutine_entry = | 236 StubRoutines::_verify_oop_subroutine_entry = |
224 ShouldNotCallThisStub(); | 237 ShouldNotCallThisStub(); |
225 | 238 |
226 // arraycopy stubs used by compilers | 239 // arraycopy stubs used by compilers |
227 generate_arraycopy_stubs(); | 240 generate_arraycopy_stubs(); |
241 | |
242 // Safefetch stubs. | |
243 StubRoutines::_safefetch32_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetch32); | |
244 StubRoutines::_safefetch32_fault_pc = NULL; | |
245 StubRoutines::_safefetch32_continuation_pc = NULL; | |
246 | |
247 StubRoutines::_safefetchN_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetchN); | |
248 StubRoutines::_safefetchN_fault_pc = NULL; | |
249 StubRoutines::_safefetchN_continuation_pc = NULL; | |
228 } | 250 } |
229 | 251 |
230 public: | 252 public: |
231 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) { | 253 StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) { |
232 if (all) { | 254 if (all) { |