< prev index next >
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/code/VMRegImpl.java
Print this page
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
@@ -35,10 +35,11 @@
private static VMReg stack0;
private static int stack0Val;
private static Address stack0Addr;
private static AddressField regNameField;
+ private static int stackSlotSize;
static {
VM.registerVMInitializedObserver(new Observer() {
public void update(Observable o, Object data) {
initialize(VM.getVM().getTypeDataBase());
@@ -51,10 +52,11 @@
AddressField stack0Field = type.getAddressField("stack0");
stack0Addr = stack0Field.getValue();
stack0Val = (int) stack0Addr.hashCode();
stack0 = new VMReg(stack0Val);
regNameField = type.getAddressField("regName[0]");
+ stackSlotSize = db.lookupIntConstant("VMRegImpl::stack_slot_size");
}
public static VMReg getStack0() {
return stack0;
}
@@ -65,6 +67,10 @@
}
Address regName = regNameField.getStaticFieldAddress();
long addrSize = VM.getVM().getAddressSize();
return CStringUtilities.getString(regName.getAddressAt(index * addrSize));
}
+
+ public static int getStackSlotSize() {
+ return stackSlotSize;
+ }
}
< prev index next >