< prev index next >
src/share/vm/runtime/stubRoutines.hpp
Print this page
rev 12153 : imported patch shared_sb_stub.patch
@@ -122,10 +122,11 @@
static jint _fpu_subnormal_bias1[3];
static jint _fpu_subnormal_bias2[3];
static BufferBlob* _code1; // code buffer for initial routines
static BufferBlob* _code2; // code buffer for all other routines
+ static BufferBlob* _code3; // code buffer for barrier routines
// Leaf routines which implement arraycopy and their addresses
// arraycopy operands aligned on element type boundary
static address _jbyte_arraycopy;
static address _jshort_arraycopy;
@@ -230,21 +231,24 @@
public:
// Initialization/Testing
static void initialize1(); // must happen before universe::genesis
static void initialize2(); // must happen after universe::genesis
+ static void initialize3(); // must happen before interpreter, after universe::genesis
static bool is_stub_code(address addr) { return contains(addr); }
static bool contains(address addr) {
return
(_code1 != NULL && _code1->blob_contains(addr)) ||
- (_code2 != NULL && _code2->blob_contains(addr)) ;
+ (_code2 != NULL && _code2->blob_contains(addr)) ||
+ (_code3 != NULL && _code3->blob_contains(addr)) ;
}
static RuntimeBlob* code1() { return _code1; }
static RuntimeBlob* code2() { return _code2; }
+ static RuntimeBlob* code3() { return _code3; }
// Debugging
static jint verify_oop_count() { return _verify_oop_count; }
static jint* verify_oop_count_addr() { return &_verify_oop_count; }
// a subroutine for debugging the GC
< prev index next >