[aarch64-port-dev ] git: openjdk/aarch64-port: master: 8248188: Add IntrinsicCandidate and API for Base64 decoding
Martin Doerr
mdoerr at openjdk.java.net
Wed Nov 11 21:35:01 UTC 2020
Changeset: ccb48b72
Author: Corey Ashford <cjashfor at linux.vnet.ibm.com>
Committer: Martin Doerr <mdoerr at openjdk.org>
Date: 2020-11-11 21:31:07 +0000
URL: https://github.com/openjdk/aarch64-port/commit/ccb48b72
8248188: Add IntrinsicCandidate and API for Base64 decoding
8248188: Add IntrinsicCandidate and API for Base64 decoding, add Power64LE intrinsic implementation.
This patch set encompasses the following commits:
Adds a new intrinsic candidate to the java.lang.Base64 class - decodeBlock(), and provides a flexible API for the intrinsic. The API is similar to the existing encodeBlock intrinsic.
Adds the code in HotSpot to check and martial the new intrinsic's arguments to the arch-specific intrinsic implementation.
Adds a Power64LE-specific implementation of the decodeBlock intrinsic.
Adds a JMH microbenchmark for both Base64 encoding and encoding.
Enhances the JTReg hotspot intrinsic "TestBase64.java" regression test to more fully test both decoding and encoding.
Reviewed-by: rriggs, mdoerr, kvn
! src/hotspot/cpu/ppc/assembler_ppc.hpp
! src/hotspot/cpu/ppc/assembler_ppc.inline.hpp
! src/hotspot/cpu/ppc/stubGenerator_ppc.cpp
! src/hotspot/cpu/ppc/vm_version_ppc.cpp
! src/hotspot/share/classfile/vmIntrinsics.cpp
! src/hotspot/share/classfile/vmIntrinsics.hpp
! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp
! src/hotspot/share/jvmci/vmStructs_jvmci.cpp
! src/hotspot/share/opto/c2compiler.cpp
! src/hotspot/share/opto/escape.cpp
! src/hotspot/share/opto/library_call.cpp
! src/hotspot/share/opto/library_call.hpp
! src/hotspot/share/opto/runtime.cpp
! src/hotspot/share/opto/runtime.hpp
! src/hotspot/share/runtime/stubRoutines.cpp
! src/hotspot/share/runtime/stubRoutines.hpp
! src/hotspot/share/runtime/vmStructs.cpp
! src/java.base/share/classes/java/util/Base64.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java
! test/hotspot/jtreg/compiler/intrinsics/base64/TestBase64.java
+ test/hotspot/jtreg/compiler/intrinsics/base64/longLineBaseEncode.txt
+ test/hotspot/jtreg/compiler/intrinsics/base64/longLineHEX.txt
+ test/hotspot/jtreg/compiler/intrinsics/base64/longLineMimeEncode.txt
+ test/hotspot/jtreg/compiler/intrinsics/base64/longLineUrlEncode.txt
+ test/micro/org/openjdk/bench/java/util/Base64VarLenDecode.java
More information about the aarch64-port-dev
mailing list