38 Commits

Author SHA1 Message Date
Tom Rodriguez
c94a076d34 6862956: PhaseIdealLoop should have a CFG verification mode
Reviewed-by: kvn, twisti
2009-08-14 00:02:12 -07:00
Vladimir Kozlov
8dd34cd52f 6860599: nodes limit could be reached during Output phase
Bailout compilation if nodes limit could be reached during Output phase.

Reviewed-by: never, twisti
2009-07-23 14:53:56 -07:00
John R Rose
6515225d49 6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics
Remove useless lazy evaluation of intrinsics; add LAST_COMPILER_INLINE to help categorize them

Reviewed-by: kvn
2009-07-21 16:56:06 -07:00
Vladimir Kozlov
69f9ddee90 6791178: Specialize for zero as the compressed oop vm heap base
Use zero based compressed oops if java heap is below 32gb and unscaled compressed oops if java heap is below 4gb.

Reviewed-by: never, twisti, jcoomes, coleenp
2009-03-12 10:37:46 -07:00
Christian Thalinger
89cea91c48 6797305: Add LoadUB and LoadUI opcode class
Add a LoadUB (unsigned byte) and LoadUI (unsigned int) opcode class so we have these load optimizations in the first place and do not need to handle them in the matcher.

Reviewed-by: never, kvn
2009-03-09 03:17:11 -07:00
Christian Thalinger
05d1de7727 6810672: Comment typos
I have collected some typos I have found while looking at the code.

Reviewed-by: kvn, never
2009-02-27 13:27:09 -08:00
Christian Thalinger
3b8452da93 6796746: rename LoadC (char) opcode class to LoadUS (unsigned short)
Renaming LoadC to LoadUS would round up the planned introduction of LoadUB and LoadUI.

Reviewed-by: phh, kvn
2009-01-26 16:22:12 +01:00
Vladimir Kozlov
744c80add4 6787050: assert(n->in(0) == 0L,"no control") with UseCompressedOops on sparcv9
Relax the assert for Sparc.

Reviewed-by: never
2008-12-18 11:26:22 -08:00
Vladimir Kozlov
29488f1216 6782820: Server VM fails with "unhandled implicit exception in compiled code"
Restore the code which sets a control edge for a klass load node.

Reviewed-by: never
2008-12-16 12:23:39 -08:00
Vladimir Kozlov
f2f18a01e5 6775880: EA +DeoptimizeALot: assert(mon_info->owner()->is_locked(),"object must be locked now")
Create new "eliminated" BoxLock node for monitor debug info when corresponding locks are eliminated.

Reviewed-by: never
2008-12-03 13:41:37 -08:00
Vladimir Kozlov
7aae40a95f 6462850: generate biased locking code in C2 ideal graph
Inline biased locking code in C2 ideal graph during macro nodes expansion

Reviewed-by: never
2008-11-07 09:29:38 -08:00
Chuck Rasbold
0e63b7609a 6743900: frequency based block layout
Post-register allocation pass that drives block layout by edge frequencies

Reviewed-by: never, kvn
2008-11-06 14:59:10 -08:00
Tom Rodriguez
7bcfb5965d 6764622: IdealGraphVisualizer fixes
Reviewed-by: rasbold, jrose
2008-10-30 17:08:48 -07:00
Vladimir Kozlov
b15796424e 6747051: Improve code and implicit null check generation for compressed oops
Push DecodeN node below the Null check to the non-null path to use the mach node without 0 test.

Reviewed-by: rasbold, never
2008-09-23 12:29:06 -07:00
Tom Rodriguez
4b1e242299 6384206: Phis which are later unneeded are impairing our ability to inline based on static types
Reviewed-by: rasbold, jrose
2008-09-17 12:59:52 -07:00
Chuck Rasbold
2cd5cbcaca Merge 2008-09-15 09:58:26 -07:00
Vladimir Kozlov
659ca734bb 6706829: Compressed Oops: add debug info for narrow oops
Add support for narrow oops in debug info to avoid decoding.

Reviewed-by: rasbold, never
2008-09-10 18:23:32 -07:00
Coleen Phillimore
83e7d32161 6741004: UseLargePages + UseCompressedOops breaks implicit null checking guard page
Turn off c2 implicit null checking on windows and large pages specified.

Reviewed-by: jrose, xlu
2008-09-02 15:18:26 -04:00
Vladimir Kozlov
897278fce0 6731641: assert(m->adr_type() == mach->adr_type(),"matcher should not change adr type")
Fixed few addP node type and narrow oop type problems.

