RFR: 8143849: Integrate Marlin renderer per JEP 265

Alexander Scherbatiy alexander.scherbatiy at bell-sw.com
Mon Jan 27 08:27:34 UTC 2020


On 24.01.2020 11:04, Laurent Bourgès wrote:

> 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/

Is it correct that the link to the webrev for review is:

http://cr.openjdk.java.net/~lbourges/marlin8u/marlin-8.01/m01.8143849-webrev/ 
?

Thanks,

Alexander.

>>
>> 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
>>
>


More information about the jdk8u-dev mailing list