United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6561457 merge-o in fix to 6516101 bogusly sets the null_seen bit.
JDK-6561457 : merge-o in fix to 6516101 bogusly sets the null_seen bit.

Details
Type:
Bug
Submit Date:
2007-05-23
Status:
Resolved
Updated Date:
2010-04-02
Project Name:
JDK
Resolved Date:
2007-06-20
Component:
hotspot
OS:
generic
Sub-Component:
compiler
CPU:
generic
Priority:
P2
Resolution:
Fixed
Affected Versions:
7
Fixed Versions:
hs10 (b14)

Related Reports
Backport:
Backport:
Relates:
Relates:

Sub Tasks

Description
The following line was introduced twice in each of two files:
    set_mdp_flag_at(mdp, BitData::null_seen_byte_constant());

The files are:
    src/cpu/amd64/vm/interp_masm_amd64.cpp
    src/cpu/i486/vm/interp_masm_i486.cpp

The lines were apparently introduced by re-application of a patch.
Their contexts are extremely similar, but one context is the correct
location and the other is incorrect.  The bug is that the null_seen
bit is set in the MDO on code paths generated by both
profile_null_seen and profile_typecheck in InterpreterMacroAssembler.
Only the former should set that bit.  The result is that the
server compiler always performs a careful explicit null check
on the casted oop, instead of (what should be the usual case)
an implicit null check.

Fix is to remove the duplicate lines, one from each file.

                                    

Comments
EVALUATION

Couldn't have said it better myself.
                                     
2007-05-23



Hardware and Software, Engineered to Work Together