Prepared by: | never on Wed Oct 14 17:49:23 PDT 2009 |
---|---|
Workspace: | /net/smite.sfbay/export/ws/baseline |
Compare against: | ssh://hg.openjdk.java.net/jdk7/hotspot-comp-gate/hotspot |
Summary of changes: | 119 lines changed: 108 ins; 2 del; 9 mod; 3743 unchg |
Patch of changes: | 6891750.patch |
Author comments: |
6891750: deopt blob kills values in O5 Reviewed-by: Sometime in 1.5 the deopt blob was rewritten to use I5 to hold a copy of the current deoptimization mode instead of O5. Before save_live_registers I5 is actually O5 which might contain a live value on 64 bit since we rely on register windows to save those values. In 32-bit mode the O registers are explicitly saved since they might contain 64 bit values. The fix is simply to use an L register as a cache like we do for G2_thread. I also changed the name from exception_tmp to deopt_mode since that makes more sense and deleted a dead declaration. This was found during JRTS testing of the 64-bit C1 port. Tested with failing test case. |
Legend: |
Modified file Deleted file New file |
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/cpu/sparc/vm/sharedRuntime_sparc.cpp
11 lines changed: 0 ins; 2 del; 9 mod; 3743 unchg
------ ------ ------
------
---
New
Patch
Raw
test/compiler/6891750/Test6891750.java
108 lines changed: 108 ins; 0 del; 0 mod; 0 unchg
This code review page was prepared using /never/bin/webrev (vers 23.18-hg-never).