comparison src/cpu/ppc/vm/vtableStubs_ppc_64.cpp @ 14445:67fa91961822

8029940: PPC64 (part 122): C2 compiler port Reviewed-by: kvn
author goetz
date Wed, 11 Dec 2013 00:06:11 +0100
parents b0133e4187d3
children 71a71b0bc844
comparison
equal deleted inserted replaced
14444:492e67693373 14445:67fa91961822
111 #endif 111 #endif
112 112
113 // If the vtable entry is null, the method is abstract. 113 // If the vtable entry is null, the method is abstract.
114 address ame_addr = __ pc(); // ame = abstract method error 114 address ame_addr = __ pc(); // ame = abstract method error
115 115
116 __ ld_with_trap_null_check(R12_scratch2, in_bytes(Method::from_compiled_offset()), R19_method); 116 __ load_with_trap_null_check(R12_scratch2, in_bytes(Method::from_compiled_offset()), R19_method);
117 __ mtctr(R12_scratch2); 117 __ mtctr(R12_scratch2);
118 __ bctr(); 118 __ bctr();
119 masm->flush(); 119 masm->flush();
120 120
121 guarantee(__ pc() <= s->code_end(), "overflowed buffer"); 121 guarantee(__ pc() <= s->code_end(), "overflowed buffer");
145 145
146 assert(VtableStub::receiver_location() == R3_ARG1->as_VMReg(), "receiver expected in R3_ARG1"); 146 assert(VtableStub::receiver_location() == R3_ARG1->as_VMReg(), "receiver expected in R3_ARG1");
147 147
148 // Entry arguments: 148 // Entry arguments:
149 // R19_method: Interface 149 // R19_method: Interface
150 // R3_ARG1: Receiver 150 // R3_ARG1: Receiver
151 // 151 //
152 152
153 const Register rcvr_klass = R11_scratch1; 153 const Register rcvr_klass = R11_scratch1;
154 const Register vtable_len = R12_scratch2; 154 const Register vtable_len = R12_scratch2;
155 const Register itable_entry_addr = R21_tmp1; 155 const Register itable_entry_addr = R21_tmp1;