< prev index next >

src/hotspot/cpu/x86/templateInterpreterGenerator_x86_64.cpp

Print this page

        

*** 336,345 **** --- 336,366 ---- // // Various method entries // + address TemplateInterpreterGenerator::generate_bit_entry(AbstractInterpreter::MethodKind kind) { + address entry = __ pc(); + + const Register bits = c_rarg0; + const Register index = c_rarg1; + + __ movptr(bits, Address(rsp, 2 * wordSize)); + __ movl(index, Address(rsp, 1 * wordSize)); + + if (kind == Interpreter::java_lang_System_setBit) + __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, StubRoutines::setBit()))); + else + __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, StubRoutines::clrBit()))); + + __ pop(rax); + __ mov(rsp, r13); + __ jmp(rax); + + return entry; + } + address TemplateInterpreterGenerator::generate_math_entry(AbstractInterpreter::MethodKind kind) { // rbx,: Method* // rcx: scratrch // r13: sender sp
< prev index next >