#10052 Backport of #9904 compiler/floatingpoint/TestFloatSyncJNIArgs.java failed

Mon, 18 Nov 2019 10:41:48 +0800

author
huangjia
date
Mon, 18 Nov 2019 10:41:48 +0800
changeset 9759
8c71022cf5f3
parent 9758
122547cfa3c8
child 9760
8b305ff8f6b6

#10052 Backport of #9904 compiler/floatingpoint/TestFloatSyncJNIArgs.java failed
Reviewed-by: aoqi

src/cpu/mips/vm/assembler_mips.hpp file | annotate | diff | comparison | revisions
src/cpu/mips/vm/sharedRuntime_mips_64.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/cpu/mips/vm/assembler_mips.hpp	Mon Nov 25 15:36:48 2019 +0800
     1.2 +++ b/src/cpu/mips/vm/assembler_mips.hpp	Mon Nov 18 10:41:48 2019 +0800
     1.3 @@ -149,7 +149,7 @@
     1.4    enum {
     1.5  #ifdef _LP64
     1.6      n_register_parameters = 8,   // 8 integer registers used to pass parameters
     1.7 -    n_float_register_parameters = 8   // 4 float registers used to pass parameters
     1.8 +    n_float_register_parameters = 8   // 8 float registers used to pass parameters
     1.9  #else
    1.10      n_register_parameters = 4,   // 4 integer registers used to pass parameters
    1.11      n_float_register_parameters = 4   // 4 float registers used to pass parameters
     2.1 --- a/src/cpu/mips/vm/sharedRuntime_mips_64.cpp	Mon Nov 25 15:36:48 2019 +0800
     2.2 +++ b/src/cpu/mips/vm/sharedRuntime_mips_64.cpp	Mon Nov 18 10:41:48 2019 +0800
     2.3 @@ -1270,8 +1270,8 @@
     2.4  
     2.5    if (src.first()->is_stack()) {
     2.6      if (dst.first()->is_stack()) {
     2.7 -      __ lwc1(F12, FP, reg2offset_in(src.first()));
     2.8 -      __ swc1(F12, SP, reg2offset_out(dst.first()));
     2.9 +      __ lw(AT, FP, reg2offset_in(src.first()));
    2.10 +      __ sw(AT, SP, reg2offset_out(dst.first()));
    2.11      }
    2.12      else
    2.13        __ lwc1(dst.first()->as_FloatRegister(), FP, reg2offset_in(src.first()));
    2.14 @@ -1324,9 +1324,8 @@
    2.15    if (src.first()->is_stack()) {
    2.16      // source is all stack
    2.17      if( dst.first()->is_stack()){
    2.18 -      __ ldc1(F12, FP, reg2offset_in(src.first()));
    2.19 -
    2.20 -      __ sdc1(F12, SP, reg2offset_out(dst.first()));
    2.21 +      __ ld(AT, FP, reg2offset_in(src.first()));
    2.22 +      __ sd(AT, SP, reg2offset_out(dst.first()));
    2.23      } else {
    2.24        __ ldc1( (dst.first())->as_FloatRegister(), FP, reg2offset_in(src.first()));
    2.25      }

mercurial