Fri, 29 Apr 2016 12:46:05 -0400
crypto.rsa runs OK on 3A2000-4way.
src/cpu/mips/vm/templateInterpreter_mips_64.cpp | file | annotate | diff | comparison | revisions | |
src/cpu/mips/vm/templateTable_mips_64.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/cpu/mips/vm/templateInterpreter_mips_64.cpp Fri Apr 29 11:06:40 2016 -0400 1.2 +++ b/src/cpu/mips/vm/templateInterpreter_mips_64.cpp Fri Apr 29 12:46:05 2016 -0400 1.3 @@ -2256,6 +2256,7 @@ 1.4 // __ movl(cond_addr, JvmtiThreadState::earlyret_inactive); 1.5 __ move(AT,JvmtiThreadState::earlyret_inactive); 1.6 __ sw(AT,cond_addr); 1.7 + __ sync(); 1.8 //__ remove_activation(state, esi, 1.9 1.10
2.1 --- a/src/cpu/mips/vm/templateTable_mips_64.cpp Fri Apr 29 11:06:40 2016 -0400 2.2 +++ b/src/cpu/mips/vm/templateTable_mips_64.cpp Fri Apr 29 12:46:05 2016 -0400 2.3 @@ -2782,6 +2782,7 @@ 2.4 __ delayed()->nop(); 2.5 2.6 // btos 2.7 + __ sync(); 2.8 __ lb(FSR, index, 0); 2.9 __ sd(FSR, SP, - wordSize); 2.10 2.11 @@ -2798,6 +2799,7 @@ 2.12 __ delayed()->nop(); 2.13 2.14 // itos 2.15 + __ sync(); 2.16 __ lw(FSR, index, 0); 2.17 __ sd(FSR, SP, - wordSize); 2.18 2.19 @@ -2816,6 +2818,7 @@ 2.20 2.21 // atos 2.22 //add for compressedoops 2.23 + __ sync(); 2.24 __ load_heap_oop(FSR, Address(index, 0)); 2.25 __ sd(FSR, SP, - wordSize); 2.26 2.27 @@ -2832,6 +2835,7 @@ 2.28 __ delayed()->nop(); 2.29 2.30 // ctos 2.31 + __ sync(); 2.32 __ lhu(FSR, index, 0); 2.33 __ sd(FSR, SP, - wordSize); 2.34 2.35 @@ -2847,6 +2851,7 @@ 2.36 __ delayed()->nop(); 2.37 2.38 // stos 2.39 + __ sync(); 2.40 __ lh(FSR, index, 0); 2.41 __ sd(FSR, SP, - wordSize); 2.42 2.43 @@ -2864,6 +2869,7 @@ 2.44 2.45 // FIXME : the load/store should be atomic, we have no simple method to do this in mips32 2.46 // ltos 2.47 + __ sync(); 2.48 __ ld(FSR, index, 0 * wordSize); 2.49 __ sd(FSR, SP, -2 * wordSize); 2.50 __ sd(R0, SP, -1 * wordSize); 2.51 @@ -2878,6 +2884,7 @@ 2.52 __ delayed()->nop(); 2.53 2.54 // ftos 2.55 + __ sync(); 2.56 __ lwc1(FSF, index, 0); 2.57 __ sdc1(FSF, SP, - wordSize); 2.58 2.59 @@ -2893,6 +2900,7 @@ 2.60 __ delayed()->nop(); 2.61 2.62 // dtos 2.63 + __ sync(); 2.64 __ ldc1(FSF, index, 0 * wordSize); 2.65 __ sdc1(FSF, SP, - 2 * wordSize); 2.66 __ sd(R0, SP, - 1 * wordSize);