< prev index next >
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/code/VMRegImpl.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2006, 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.
--- 1,7 ----
/*
! * 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,44 ****
--- 35,45 ----
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,60 ****
--- 52,62 ----
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,70 ****
--- 67,76 ----
}
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 >