changeset 22160:0be1cc9089de

[SPARC] Use FSRC2(d|s) instead of FMOV(d|s)
author Stefan Anzinger <stefan.anzinger@oracle.com>
date Tue, 07 Jul 2015 15:05:50 +0200
parents ff70961cdfd4
children 18013bd8052a
files graal/com.oracle.graal.asm.sparc/src/com/oracle/graal/asm/sparc/SPARCAssembler.java graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java
diffstat 2 files changed, 10 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.asm.sparc/src/com/oracle/graal/asm/sparc/SPARCAssembler.java	Tue Jul 07 11:32:09 2015 +0200
+++ b/graal/com.oracle.graal.asm.sparc/src/com/oracle/graal/asm/sparc/SPARCAssembler.java	Tue Jul 07 15:05:50 2015 +0200
@@ -1263,6 +1263,14 @@
         op3(Fpop1, Fmovd, null, rs2, rd);
     }
 
+    public void fsrc2s(Register rs2, Register rd) {
+        op3(Impdep1, Fsrc2s, null, rs2, rd);
+    }
+
+    public void fsrc2d(Register rs2, Register rd) {
+        op3(Impdep1, Fsrc2d, null, rs2, rd);
+    }
+
     public void fmuls(Register rs1, Register rs2, Register rd) {
         op3(Fpop1, Fmuls, rs1, rs2, rd);
     }
--- a/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java	Tue Jul 07 11:32:09 2015 +0200
+++ b/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java	Tue Jul 07 15:05:50 2015 +0200
@@ -680,14 +680,14 @@
                 break;
             case Float:
                 if (result.getPlatformKind() == Kind.Float) {
-                    masm.fmovs(src, dst);
+                    masm.fsrc2s(src, dst);
                 } else {
                     throw JVMCIError.shouldNotReachHere();
                 }
                 break;
             case Double:
                 if (result.getPlatformKind() == Kind.Double) {
-                    masm.fmovd(src, dst);
+                    masm.fsrc2d(src, dst);
                 } else {
                     throw JVMCIError.shouldNotReachHere();
                 }