hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
address SignatureHandlerLibrary::set_handler_blob() {
{- -------------------------------------------
(1) BufferBlob::create() で BufferBlob を生成する.
もし失敗したら NULL をリターン.
逆に成功したら, _handler_blob フィールドや _handler フィールドに生成した BufferBlob をセットした後,
その BufferBlob の先頭アドレスをリターンする.
---------------------------------------- -}
BufferBlob* handler_blob = BufferBlob::create("native signature handlers", blob_size);
if (handler_blob == NULL) {
return NULL;
}
address handler = handler_blob->code_begin();
_handler_blob = handler_blob;
_handler = handler;
return handler;
}
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.