hotspot/src/share/vm/runtime/vframeArray.cpp
changeset 13728 882756847a04
parent 13391 30245956af37
child 15475 73896d91270c
equal deleted inserted replaced
13727:caf5eb7dd4a7 13728:882756847a04
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    27 #include "interpreter/bytecode.hpp"
    27 #include "interpreter/bytecode.hpp"
    28 #include "interpreter/interpreter.hpp"
    28 #include "interpreter/interpreter.hpp"
    29 #include "memory/allocation.inline.hpp"
    29 #include "memory/allocation.inline.hpp"
    30 #include "memory/resourceArea.hpp"
    30 #include "memory/resourceArea.hpp"
    31 #include "memory/universe.inline.hpp"
    31 #include "memory/universe.inline.hpp"
    32 #include "oops/methodDataOop.hpp"
    32 #include "oops/methodData.hpp"
    33 #include "oops/oop.inline.hpp"
    33 #include "oops/oop.inline.hpp"
    34 #include "prims/jvmtiThreadState.hpp"
    34 #include "prims/jvmtiThreadState.hpp"
    35 #include "runtime/handles.inline.hpp"
    35 #include "runtime/handles.inline.hpp"
    36 #include "runtime/monitorChunk.hpp"
    36 #include "runtime/monitorChunk.hpp"
    37 #include "runtime/sharedRuntime.hpp"
    37 #include "runtime/sharedRuntime.hpp"
   297   if (ProfileInterpreter) {
   297   if (ProfileInterpreter) {
   298     iframe()->interpreter_frame_set_mdx(0); // clear out the mdp.
   298     iframe()->interpreter_frame_set_mdx(0); // clear out the mdp.
   299   }
   299   }
   300   iframe()->interpreter_frame_set_bcx((intptr_t)bcp); // cannot use bcp because frame is not initialized yet
   300   iframe()->interpreter_frame_set_bcx((intptr_t)bcp); // cannot use bcp because frame is not initialized yet
   301   if (ProfileInterpreter) {
   301   if (ProfileInterpreter) {
   302     methodDataOop mdo = method()->method_data();
   302     MethodData* mdo = method()->method_data();
   303     if (mdo != NULL) {
   303     if (mdo != NULL) {
   304       int bci = iframe()->interpreter_frame_bci();
   304       int bci = iframe()->interpreter_frame_bci();
   305       if (use_next_mdp) ++bci;
   305       if (use_next_mdp) ++bci;
   306       address mdp = mdo->bci_to_dp(bci);
   306       address mdp = mdo->bci_to_dp(bci);
   307       iframe()->interpreter_frame_set_mdp(mdp);
   307       iframe()->interpreter_frame_set_mdp(mdp);