< prev index next >

src/hotspot/share/c1/c1_Compiler.cpp

Print this page

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);
< prev index next >