404 Commits

Author SHA1 Message Date
Christian Thalinger
375527d84e 6829187: compiler optimizations required for JSR 292
C2 implementation for invokedynamic support.

Reviewed-by: kvn, never
2010-01-05 13:05:58 +01:00
Vladimir Kozlov
9be2e29930 6913075: EA identifies escape state incorrectly after 6895383 fix
EA incorrectly identifies escape state of an allocation passed as call argument.

Reviewed-by: never
2010-01-04 15:21:09 -08:00
Christian Thalinger
caf28727eb 6893081: method handle & invokedynamic code needs additional cleanup (post 6815692, 6858164)
During the work for 6829187 we have fixed a number of basic bugs which are logically grouped with 6815692 and 6858164 but which must be reviewed and pushed separately.

Reviewed-by: kvn, never
2010-01-04 18:38:08 +01:00
Vladimir Kozlov
00f583219f 6896727: nsk/logging/LoggingPermission/LoggingPermission/logperm002 fails with G1, EscapeAnalisys
Move instance store's memory users to corresponding memory slices when updating its memory edge.

Reviewed-by: never
2009-12-09 19:50:14 -08:00
Vladimir Kozlov
9f5ca0249d 6895383: JCK test throws NPE for method compiled with Escape Analysis
Add missing checks for MemBar nodes in EA.

Reviewed-by: never
2009-12-09 16:40:45 -08:00
Tom Rodriguez
dfbb0bf3e2 6908167: jbb2005, OptimizeStringConcat causes assert in EA
Reviewed-by: kvn
2009-12-08 16:27:21 -08:00
Changpeng Fang
8a9580b1a1 6901572: JVM 1.6.16 crash on loops: assert(has_node(i),"")
Skip the secondary induction variable handling if it is dead

Reviewed-by: never, kvn
2009-12-02 13:29:00 -08:00
Changpeng Fang
a3b6bcb4a8 6904191: OptimizeStringConcat should be product instead of experimental
Make OptimizeStringConcat a product VM option(contributed by never)

Reviewed-by: never
2009-11-25 12:09:02 -08:00
Tom Rodriguez
9db2092b1b 6892658: C2 should optimize some stringbuilder patterns
Reviewed-by: kvn, twisti
2009-11-12 09:24:21 -08:00
Vladimir Kozlov
39a98bab1d 6902036: WorldWind asserts on escape.cpp:1153: assert(addr->is_AddP(),"AddP required")
Remove the assert.

Reviewed-by: twisti
2009-11-19 14:32:23 -08:00
Tom Rodriguez
1fb2423873 6892079: live value must not be garbage failure after fix for 6854812
Reviewed-by: kvn
2009-11-11 23:39:17 -08:00
Vladimir Kozlov
c5744bd138 6896352: CTW fails hotspot/src/share/vm/opto/escape.cpp:1155
Always call C->get_alias_index(phase->type(address)) during parsing.

Reviewed-by: never
2009-11-04 14:43:50 -08:00
Vladimir Kozlov
9c1321eed3 6896370: CTW fails share/vm/opto/matcher.cpp:1475 "duplicating node that's already been matched"
Move DecodeN code outside the memory nodes only code.

Reviewed-by: never
2009-11-04 14:16:20 -08:00
Changpeng Fang
e3b5580ecc 6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash
Disable SuperWord optimization for unsafe read/write

Reviewed-by: kvn, phh
2009-10-30 10:12:52 -07:00
Changpeng Fang
c1eacdef5a Merge 2009-10-29 08:49:31 -07:00
Vladimir Kozlov
022d690049 6892186: SA does not dump debug info for scalar replaced objects
Implement scalar replaced objects debug info dump in SA.

Reviewed-by: twisti
2009-10-21 09:15:33 -07:00
Antonios Printezis
e57cedc5ed Merge 2009-10-20 11:28:25 -07:00
Changpeng Fang
35ca20c546 Merge 2009-10-16 14:08:44 -07:00
Y. Srinivas Ramakrishna
928ac69fcd 6888898: CMS: ReduceInitialCardMarks unsafe in the presence of cms precleaning
6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks)

Defer the (compiler-elided) card-mark upon a slow-path allocation until after the store  and before the next subsequent safepoint; G1 now answers yes to can_elide_tlab_write_barriers().

Reviewed-by: jcoomes, kvn, never
2009-10-16 02:05:46 -07:00
Vladimir Kozlov
998bcbaf4b 6889300: assert(i != k || is_new || i->outcnt() > 0, "don't return dead nodes")
PhiNode::Ideal() should return TOP for Phi node with no users.

