1.1 --- a/src/share/vm/interpreter/interpreter.cpp Tue Jul 02 07:51:31 2013 +0200 1.2 +++ b/src/share/vm/interpreter/interpreter.cpp Tue Jul 02 20:42:12 2013 -0400 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -195,6 +195,17 @@ 1.11 return kind; 1.12 } 1.13 1.14 +#ifndef CC_INTERP 1.15 + if (UseCRC32Intrinsics && m->is_native()) { 1.16 + // Use optimized stub code for CRC32 native methods. 1.17 + switch (m->intrinsic_id()) { 1.18 + case vmIntrinsics::_updateCRC32 : return java_util_zip_CRC32_update; 1.19 + case vmIntrinsics::_updateBytesCRC32 : return java_util_zip_CRC32_updateBytes; 1.20 + case vmIntrinsics::_updateByteBufferCRC32 : return java_util_zip_CRC32_updateByteBuffer; 1.21 + } 1.22 + } 1.23 +#endif 1.24 + 1.25 // Native method? 1.26 // Note: This test must come _before_ the test for intrinsic 1.27 // methods. See also comments below. 1.28 @@ -297,6 +308,9 @@ 1.29 case java_lang_math_sqrt : tty->print("java_lang_math_sqrt" ); break; 1.30 case java_lang_math_log : tty->print("java_lang_math_log" ); break; 1.31 case java_lang_math_log10 : tty->print("java_lang_math_log10" ); break; 1.32 + case java_util_zip_CRC32_update : tty->print("java_util_zip_CRC32_update"); break; 1.33 + case java_util_zip_CRC32_updateBytes : tty->print("java_util_zip_CRC32_updateBytes"); break; 1.34 + case java_util_zip_CRC32_updateByteBuffer : tty->print("java_util_zip_CRC32_updateByteBuffer"); break; 1.35 default: 1.36 if (kind >= method_handle_invoke_FIRST && 1.37 kind <= method_handle_invoke_LAST) {