1472N/A * or visit www.oracle.com if you need additional information or have any
1879N/A#include "precompiled.hpp"
1879N/A#include "code/compiledIC.hpp"
1879N/A#include "code/icBuffer.hpp"
1879N/A#include "code/nmethod.hpp"
1879N/A#include "code/scopeDesc.hpp"
1879N/A#include "gc_interface/collectedHeap.inline.hpp"
1879N/A#include "interpreter/interpreter.hpp"
1879N/A#include "interpreter/linkResolver.hpp"
1879N/A#include "memory/resourceArea.hpp"
1879N/A#include "memory/universe.inline.hpp"
1879N/A#include "oops/methodOop.hpp"
1879N/A#include "oops/oop.inline.hpp"
1879N/A#include "oops/oop.inline2.hpp"
1879N/A#include "runtime/mutexLocker.hpp"
1879N/A#include "runtime/stubRoutines.hpp"
1879N/A#ifdef TARGET_ARCH_x86
1879N/A# include "assembler_x86.inline.hpp"
1879N/A#ifdef TARGET_ARCH_sparc
1879N/A# include "assembler_sparc.inline.hpp"
1879N/A#ifdef TARGET_ARCH_zero
1879N/A# include "assembler_zero.inline.hpp"
2073N/A#ifdef TARGET_ARCH_arm
2073N/A# include "assembler_arm.inline.hpp"
2073N/A#ifdef TARGET_ARCH_ppc
2073N/A# include "assembler_ppc.inline.hpp"
0N/A assert(CodeCache::find_nmethod(ic->instruction_address()) != NULL, "inline cache in non-nmethod?");
0N/A assert(this == ICStub_from_destination_address(ic->stub_address()), "wrong owner of ic buffer");
0N/A // store the location of the inline cache. Then we have enough information recreate the CompiledIC
0N/A//-----------------------------------------------------------------------------------------------
0N/A _buffer = new StubQueue(new ICStubInterface, 10*K, InlineCacheBuffer_lock, "InlineCacheBuffer");
0N/A if (HAS_PENDING_EXCEPTION) {
0N/A if (TraceICBuffer) {
0N/A if (TraceICBuffer) { tty->print_cr(" create transition stub for " INTPTR_FORMAT, ic->instruction_address()); }