Mercurial > hg > graal-jvmci-8
comparison src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp @ 11127:980532a806a5
8016697: Use stubs to implement safefetch
Summary: Implement Safefetch as stub routines. This reduces compiler and os dependencies.
Reviewed-by: twisti, kvn
author | goetz |
---|---|
date | Thu, 20 Jun 2013 15:02:05 +0200 |
parents | 746b070f5022 |
children | af21010d1062 |
comparison
equal
deleted
inserted
replaced
11088:ea4d24c1e0c6 | 11127:980532a806a5 |
---|---|
364 return NULL; | 364 return NULL; |
365 } | 365 } |
366 | 366 |
367 // Utility functions | 367 // Utility functions |
368 | 368 |
369 extern "C" void Fetch32PFI(); | |
370 extern "C" void Fetch32Resume(); | |
371 extern "C" void FetchNPFI(); | |
372 extern "C" void FetchNResume(); | |
373 | |
374 inline static bool checkPrefetch(sigcontext* uc, address pc) { | 369 inline static bool checkPrefetch(sigcontext* uc, address pc) { |
375 if (pc == (address) Fetch32PFI) { | 370 if (StubRoutines::is_safefetch_fault(pc)) { |
376 set_cont_address(uc, address(Fetch32Resume)); | 371 set_cont_address(uc, address(StubRoutines::continuation_for_safefetch_fault(pc))); |
377 return true; | |
378 } | |
379 if (pc == (address) FetchNPFI) { | |
380 set_cont_address(uc, address(FetchNResume)); | |
381 return true; | 372 return true; |
382 } | 373 } |
383 return false; | 374 return false; |
384 } | 375 } |
385 | 376 |