RFR: 8297822: De-duplicate code in module jdk.sctp [v4]

Per Minborg pminborg at openjdk.org
Tue Dec 6 14:04:17 UTC 2022


> This PR proposes merging logic and optimising three classes that exist for aix, macos and windows.
> 
> Optimisation will reduce byte code. Below is an example for one of the many methods optimised.
> 
> Before:
> 
> public void implCloseSelectableChannel() throws java.io.IOException;
>   Code:
>      0: new           #7                  // class java/lang/UnsupportedOperationException
>      3: dup
>      4: ldc           #11                 // String SCTP not supported on this platform
>      6: invokespecial #13                 // Method java/lang/UnsupportedOperationException."<init>":(Ljava/lang/String;)V
>      9: athrow
> 
> 
> After:
> 
> public void implCloseSelectableChannel() throws java.io.IOException;
>   Code:
>      0: invokestatic  #16                 // Method sun/nio/ch/sctp/UnsupportedUtil.sctpUnsupported:()Ljava/lang/UnsupportedOperationException;
>      3: athrow

Per Minborg has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:

 - Remove UnsupportedUtil.java where not needed
 - Merge branch 'master' into sctp-dedup
 - Remove final declarations
 - Move and refactor classes to reduce duplication
 - Fix copyrignt and add sealed classes
 - De-duplicate code in module jdk.sctp

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/11436/files
  - new: https://git.openjdk.org/jdk/pull/11436/files/6c5c1f41..7e3aaf96

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=11436&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=11436&range=02-03

  Stats: 44196 lines in 939 files changed: 16702 ins; 21094 del; 6400 mod
  Patch: https://git.openjdk.org/jdk/pull/11436.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11436/head:pull/11436

PR: https://git.openjdk.org/jdk/pull/11436


More information about the net-dev mailing list