United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6891750 deopt blob kills values in O5
6891750 : deopt blob kills values in O5

Details
Type:
Bug
Submit Date:
2009-10-15
Status:
Closed
Updated Date:
2011-03-08
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
solaris_9
Sub-Component:
compiler
CPU:
sparc
Priority:
P3
Resolution:
Fixed
Affected Versions:
hs17
Fixed Versions:
hs17

Related Reports
Backport:
Backport:
Relates:

Sub Tasks

Description
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.

                                    

Comments
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/0a46d0c5dccb
                                     
2009-10-16
EVALUATION

That seems right.  The RTS bug id was 6798020.
                                     
2009-10-15



Hardware and Software, Engineered to Work Together