215 case vmIntrinsics::_putIntUnaligned:
216 case vmIntrinsics::_putLongUnaligned:
217 case vmIntrinsics::_Preconditions_checkIndex:
218 case vmIntrinsics::_Preconditions_checkLongIndex:
219 case vmIntrinsics::_updateCRC32:
220 case vmIntrinsics::_updateBytesCRC32:
221 case vmIntrinsics::_updateByteBufferCRC32:
222 #if defined(S390) || defined(PPC64) || defined(AARCH64)
223 case vmIntrinsics::_updateBytesCRC32C:
224 case vmIntrinsics::_updateDirectByteBufferCRC32C:
225 #endif
226 case vmIntrinsics::_vectorizedMismatch:
227 case vmIntrinsics::_compareAndSetInt:
228 case vmIntrinsics::_compareAndSetReference:
229 case vmIntrinsics::_getCharStringU:
230 case vmIntrinsics::_putCharStringU:
231 #ifdef JFR_HAVE_INTRINSICS
232 case vmIntrinsics::_counterTime:
233 #endif
234 case vmIntrinsics::_getObjectSize:
235 break;
236 case vmIntrinsics::_blackhole:
237 break;
238 default:
239 return false; // Intrinsics not on the previous list are not available.
240 }
241
242 return true;
243 }
244
245 void Compiler::compile_method(ciEnv* env, ciMethod* method, int entry_bci, bool install_code, DirectiveSet* directive) {
246 BufferBlob* buffer_blob = CompilerThread::current()->get_buffer_blob();
247 assert(buffer_blob != NULL, "Must exist");
248 // invoke compilation
249 {
250 // We are nested here because we need for the destructor
251 // of Compilation to occur before we release the any
252 // competing compiler thread
253 ResourceMark rm;
254 Compilation c(this, env, method, entry_bci, buffer_blob, install_code, directive);
|
215 case vmIntrinsics::_putIntUnaligned:
216 case vmIntrinsics::_putLongUnaligned:
217 case vmIntrinsics::_Preconditions_checkIndex:
218 case vmIntrinsics::_Preconditions_checkLongIndex:
219 case vmIntrinsics::_updateCRC32:
220 case vmIntrinsics::_updateBytesCRC32:
221 case vmIntrinsics::_updateByteBufferCRC32:
222 #if defined(S390) || defined(PPC64) || defined(AARCH64)
223 case vmIntrinsics::_updateBytesCRC32C:
224 case vmIntrinsics::_updateDirectByteBufferCRC32C:
225 #endif
226 case vmIntrinsics::_vectorizedMismatch:
227 case vmIntrinsics::_compareAndSetInt:
228 case vmIntrinsics::_compareAndSetReference:
229 case vmIntrinsics::_getCharStringU:
230 case vmIntrinsics::_putCharStringU:
231 #ifdef JFR_HAVE_INTRINSICS
232 case vmIntrinsics::_counterTime:
233 #endif
234 case vmIntrinsics::_getObjectSize:
235 case vmIntrinsics::_shipilev_magic_sizeOf:
236 case vmIntrinsics::_shipilev_magic_addressOf:
237 break;
238 case vmIntrinsics::_blackhole:
239 break;
240 default:
241 return false; // Intrinsics not on the previous list are not available.
242 }
243
244 return true;
245 }
246
247 void Compiler::compile_method(ciEnv* env, ciMethod* method, int entry_bci, bool install_code, DirectiveSet* directive) {
248 BufferBlob* buffer_blob = CompilerThread::current()->get_buffer_blob();
249 assert(buffer_blob != NULL, "Must exist");
250 // invoke compilation
251 {
252 // We are nested here because we need for the destructor
253 // of Compilation to occur before we release the any
254 // competing compiler thread
255 ResourceMark rm;
256 Compilation c(this, env, method, entry_bci, buffer_blob, install_code, directive);
|