Skip to content

Commit

Permalink
Update to Java 22
Browse files Browse the repository at this point in the history
  • Loading branch information
martint committed Jul 15, 2024
1 parent 3e50321 commit 4746723
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 13 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
java: ['17']
java: ['22']
steps:
- uses: actions/checkout@v1
- name: Setup test JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- run: echo "test_java_home=$JAVA_HOME" >> $GITHUB_ENV
- name: Setup build JDK 17
- name: Setup build JDK 22
uses: actions/setup-java@v1
with:
java-version: 17
java-version: 22
- name: Maven Test
run: mvn install -V -B -Dtest_java_home=${{ env.test_java_home }}

3 changes: 2 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>17</release>
<source>22</source>
<release>22</release>
</configuration>
</plugin>
</plugins>
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/org/weakref/int128/Int128.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@
import java.nio.ByteOrder;
import java.util.concurrent.ThreadLocalRandom;

import static java.lang.Math.unsignedMultiplyHigh;
import static org.weakref.int128.MoreMath.ifNegative;
import static org.weakref.int128.MoreMath.unsignedBorrow;
import static org.weakref.int128.MoreMath.unsignedCarry;
import static org.weakref.int128.MoreMath.unsignedMultiplyHigh;

public record Int128(long high, long low)
implements Comparable<Int128>
Expand Down
4 changes: 3 additions & 1 deletion src/main/java/org/weakref/int128/Int128Math.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
*/
package org.weakref.int128;

import static java.lang.Math.unsignedMultiplyHigh;

public final class Int128Math
{
private Int128Math() {}
Expand Down Expand Up @@ -138,7 +140,7 @@ public static long subtractLowExact(long aHigh, long aLow, long bHigh, long bLow

public static long multiplyHigh(long aHigh, long aLow, long bHigh, long bLow)
{
return MoreMath.unsignedMultiplyHigh(aLow, bLow) + aLow * bHigh + aHigh * bLow;
return unsignedMultiplyHigh(aLow, bLow) + aLow * bHigh + aHigh * bLow;
}

public static long multiplyLow(long aHigh, long aLow, long bHigh, long bLow)
Expand Down
7 changes: 0 additions & 7 deletions src/main/java/org/weakref/int128/MoreMath.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,4 @@ public static long ifNegative(long test, long value)
{
return value & (test >> 63);
}

// TODO: replace with JDK 18's Math.unsignedMultiplyHigh
public static long unsignedMultiplyHigh(long x, long y)
{
// HD 8-3: High-Order Product Signed from/to Unsigned
return Math.multiplyHigh(x, y) + ifNegative(x, y) + ifNegative(y, x);
}
}

0 comments on commit 4746723

Please # to comment.