< prev index next >

src/cpu/x86/vm/templateInterpreterGenerator_x86_32.cpp

Print this page

        

*** 340,359 **** --- 340,361 ---- // stack: [ ret adr ] <-- rsp // [ lo(arg) ] // [ hi(arg) ] // if (kind == Interpreter::java_lang_math_fmaD) { + assert(UseFMA, "Needs FMA instructions support."); __ movdbl(xmm2, Address(rsp, 5 * wordSize)); __ movdbl(xmm1, Address(rsp, 3 * wordSize)); __ movdbl(xmm0, Address(rsp, 1 * wordSize)); __ fmad(xmm0, xmm1, xmm2, xmm0); __ pop(rdi); // get return address __ mov(rsp, rsi); // set sp to sender sp __ jmp(rdi); return entry_point; } else if (kind == Interpreter::java_lang_math_fmaF) { + assert(UseFMA, "Needs FMA instructions support."); __ movflt(xmm2, Address(rsp, 3 * wordSize)); __ movflt(xmm1, Address(rsp, 2 * wordSize)); __ movflt(xmm0, Address(rsp, 1 * wordSize)); __ fmaf(xmm0, xmm1, xmm2, xmm0); __ pop(rdi); // get return address
< prev index next >