--- old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CRC32Substitutions.java 2017-03-20 17:38:53.000000000 -0700 +++ new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CRC32Substitutions.java 2017-03-20 17:38:52.000000000 -0700 @@ -57,7 +57,10 @@ return config.crcTableAddress; } - @MethodSubstitution + /** + * Removed in 9. + */ + @MethodSubstitution(optional = true) static int update(int crc, int b) { final long crcTableRawAddress = GraalHotSpotVMConfigNode.crcTableAddress(); @@ -69,7 +72,10 @@ return ~result; } - @MethodSubstitution + /** + * Removed in 9. + */ + @MethodSubstitution(optional = true) static int updateBytes(int crc, byte[] buf, int off, int len) { Word bufAddr = Word.unsigned(ComputeObjectAddressNode.get(buf, arrayBaseOffset(JavaKind.Byte) + off)); return updateBytesCRC32(UPDATE_BYTES_CRC32, crc, bufAddr, len); @@ -84,7 +90,10 @@ return updateBytesCRC32(UPDATE_BYTES_CRC32, crc, bufAddr, len); } - @MethodSubstitution + /** + * Removed in 9. + */ + @MethodSubstitution(optional = true) static int updateByteBuffer(int crc, long addr, int off, int len) { Word bufAddr = Word.unsigned(addr).add(off); return updateBytesCRC32(UPDATE_BYTES_CRC32, crc, bufAddr, len);