Reviewed-by: never, jrose
2009-10-13 22:32:31 -07:00
Vladimir Kozlov
9a22acef05 6889656: assert(lo_lrg->lo_degree() || !lo_no_simplify,"Live range was lo-degree before coalesce
Restore the original code: uint i = _hi_degree.

Reviewed-by: never, jrose
2009-10-13 20:54:13 -07:00
John Coomes
7e76feaf42 6888953: some calls to function-like macros are missing semicolons
Reviewed-by: pbk, kvn
2009-10-11 16:19:25 -07:00
Erik Trimble
8cea3ed3b4 Merge 2009-10-09 15:18:52 -07:00
Tom Rodriguez
9b306d03ee 6885584: A particular class structure causes large allocation spike for jit
Reviewed-by: kvn
2009-10-07 15:38:37 -07:00
Vladimir Kozlov
ba951dbf36 6875959: CTW fails hotspot/src/share/vm/opto/reg_split.cpp:1087
To break spill ties choose bound live range over unbound to free register or one with smaller cost to spill.

Reviewed-by: never, jrose
2009-10-07 12:43:50 -07:00
Vladimir Kozlov
7e942d79d0 6883468: C2 compiler enters infinite loop in PhaseIterGVN::transform
Avoid ideal transformation ping-pong between AddPNode::Ideal() and CastX2PNode::Ideal().

Reviewed-by: cfang
2009-09-25 13:26:02 -07:00
Erik Trimble
652ccb8d21 Merge 2009-09-25 12:17:06 -07:00
Xiomara Jayasena
15f08eb80e 6884624: Update copyright year
Update copyright for files that have been modified in 2009 through Septermber

Reviewed-by: tbell, ohair
2009-09-22 14:06:10 -07:00
Vladimir Kozlov
25296d001b 6820514: meet not symmetric failure in ctw
Add missing instance_id meet.

Reviewed-by: never
2009-09-18 09:57:47 -07:00
Tom Rodriguez
7437f0b825 6854812: 6.0_14-b08 crashes with a SIGSEGV
Reviewed-by: kvn, twisti
2009-09-16 11:06:10 -07:00
John R Rose
47c425506d Merge 2009-09-15 22:50:12 -07:00
John R Rose
e261aecad8 6863023: need non-perm oops in code cache for JSR 292
Make a special root-list for those few nmethods which might contain non-perm oops.

Reviewed-by: twisti, kvn, never, jmasa, ysr
2009-09-15 21:53:47 -07:00
Vladimir Kozlov
c89a572b3e 6879362: assert(!klass_is_exact(),"only non-exact klass")
Do nothing for AddP node which has type not related to the type of allocated object.

Reviewed-by: never
2009-09-15 19:03:39 -07:00
Changpeng Fang
1cf5b7ae11 6879921: CTW failure jdk6_18/hotspot/src/share/vm/utilities/globalDefinitions.cpp:268
Filter out non-primitives before deciding whether two ops can be packed

Reviewed-by: kvn, never
2009-09-15 11:09:34 -07:00
Vladimir Kozlov
243514d483 6827605: new String intrinsics may prevent EA scalar replacement
6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2

Modify String intrinsic methods to pass char[] pointers instead of string oops.

Reviewed-by: never
2009-09-14 12:14:20 -07:00
Changpeng Fang
c492f4cde5 6877254: Server vm crashes with no branches off of store slice" when run with CMS and UseSuperWord(default)
Design StoreCMNode::Ideal to promote its oopStore input if the input is a MergeMem node

Reviewed-by: kvn, never
2009-09-14 09:49:54 -07:00
Vladimir Kozlov
e0519e7bbd 6880053: assert(alloc_obj->as_CheckCastPP()->type() != TypeInstPtr::NOTNULL)
Removed second CheckCastPP and use MembarCPUOrder after arraycopy to cloned object.

Reviewed-by: never
2009-09-10 18:18:06 -07:00
Vladimir Kozlov
515f68b637 6880574: C2 assert in escape.cpp:445 on linux-amd64
Look through chained AddP nodes in get_addp_base().

Reviewed-by: jrose
2009-09-10 10:36:24 -07:00
Vladimir Kozlov
f0f6f93143 6880052: SIGSEGV in GraphKit::null_check_common()
Check that a klass is not NULL before the is_loaded() call.

Reviewed-by: never
2009-09-08 16:56:31 -07:00
Vladimir Kozlov
d486b5f5fd 6875619: CTW fails with /hotspot/src/share/vm/opto/type.hpp
In load_array_length() cast array's type to TypeOopPtr when calling make_ideal_length() method.

Reviewed-by: never
2009-09-08 10:42:50 -07:00
Changpeng Fang
457be8ad49 6876276: assert(!is_visited,"visit only once")
Schedule the superword loads based on dependence constraints

Reviewed-by: kvn, never
2009-08-31 08:31:45 -07:00
Vladimir Kozlov
343b5b0bef 6875577: CTW fails with /hotspot/src/share/vm/opto/memnode.cpp
Fix do_null_check to check for unloaded klass for all oop pointers.

Reviewed-by: never, cfang
2009-08-28 11:19:33 -07:00
Changpeng Fang
ff9a1bddb5 6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit
Use PcDesc to keep record of the reexecute bit instead of using DebugInfoStreams

Reviewed-by: kvn, never, twisti
2009-08-20 12:42:57 -07:00
Vladimir Kozlov
15b6cdf897 6873799: enable escape analysis by default
Enable escape analysis by default

Reviewed-by: never
2009-08-19 19:05:18 -07:00
Tom Rodriguez
0217f432c2 6873777: FPU control word optimization still performed with SSE
Reviewed-by: kvn
2009-08-19 18:54:35 -07:00
Changpeng Fang
05c34e93bd 6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59)
Delay dead code elimination in set_req_X to make it safe

Reviewed-by: kvn, never
2009-08-17 12:11:06 -07:00
Tom Rodriguez
7d0158d27f Merge 2009-08-14 15:55:26 -07:00
Tom Rodriguez
398fffa232 6862863: C2 compiler fails in elide_copy()
Reviewed-by: kvn
2009-08-14 15:53:46 -07:00
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
ab7a29cdcc Merge 2009-08-06 09:37:26 -07:00