kvn [Thu, 06 Mar 2008 10:30:17 -0800] rev 211
6667610: (Escape Analysis) retry compilation without EA if it fails
Summary: During split unique types EA could exceed nodes limit and fail the method compilation.
Reviewed-by: rasbold
kvn [Wed, 05 Mar 2008 11:33:31 -0800] rev 210
6671250: In Parse::do_if() old Cmp node 'c' should be replaced with new one after BoolNode transformation
Summary: In Parse::do_if() 'c' (CmpNode) node may be changed during BoolNode transformation so 'c' may became dead but the node is referenced later in the code.
Reviewed-by: never
kvn [Fri, 29 Feb 2008 19:57:41 -0800] rev 209
6667618: disable LoadL->ConvL2I ==> LoadI optimization
Summary: this optimization causes problems (sizes of Load and Store nodes do not match) for objects initialization code and Escape Analysis
Reviewed-by: jrose, never
kvn [Fri, 29 Feb 2008 19:07:15 -0800] rev 208
6667588: Don't generate duplicated CMP for float/double values
Summary: float CMove generation add duplicated CMPF if there are more then one Move depending on the condition.
Reviewed-by: jrose, never, rasbold
kvn [Fri, 29 Feb 2008 11:22:27 -0800] rev 207
6667581: Don't generate initialization (by 0) code for arrays with size 0
Summary: generate_arraycopy() does not check the size of allocated array.
Reviewed-by: jrose, never
kvn [Fri, 29 Feb 2008 09:57:18 -0800] rev 206
6667580: Optimize CmpP for allocations
Summary: CmpP could be optimized out if it compares new allocated objects.
Reviewed-by: jrose, never, rasbold
kvn [Thu, 28 Feb 2008 15:40:09 -0800] rev 205
6667573: Use set_req_X() in AddPNode::Ideal() for Iterative GVN
Summary: set_req_X() puts dependent nodes on IGVN worklist which allows to improve graph and gives more opportunities for EA scalar replacement.
Reviewed-by: jrose, never
kvn [Thu, 28 Feb 2008 10:45:15 -0800] rev 204
6590177: jck60019 test assert(!repeated,"do not walk merges twice")
Summary: A mergemem node could be not in worklist_store but in should_not_repeat vectorset since it was processed and removed from worklist_store before.
Reviewed-by: jrose, never
jrose [Wed, 27 Feb 2008 00:23:37 -0800] rev 203
6610906: inexplicable IncompatibleClassChangeError
Summary: dependency check must treat polymorphic interfaces consistently
Reviewed-by: kvn, never, sgoldman
kvn [Mon, 25 Feb 2008 15:05:44 -0800] rev 202
6633953: type2aelembytes{T_ADDRESS} should be 8 bytes in 64 bit VM
Summary: T_ADDRESS size is defined as 'int' size (4 bytes) but C2 use it for raw pointers and as memory type for StoreP and LoadP nodes.
Reviewed-by: jrose
kvn [Fri, 22 Feb 2008 17:55:13 -0800] rev 201
6650373: Assert in methodOopDesc::make_adapters()
Summary: AdapterHandlerLibrary::get_create_adapter_index() returns incorrect value (-2) when CodeCache is full.
Reviewed-by: sgoldman
kvn [Thu, 21 Feb 2008 19:03:44 -0800] rev 200
6498878: client compiler crashes on windows when dealing with breakpoint instructions
Summary: _is_compilable check prevents breakpoint bytecodes reversion when loading bytecodes for ciMethod.
Reviewed-by: never
kvn [Thu, 21 Feb 2008 14:03:41 -0800] rev 199
6621084: ciMethodBlocks::split_block_at() is broken for methods with exception handler
Summary: After an exception handler block is split the exception information is not moved to the new block which starts in exception handler BCI.
Reviewed-by: jrose
kvn [Wed, 20 Feb 2008 17:23:43 -0800] rev 198
6621094: PrintOptoAssembly is broken for oops information in DebugInfo
Summary: OopMapValue and VMRegImpl classes miss the virtual method print_on(st).
Reviewed-by: rasbold, jrose, never
kvn [Wed, 20 Feb 2008 16:19:43 -0800] rev 197
6614330: Node::dump(n) does not print full graph for specified depth.
Summary: A node is not processed in dump_nodes() if it was visited during processing previous inputs.
Reviewed-by: rasbold