139 Commits

Author SHA1 Message Date
Vladimir Kozlov
2f2589d2dc 6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly")
Move the CreateEx up before each round of IFG construction

Reviewed-by: never, phh
2009-02-06 13:31:03 -08:00
Vladimir Kozlov
94a461f4cb 6799693: Server compiler leads to data corruption when expression throws an Exception
Use merged memory state for an allocation's slow path.

Reviewed-by: never
2009-02-05 14:43:58 -08:00
Tom Rodriguez
67f20d82c9 6442502: assert(bits,"Use TypePtr for NULL") on linux-x86
Reviewed-by: kvn
2009-02-04 23:17:38 -08:00
Christian Thalinger
ecbdf3bb83 6795362: 32bit server compiler leads to wrong results on solaris-x86
The C2 compiler leads to wrong results on solaris-i486 (32-bit) for a testcase given in the CR.

Reviewed-by: never, rasbold
2009-02-03 01:39:12 -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
ae8aa00398 6794939: assert(_base == OopPtr,"subclass must override cast_to_ptr_type")
Fix the assert in TypeKlassPtr::cast_to_ptr_type().

Reviewed-by: never
2009-01-21 11:18:38 -08:00
Tom Rodriguez
532cc3cef8 6788347: C2Compiler crash 6u7
Reviewed-by: kvn
2009-01-14 14:12:00 -08:00
Tom Rodriguez
d9a391aad9 Merge 2009-01-13 14:02:19 -08:00
Tom Rodriguez
a3d528cc30 6791132: bad control in autobox split code
Reviewed-by: kvn
2009-01-13 11:43:20 -08:00
Vladimir Kozlov
78f5dc395e 6784930: server jvm fails with assert(!n->is_SpillCopy(),"")
Set minimum block frequency MIN_BLOCK_FREQUENCY 1.e-35f.

Reviewed-by: never, rasbold
2009-01-13 11:10:00 -08:00
Vladimir Kozlov
49ee6acaa2 6782232: assert("CreateEx must be first instruction in block" )
Add the missing check for CreateEx. Add new notproduct flag VerifyRegisterAllocator.

Reviewed-by: never
2009-01-07 11:04:45 -08:00
Erik Trimble
ac1f463988 Merge 2008-12-20 09:58:36 -08: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
Xiomara Jayasena
99f0eac1a2 6785258: Update copyright year
Update copyright for files that have been modified starting July 2008 to Dec 2008

Reviewed-by: katleman, ohair, tbell
2008-12-15 16:55:11 -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
43051c98f3 6773078: UseCompressedOops: assert(kid == 0L || s->_leaf->in(0) == 0L,"internal operands have no control")
Don't set the control edge of a klass load node.

Reviewed-by: never
2008-11-18 14:47:36 -08:00
Vladimir Kozlov
893d1c4148 6766316: assert(!nocreate,"Cannot build a phi for a block already parsed.")
Don't use the invariant local information if there are irreducible loops.

Reviewed-by: never
2008-11-18 12:40:28 -08:00
Vladimir Kozlov
f2c8d25c73 6772413: code cleanup
Removed lines in adm64.make with interpret.o and moved few constant strings from header files.

Reviewed-by: never
2008-11-18 12:31:53 -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
Tom Rodriguez
2c3b8ec969 6761594: framesize rounding code rounds using wrong units leading to slightly oversized frames
Reviewed-by: rasbold, kvn
2008-11-06 20:00:03 -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
Tom Rodriguez
429a95440a 6754519: don't emit flag fixup for NaN when condition being tested doesn't need it
Reviewed-by: kvn, rasbold
2008-10-28 09:31:30 -07:00
Tom Rodriguez
bc7e37f4df Merge 2008-10-21 11:21:45 -07:00
Chuck Rasbold
0dac6431d2 6717150: improper constant folding of subnormal strictfp multiplications and divides
Suppress constant folding of double divides and multiplications on ia32

Reviewed-by: never
2008-10-14 06:58:58 -07:00
Erik Trimble
50964694fe Merge 2008-10-07 11:01:35 -07:00
Tom Rodriguez
043fde10e5 6743188: incomplete fix for 6700047 C2 failed in idom_no_update
Reviewed-by: rasbold, kvn
2008-10-03 13:58:20 -07:00
Xiomara Jayasena
76df5ec473 6754988: Update copyright year
Update for files that have been modified starting July 2008

Reviewed-by: ohair, tbell
2008-10-02 19:58:19 -07:00
Vladimir Kozlov
adce6fc49a 6667595: Set probability FAIR for pre-, post- loops and ALWAYS for main loop
Fix loop's probability. Add optimizations to avoid spilling. Change InlineSmallCode to product flag.

Reviewed-by: never
2008-10-02 08:37:44 -07:00
Chuck Rasbold
453d1a42b0 Merge 2008-09-30 15:53:55 -07:00
Chuck Rasbold
42be28cece 6750588: assert(lrg._area >= 0,"negative spill area") running NSK stmp0101 test
Handle NaN costs more carefully

Reviewed-by: kvn, never
2008-09-24 15:56:36 -07:00
Andrey Petrusenko
fe4cab6eeb Merge 2008-09-24 15:34:06 -04: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
Andrey Petrusenko
1d67e1d25c Merge 2008-09-17 19:59:35 +04:00
Chuck Rasbold
eee15b163e 6711100: 64bit fastdebug server vm crashes with assert(_base == Int,"Not an Int")
Insert CastII nodes to narrow type of load_array_length() node

Reviewed-by: never, kvn
2008-09-17 08:29:17 -07:00
Andrey Petrusenko
b6aabd98fc Merge 2008-09-17 16:49:18 +04:00
Chuck Rasbold
2cd5cbcaca Merge 2008-09-15 09:58:26 -07:00
Karen Kinnear
da33a7de28 Merge 2008-09-11 09:02:02 -04:00
Vladimir Kozlov
9812da470c 6746907: Improve implicit null check generation
Add missing implicit null check cases.

Reviewed-by: never
2008-09-10 20:44:47 -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
Vladimir Kozlov
63c98ed888 6746892: Register Allocator does not process a data phi with one unique input correctly
Always look for the existing phi for a processed live_range.

Reviewed-by: rasbold
2008-09-10 14:29:32 -07:00
Karen Kinnear
de1b872a4e Merge 2008-09-10 12:31:26 -04:00
Vladimir Kozlov
8174b8b497 6676462: JVM sometimes would suddenly consume significant amount of memory
Add asserts with dead loop checks in AddNode::Ideal().

Reviewed-by: never
2008-09-05 13:33:55 -07:00
Tom Rodriguez
3d9b153464 6738933: assert with base pointers must match with compressed oops enabled
Reviewed-by: kvn, rasbold
2008-09-02 15:03:05 -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
Tom Rodriguez
aba715ae04 6732698: crash with dead code from compressed oops in gcm
Reviewed-by: rasbold
2008-08-28 23:03:55 -07:00
Chuck Rasbold
bdd62705f2 6611837: block frequency is zero
Insert_goto_at should set frequency for newly created blocks

Reviewed-by: never
2008-08-28 10:22:12 -07:00
Vladimir Kozlov
8ab0a4d7a9 6732732: CTW with EA: assert(n != 0L,"Bad immediate dominator info.")
Missing edge to a call's return value in EA Connection Graph.

Reviewed-by: never
2008-08-27 16:33:34 -07:00