bugfix on Encode.longToFloat1
[org.ibex.util.git] / src / org / ibex / util / Encode.java
index c8f20ef..cd4d39e 100644 (file)
@@ -71,7 +71,7 @@ public final class Encode {
 
     public static long twoFloatsToLong(float a, float b) {
         return ((Float.floatToIntBits(a) & 0xffffffffL) << 32) | (Float.floatToIntBits(b) & 0xffffffffL); }
 
     public static long twoFloatsToLong(float a, float b) {
         return ((Float.floatToIntBits(a) & 0xffffffffL) << 32) | (Float.floatToIntBits(b) & 0xffffffffL); }
-    public static float longToFloat1(long l) { return Float.intBitsToFloat((int)(l >> 32)); }
+    public static float longToFloat1(long l) { return Float.intBitsToFloat((int)((l >> 32) & 0xffffffff)); }
     public static float longToFloat2(long l) { return Float.intBitsToFloat((int)(l & 0xffffffff)); }
 
     private static final char[] fn =
     public static float longToFloat2(long l) { return Float.intBitsToFloat((int)(l & 0xffffffff)); }
 
     private static final char[] fn =