RFR: 8143849: Integrate Marlin renderer per JEP 265
Laurent Bourgès
bourges.laurent at gmail.com
Fri Jan 24 08:04:18 UTC 2020
Hi,
Two comments on this patch:
1. In jdk9's RenderingEngine class, the system property
-Dsun.java2d.renderer.verbose=true
+ gpa = new GetPropertyAction("sun.java2d.renderer.verbose");
+ String verbose = AccessController.doPrivileged(gpa);
+ if (verbose != null && verbose.startsWith("t")) {
+ System.out.println("RenderingEngine = "+reImpl);
+ }
This change is missing in the current jdk8 backport (zulu 8) so there
is no mean to display which RenderingEngine is in action at runtime.
2. As I disabled the Marlin renderer by default in this patch, it must
be explicitly enabled by setting the system property:
-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine
Finally I built the patched JDK8u and tested using jtreg (sun.java2d tests).
Laurent
Le jeu. 23 janv. 2020 à 23:48, Laurent Bourgès <bourges.laurent at gmail.com>
a écrit :
> Please review this first patch to backport the Marlin renderer from jdk9.
>
> JBS: https://bugs.openjdk.java.net/browse/JDK-8143849
> webrev:
> http://cr.openjdk.java.net/~lbourges/marlin8u/marlin-8.01/m01.8143849.patch
> unshuffled patch:
> http://cr.openjdk.java.net/~lbourges/marlin8u/marlin-8.01/unshuffled/
>
> m01.8143849.patch + merge with marlin changes only from m01b.8149896.patch
> (few lines), the bug 8149896 will not be backported later.
>
> Changes:
> - FloatMath.java: removed powerOfTwoD(int n) as done in m01b.8149896.patch
>
> - MarlinCache.java & MarlinTileGenerator.java:
> import jdk.internal.misc.Unsafe; => import sun.misc.Unsafe;
>
> - MarlinUtils:
> import jdk.internal.misc.JavaLangAccess; => import sun.misc.JavaLangAccess;
> import jdk.internal.misc.SharedSecrets; => import sun.misc.SharedSecrets;
>
> - OffHeapArray.java:
> import sun.awt.util.ThreadGroupUtils; => import sun.misc.ThreadGroupUtils;
> import jdk.internal.misc.Unsafe; => import sun.misc.Unsafe;
>
> - Renderer.java:
> import jdk.internal.misc.Unsafe; => import sun.misc.Unsafe;
>
> 1 Line change from m01b.8149896.patch:
> private static final double POWER_2_TO_32 = FloatMath.powerOfTwoD(32); =>
> private static final double POWER_2_TO_32 = 0x1.0p32;
>
> - RenderingEngine.java:
> I skipped any change to the RenderingEngine class to not change the
> default renderer in jdk 8u.
> FYI I moved those changes in the following file, not to be integrated:
>
> http://cr.openjdk.java.net/~lbourges/marlin8u/marlin-8.01/m01.8143849-RenderingEngine.patch
>
> - Add MarlinRenderingEngine in sun.java2d.pipe.RenderingEngine property
> files
>
> Best regards,
> Laurent
>
--
--
Laurent Bourgès
More information about the jdk8u-dev
mailing list