< prev index next >

src/jdk.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java

Print this page


   1 /*
   2  * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   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
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */


 461     /**
 462      * Determines if {@code metaspaceMethodData} is mature.
 463      */
 464     native boolean isMature(long metaspaceMethodData);
 465 
 466     /**
 467      * Generate a unique id to identify the result of the compile.
 468      */
 469     native int allocateCompileId(HotSpotResolvedJavaMethodImpl method, int entryBCI);
 470 
 471     /**
 472      * Determines if {@code method} has OSR compiled code identified by {@code entryBCI} for
 473      * compilation level {@code level}.
 474      */
 475     native boolean hasCompiledCodeForOSR(HotSpotResolvedJavaMethodImpl method, int entryBCI, int level);
 476 
 477     /**
 478      * Gets the value of {@code metaspaceSymbol} as a String.
 479      */
 480     native String getSymbol(long metaspaceSymbol);





 481 
 482     /**
 483      * Looks for the next Java stack frame matching an entry in {@code methods}.
 484      *
 485      * @param frame the starting point of the search, where {@code null} refers to the topmost frame
 486      * @param methods the methods to look for, where {@code null} means that any frame is returned
 487      * @return the frame, or {@code null} if the end of the stack was reached during the search
 488      */
 489     native HotSpotStackFrameReference getNextStackFrame(HotSpotStackFrameReference frame, ResolvedJavaMethod[] methods, int initialSkip);
 490 
 491     /**
 492      * Materializes all virtual objects within {@code stackFrame} updates its locals.
 493      *
 494      * @param invalidate if {@code true}, the compiled method for the stack frame will be
 495      *            invalidated.
 496      */
 497     native void materializeVirtualObjects(HotSpotStackFrameReference stackFrame, boolean invalidate);
 498 
 499     /**
 500      * Gets the v-table index for interface method {@code method} in the receiver {@code type} or


   1 /*
   2  * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   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
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */


 461     /**
 462      * Determines if {@code metaspaceMethodData} is mature.
 463      */
 464     native boolean isMature(long metaspaceMethodData);
 465 
 466     /**
 467      * Generate a unique id to identify the result of the compile.
 468      */
 469     native int allocateCompileId(HotSpotResolvedJavaMethodImpl method, int entryBCI);
 470 
 471     /**
 472      * Determines if {@code method} has OSR compiled code identified by {@code entryBCI} for
 473      * compilation level {@code level}.
 474      */
 475     native boolean hasCompiledCodeForOSR(HotSpotResolvedJavaMethodImpl method, int entryBCI, int level);
 476 
 477     /**
 478      * Gets the value of {@code metaspaceSymbol} as a String.
 479      */
 480     native String getSymbol(long metaspaceSymbol);
 481 
 482     /**
 483      * Lookup a VMSymbol from a String.
 484      */
 485     native long lookupSymbol(String symbol);
 486 
 487     /**
 488      * Looks for the next Java stack frame matching an entry in {@code methods}.
 489      *
 490      * @param frame the starting point of the search, where {@code null} refers to the topmost frame
 491      * @param methods the methods to look for, where {@code null} means that any frame is returned
 492      * @return the frame, or {@code null} if the end of the stack was reached during the search
 493      */
 494     native HotSpotStackFrameReference getNextStackFrame(HotSpotStackFrameReference frame, ResolvedJavaMethod[] methods, int initialSkip);
 495 
 496     /**
 497      * Materializes all virtual objects within {@code stackFrame} updates its locals.
 498      *
 499      * @param invalidate if {@code true}, the compiled method for the stack frame will be
 500      *            invalidated.
 501      */
 502     native void materializeVirtualObjects(HotSpotStackFrameReference stackFrame, boolean invalidate);
 503 
 504     /**
 505      * Gets the v-table index for interface method {@code method} in the receiver {@code type} or


< prev index next >