Mercurial > hg > graal-jvmci-8
diff src/cpu/ppc/vm/interpreter_ppc.cpp @ 23858:737b321e6f0e
8148487: PPC64: Better byte behavior
Reviewed-by: goetz, mdoerr
author | simonis |
---|---|
date | Wed, 27 Jan 2016 15:01:46 +0100 |
parents | 231481a06214 |
children | 7d1074c74d60 |
line wrap: on
line diff
--- a/src/cpu/ppc/vm/interpreter_ppc.cpp Tue Jan 26 10:24:49 2016 -0800 +++ b/src/cpu/ppc/vm/interpreter_ppc.cpp Wed Jan 27 15:01:46 2016 +0100 @@ -632,6 +632,16 @@ __ blr(); } + if (branch_table[ztos] == 0) { // generate only once + __ align(32, 28, 28); // align load + __ fence(); // volatile entry point (one instruction before non-volatile_entry point) + branch_table[ztos] = __ pc(); // non-volatile_entry point + __ lbzx(R3_RET, Rclass_or_obj, Roffset); + __ extsb(R3_RET, R3_RET); + __ beq(CCR6, Lacquire); + __ blr(); + } + if (branch_table[ctos] == 0) { // generate only once __ align(32, 28, 28); // align load __ fence(); // volatile entry point (one instruction before non-volatile_entry point)