agent/src/share/classes/sun/jvm/hotspot/runtime/sparc/SPARCFrame.java
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
7023639 Cdiff agent/src/share/classes/sun/jvm/hotspot/runtime/sparc/SPARCFrame.java
agent/src/share/classes/sun/jvm/hotspot/runtime/sparc/SPARCFrame.java
Print this page
*** 569,580 ****
//
// *** HOWEVER, *** if and when we make any floating-point
// registers callee-saved, then we will have to copy over
// the RegisterMap update logic from the Intel code.
- if (isRicochetFrame()) return senderForRicochetFrame(map);
-
// The constructor of the sender must know whether this frame is interpreted so it can set the
// sender's _interpreter_sp_adjustment field.
if (VM.getVM().getInterpreter().contains(pc)) {
isInterpreted = true;
map.makeIntegerRegsUnsaved();
--- 569,578 ----
*** 943,966 ****
return (a1.equals(a2));
}
- private Frame senderForRicochetFrame(SPARCRegisterMap map) {
- if (DEBUG) {
- System.out.println("senderForRicochetFrame");
- }
- //RicochetFrame* f = RicochetFrame::from_frame(fr);
- // Cf. is_interpreted_frame path of frame::sender
- Address youngerSP = getSP();
- Address sp = getSenderSP();
- map.makeIntegerRegsUnsaved();
- map.shiftWindow(sp, youngerSP);
- boolean thisFrameAdjustedStack = true; // I5_savedSP is live in this RF
- return new SPARCFrame(biasSP(sp), biasSP(youngerSP), thisFrameAdjustedStack);
- }
-
private Frame senderForEntryFrame(RegisterMap regMap) {
SPARCRegisterMap map = (SPARCRegisterMap) regMap;
if (Assert.ASSERTS_ENABLED) {
Assert.that(map != null, "map must be set");
--- 941,950 ----
agent/src/share/classes/sun/jvm/hotspot/runtime/sparc/SPARCFrame.java
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File