< prev index next >

src/hotspot/share/c1/c1_Compiler.cpp

Print this page

212   case vmIntrinsics::_putIntUnaligned:
213   case vmIntrinsics::_putLongUnaligned:
214   case vmIntrinsics::_Preconditions_checkIndex:
215   case vmIntrinsics::_Preconditions_checkLongIndex:
216   case vmIntrinsics::_updateCRC32:
217   case vmIntrinsics::_updateBytesCRC32:
218   case vmIntrinsics::_updateByteBufferCRC32:
219 #if defined(S390) || defined(PPC64) || defined(AARCH64)
220   case vmIntrinsics::_updateBytesCRC32C:
221   case vmIntrinsics::_updateDirectByteBufferCRC32C:
222 #endif
223   case vmIntrinsics::_vectorizedMismatch:
224   case vmIntrinsics::_compareAndSetInt:
225   case vmIntrinsics::_compareAndSetReference:
226   case vmIntrinsics::_getCharStringU:
227   case vmIntrinsics::_putCharStringU:
228 #ifdef JFR_HAVE_INTRINSICS
229   case vmIntrinsics::_counterTime:
230 #endif
231   case vmIntrinsics::_getObjectSize:


232     break;
233   case vmIntrinsics::_blackhole:
234     break;
235   default:
236     return false; // Intrinsics not on the previous list are not available.
237   }
238 
239   return true;
240 }
241 
242 void Compiler::compile_method(ciEnv* env, ciMethod* method, int entry_bci, bool install_code, DirectiveSet* directive) {
243   BufferBlob* buffer_blob = CompilerThread::current()->get_buffer_blob();
244   assert(buffer_blob != NULL, "Must exist");
245   // invoke compilation
246   {
247     // We are nested here because we need for the destructor
248     // of Compilation to occur before we release the any
249     // competing compiler thread
250     ResourceMark rm;
251     Compilation c(this, env, method, entry_bci, buffer_blob, install_code, directive);

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