hotspot/src/cpu/zero/vm/stubGenerator_zero.cpp
changeset 30118 dadad0daaab4
parent 30110 20d4dc1409a6
child 30129 351788433103
equal deleted inserted replaced
30117:cce2cdac56dc 30118:dadad0daaab4
   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   // NYI: SafeFetch for Zero isn't actually safe.
       
   180   static int SafeFetch32(int *adr, int errValue) {
       
   181     int value = errValue;
       
   182     value = *adr;
       
   183     return value;
       
   184   }
       
   185 
       
   186   static intptr_t SafeFetchN(intptr_t *adr, intptr_t errValue) {
       
   187     intptr_t value = errValue;
       
   188     value = *adr;
       
   189     return value;
       
   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
   226 
   239 
   227     // arraycopy stubs used by compilers
   240     // arraycopy stubs used by compilers
   228     generate_arraycopy_stubs();
   241     generate_arraycopy_stubs();
   229 
   242 
   230     // Safefetch stubs.
   243     // Safefetch stubs.
   231     StubRoutines::_safefetch32_entry = NULL;
   244     StubRoutines::_safefetch32_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetch32);
   232     StubRoutines::_safefetch32_fault_pc = NULL;
   245     StubRoutines::_safefetch32_fault_pc = NULL;
   233     StubRoutines::_safefetch32_continuation_pc = NULL;
   246     StubRoutines::_safefetch32_continuation_pc = NULL;
   234 
   247 
   235     StubRoutines::_safefetchN_entry = NULL;
   248     StubRoutines::_safefetchN_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetchN);
   236     StubRoutines::_safefetchN_fault_pc = NULL;
   249     StubRoutines::_safefetchN_fault_pc = NULL;
   237     StubRoutines::_safefetchN_continuation_pc = NULL;
   250     StubRoutines::_safefetchN_continuation_pc = NULL;
   238   }
   251   }
   239 
   252 
   240  public:
   253  public: