44 virtual void arraycopy_epilogue(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
45 Register src, Register dst, Register count) {}
46
47 virtual void load_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
48 Register dst, Address src, Register tmp1, Register tmp_thread);
49 virtual void store_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
50 Address dst, Register val, Register tmp1, Register tmp2);
51
52 #ifndef _LP64
53 virtual void obj_equals(MacroAssembler* masm,
54 Address obj1, jobject obj2);
55 virtual void obj_equals(MacroAssembler* masm,
56 Register obj1, jobject obj2);
57 #endif
58
59 virtual void obj_equals(MacroAssembler* masm,
60 Register obj1, Register obj2);
61 virtual void obj_equals(MacroAssembler* masm,
62 Register obj1, Address obj2);
63
64 // Support for jniFastGetField to try resolving a jobject/jweak in native
65 virtual void try_resolve_jobject_in_native(MacroAssembler* masm, Register jni_env,
66 Register obj, Register tmp, Label& slowpath);
67
68 virtual void tlab_allocate(MacroAssembler* masm,
69 Register thread, Register obj,
70 Register var_size_in_bytes,
71 int con_size_in_bytes,
72 Register t1, Register t2,
73 Label& slow_case);
74 virtual void eden_allocate(MacroAssembler* masm,
75 Register thread, Register obj,
76 Register var_size_in_bytes,
77 int con_size_in_bytes,
78 Register t1,
79 Label& slow_case);
80
81 virtual void barrier_stubs_init() {}
82 };
83
|
44 virtual void arraycopy_epilogue(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
45 Register src, Register dst, Register count) {}
46
47 virtual void load_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
48 Register dst, Address src, Register tmp1, Register tmp_thread);
49 virtual void store_at(MacroAssembler* masm, DecoratorSet decorators, BasicType type,
50 Address dst, Register val, Register tmp1, Register tmp2);
51
52 #ifndef _LP64
53 virtual void obj_equals(MacroAssembler* masm,
54 Address obj1, jobject obj2);
55 virtual void obj_equals(MacroAssembler* masm,
56 Register obj1, jobject obj2);
57 #endif
58
59 virtual void obj_equals(MacroAssembler* masm,
60 Register obj1, Register obj2);
61 virtual void obj_equals(MacroAssembler* masm,
62 Register obj1, Address obj2);
63
64 virtual void resolve_for_read(MacroAssembler* masm, DecoratorSet decorators, Register obj) {
65 // Default implementation does not need to do anything.
66 }
67
68 virtual void resolve_for_write(MacroAssembler* masm, DecoratorSet decorators, Register obj) {
69 // Default implementation does not need to do anything.
70 }
71
72 // Support for jniFastGetField to try resolving a jobject/jweak in native
73 virtual void try_resolve_jobject_in_native(MacroAssembler* masm, Register jni_env,
74 Register obj, Register tmp, Label& slowpath);
75
76 virtual void tlab_allocate(MacroAssembler* masm,
77 Register thread, Register obj,
78 Register var_size_in_bytes,
79 int con_size_in_bytes,
80 Register t1, Register t2,
81 Label& slow_case);
82 virtual void eden_allocate(MacroAssembler* masm,
83 Register thread, Register obj,
84 Register var_size_in_bytes,
85 int con_size_in_bytes,
86 Register t1,
87 Label& slow_case);
88
89 virtual void barrier_stubs_init() {}
90 };
91
|