231
232 // code emission
233 void do_ArithmeticOp_Long (ArithmeticOp* x);
234 void do_ArithmeticOp_Int (ArithmeticOp* x);
235 void do_ArithmeticOp_FPU (ArithmeticOp* x);
236
237 // platform dependent
238 LIR_Opr getThreadPointer();
239
240 void do_RegisterFinalizer(Intrinsic* x);
241 void do_isInstance(Intrinsic* x);
242 void do_getClass(Intrinsic* x);
243 void do_currentThread(Intrinsic* x);
244 void do_MathIntrinsic(Intrinsic* x);
245 void do_ArrayCopy(Intrinsic* x);
246 void do_CompareAndSwap(Intrinsic* x, ValueType* type);
247 void do_NIOCheckIndex(Intrinsic* x);
248 void do_FPIntrinsics(Intrinsic* x);
249 void do_Reference_get(Intrinsic* x);
250 void do_update_CRC32(Intrinsic* x);
251
252 void do_UnsafePrefetch(UnsafePrefetch* x, bool is_store);
253
254 LIR_Opr call_runtime(BasicTypeArray* signature, LIRItemList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
255 LIR_Opr call_runtime(BasicTypeArray* signature, LIR_OprList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
256
257 // convenience functions
258 LIR_Opr call_runtime(Value arg1, address entry, ValueType* result_type, CodeEmitInfo* info);
259 LIR_Opr call_runtime(Value arg1, Value arg2, address entry, ValueType* result_type, CodeEmitInfo* info);
260
261 // GC Barriers
262
263 // generic interface
264
265 void pre_barrier(LIR_Opr addr_opr, LIR_Opr pre_val, bool do_load, bool patch, CodeEmitInfo* info);
266 void post_barrier(LIR_OprDesc* addr, LIR_OprDesc* new_val);
267
268 // specific implementations
269 // pre barriers
270
|
231
232 // code emission
233 void do_ArithmeticOp_Long (ArithmeticOp* x);
234 void do_ArithmeticOp_Int (ArithmeticOp* x);
235 void do_ArithmeticOp_FPU (ArithmeticOp* x);
236
237 // platform dependent
238 LIR_Opr getThreadPointer();
239
240 void do_RegisterFinalizer(Intrinsic* x);
241 void do_isInstance(Intrinsic* x);
242 void do_getClass(Intrinsic* x);
243 void do_currentThread(Intrinsic* x);
244 void do_MathIntrinsic(Intrinsic* x);
245 void do_ArrayCopy(Intrinsic* x);
246 void do_CompareAndSwap(Intrinsic* x, ValueType* type);
247 void do_NIOCheckIndex(Intrinsic* x);
248 void do_FPIntrinsics(Intrinsic* x);
249 void do_Reference_get(Intrinsic* x);
250 void do_update_CRC32(Intrinsic* x);
251 void do_CryptoIntrinsic(Intrinsic* x);
252
253 void do_UnsafePrefetch(UnsafePrefetch* x, bool is_store);
254
255 LIR_Opr call_runtime(BasicTypeArray* signature, LIRItemList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
256 LIR_Opr call_runtime(BasicTypeArray* signature, LIR_OprList* args, address entry, ValueType* result_type, CodeEmitInfo* info);
257
258 // convenience functions
259 LIR_Opr call_runtime(Value arg1, address entry, ValueType* result_type, CodeEmitInfo* info);
260 LIR_Opr call_runtime(Value arg1, Value arg2, address entry, ValueType* result_type, CodeEmitInfo* info);
261
262 // GC Barriers
263
264 // generic interface
265
266 void pre_barrier(LIR_Opr addr_opr, LIR_Opr pre_val, bool do_load, bool patch, CodeEmitInfo* info);
267 void post_barrier(LIR_OprDesc* addr, LIR_OprDesc* new_val);
268
269 // specific implementations
270 // pre barriers
271
|