equal
deleted
inserted
replaced
64 } |
64 } |
65 default: Unimplemented(); |
65 default: Unimplemented(); |
66 } |
66 } |
67 } |
67 } |
68 |
68 |
69 void BarrierSetAssembler::try_resolve_jobject_in_native(MacroAssembler* masm, Register robj, Register tmp, Label& slowpath) { |
69 void BarrierSetAssembler::try_resolve_jobject_in_native(MacroAssembler* masm, Register jni_env, |
|
70 Register obj, Register tmp, Label& slowpath) { |
70 // If mask changes we need to ensure that the inverse is still encodable as an immediate |
71 // If mask changes we need to ensure that the inverse is still encodable as an immediate |
71 STATIC_ASSERT(JNIHandles::weak_tag_mask == 1); |
72 STATIC_ASSERT(JNIHandles::weak_tag_mask == 1); |
72 __ andr(robj, robj, ~JNIHandles::weak_tag_mask); |
73 __ andr(obj, obj, ~JNIHandles::weak_tag_mask); |
73 __ ldr(robj, Address(robj, 0)); // *obj |
74 __ ldr(obj, Address(obj, 0)); // *obj |
74 } |
75 } |