Inline codegen for long-to-double on ARM.
Change-Id: I4fc443c1b942a2231d680fc2c7a1530c86104584
diff --git a/test/107-int-math2/src/Main.java b/test/107-int-math2/src/Main.java
index d737ff5..1ce4a04 100644
--- a/test/107-int-math2/src/Main.java
+++ b/test/107-int-math2/src/Main.java
@@ -297,6 +297,24 @@
l = -5678956789L;
i = (int) l;
if (i != -1383989493) { return 4; }
+
+ /* long --> double */
+ l = 0x7FFFFFFFL;
+ d = (double) l;
+ if (Double.doubleToRawLongBits(d) != 0x41dfffffffc00000L) { return 5; }
+
+ l = 0xFFFFFFFFL;
+ d = (double) l;
+ if (Double.doubleToRawLongBits(d) != 0x41efffffffe00000L) { return 6; }
+
+ l = 0x7FFFFFFFFFFFFFFFL;
+ d = (double) l;
+ if (Double.doubleToRawLongBits(d) != 0x43e0000000000000L) { return 7; }
+
+ l = 0xFFFFFFFFFFFFFFFFL;
+ d = (double) l;
+ if (Double.doubleToRawLongBits(d) != 0xbff0000000000000L) { return 8; }
+
return 0;
}