Reviewed-by: rasbold, never
2008-08-01 10:06:45 -07:00
Vladimir Kozlov
50c4a23cac 6726999: nsk/stress/jck12a/jck12a010 assert(n != null,"Bad immediate dominator info.")
Escape Analysis fixes.

Reviewed-by: never, rasbold
2008-07-28 17:12:52 -07:00
Vladimir Kozlov
fae39068e8 6723160: Nightly failure: Error: meet not symmetric
Add missing _instance_id settings and other EA fixes.

Reviewed-by: rasbold
2008-07-16 16:04:39 -07:00
Vladimir Kozlov
c5b951e990 Merge 2008-07-11 12:19:29 -07:00
Erik Trimble
2d6f42d18c Merge 2008-07-11 01:14:44 -07:00
Vladimir Kozlov
696e17c0ba 6684714: Optimize EA Connection Graph build performance
Switch on EA by default, optimize Connection Graph construction

Reviewed-by: rasbold, never
2008-07-03 18:02:47 -07:00
Xiomara Jayasena
c96a95c4b8 6719955: Update copyright year
Update copyright year for files that have been modified in 2008

Reviewed-by: ohair, tbell
2008-07-02 12:55:16 -07:00
Vladimir Kozlov
4213e62fb7 6716441: error in meet with +DoEscapeAnalysis
Set instance_id to InstanceBot for InstPtr->meet(AryPtr) when types are not related.

Reviewed-by: jrose, never
2008-06-26 13:34:00 -07:00
Tom Rodriguez
873da1efe8 6718676: putback for 6604014 is incomplete
Reviewed-by: kvn, jrose
2008-06-24 16:00:14 -07:00
Vladimir Kozlov
a671e7c7b5 6710487: More than half of JDI Regression tests hang with COOPs in -Xcomp mode
Remove DecodeNNode::decode() and EncodePNode::encode() methods.

Reviewed-by: rasbold, never
2008-06-24 10:43:29 -07:00
Vladimir Kozlov
dbdeade3b7 6709093: Compressed Oops: reduce size of compiled methods
Exclude UEP size from nmethod code size and use narrow klass oop to load prototype header.

Reviewed-by: jrose, never
2008-06-05 13:02:51 -07:00
Vladimir Kozlov
a1f50998ae 6705887: Compressed Oops: generate x64 addressing and implicit null checks with narrow oops
Generate addresses and implicit null checks with narrow oops to avoid decoding.

Reviewed-by: jrose, never
2008-05-29 12:04:14 -07:00
Vladimir Kozlov
76035424de 6703890: Compressed Oops: add LoadNKlass node to generate narrow oops (32-bits) compare instructions
Add LoadNKlass and CMoveN nodes, use CmpN and ConN nodes to generate narrow oops compare instructions.

Reviewed-by: never, rasbold
2008-05-21 13:46:23 -07:00
Vladimir Kozlov
757229db71 6695810: null oop passed to encode_heap_oop_not_null
Fix several problems in C2 related to Escape Analysis and Compressed Oops.

Reviewed-by: never, jrose
2008-05-21 10:45:07 -07:00
Tom Rodriguez
6f63c6e88b 6663848: assert(i < Max(),"oob") in C2 with -Xcomp
NeverBranchNodes aren't handled properly

Reviewed-by: kvn, sgoldman, rasbold, jrose
2008-04-24 11:13:03 -07:00
Coleen Phillimore
4a831d45f0 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv

Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
2008-04-13 17:43:42 -04:00
John R Rose
0d27a8639f 6667042: PrintAssembly option does not work without special plugin
Remove old private plugin interface, simplify, rework old plugin to use unchanged Gnu sources

Reviewed-by: kvn, rasbold
2008-04-02 12:09:59 -07:00
Vladimir Kozlov
fc0117cb9a 6674588: (Escape Analysis) Improve Escape Analysis code
Current EA code has several problems which have to be fixed.

Reviewed-by: jrose, sgoldman
2008-03-14 15:26:33 -07:00
Vladimir Kozlov
bf7f5e1887 6667610: (Escape Analysis) retry compilation without EA if it fails
During split unique types EA could exceed nodes limit and fail the method compilation.

Reviewed-by: rasbold
2008-03-06 10:30:17 -08:00
J. Duke
8153779ad3 Initial load 2007-12-01 00:00:00 +00:00