Christian Thalinger
ffec4c00c4
6919934: JSR 292 needs to support x86 C1
...
This implements JSR 292 support for C1 x86.
Reviewed-by: never, jrose, kvn
2010-03-09 20:16:19 +01:00
Tom Rodriguez
e904069b51
6930398: fix for return address locals in OSR entries uses wrong test
...
Reviewed-by: kvn
2010-03-01 12:12:35 -08:00
Vladimir Kozlov
667e7ff0c0
6930116: loop predication code does not handle If nodes with only one projection
...
Add check for iff->outcnt() < 2.
Reviewed-by: never
2010-02-25 22:58:43 -08:00
Vladimir Kozlov
8554996b9b
6930035: C2 type system incorrectly handles case j.l.Object->meet(constant AryPtr)
...
Add missing code.
Reviewed-by: never
2010-02-25 15:55:47 -08:00
Tom Rodriguez
0ab4fb9e37
6915557: assert(_gvn.type(l)->higher_equal(type),"must constrain OSR typestate") with debug build
...
Reviewed-by: kvn
2010-02-25 11:38:50 -08:00
Tom Rodriguez
fbd5ca617d
6927049: assert(is_Loop(),"invalid node class")
...
Reviewed-by: kvn
2010-02-19 13:06:11 -08:00
Vladimir Kozlov
fa2d360cd5
6910664: C2: java/util/Arrays/Sorting.java fails with DeoptimizeALot flag
...
Matcher::float_in_double should be true only when FPU is used for floats.
Reviewed-by: never, twisti
2010-02-19 10:04:16 -08:00
Tom Rodriguez
3e1688a8cd
6663854: assert(n != __null,"Bad immediate dominator info.") in C2 with -Xcomp
...
Reviewed-by: kvn
2010-02-18 15:05:10 -08:00
Christian Thalinger
0c605ed991
6926782: CodeBuffer size too small after 6921352
...
After 6921352 the CodeBuffer size was too small.
Reviewed-by: kvn, never
2010-02-18 11:35:41 +01:00
Tom Rodriguez
51fc36cc9a
6877221: Endless deoptimizations in OSR nmethod
...
Reviewed-by: kvn
2010-02-16 20:07:48 -08:00
Vladimir Kozlov
9110d86267
Merge
2010-02-12 15:27:36 -08:00
Vladimir Kozlov
1a1e145498
6924097: assert((_type == Type::MEMORY) == (_adr_type != 0),"adr_type for memory phis only")
...
Use PhiNode::make_blank(r, n) method to construct the phi.
Reviewed-by: never
2010-02-09 10:21:06 -08:00
Vladimir Kozlov
22409a5704
6910618: C2: Error: assert(d->is_oop(),"JVM_ArrayCopy: dst not an oop")
...
Mark in PcDesc call sites which return oop and save the result oop across objects reallocation during deoptimization.
Reviewed-by: never
2010-02-09 01:31:13 -08:00
Vladimir Kozlov
3f7a94c3f2
6910605: C2: NullPointerException/ClassCaseException is thrown when C2 with DeoptimizeALot is used
...
Set the reexecute bit for runtime calls _new_array_Java when they used for _multianewarray bytecode.
Reviewed-by: never
2010-02-08 12:20:09 -08:00
Vladimir Kozlov
2fd8d35905
6923002: assert(false,"this call site should not be polymorphic")
...
Clear the total count when a receiver information is cleared.
Reviewed-by: never, jrose
2010-02-07 12:15:06 -08:00
Tom Rodriguez
c1be36be1b
6920293: OptimizeStringConcat causing core dumps
...
Reviewed-by: kvn, twisti
2010-02-05 11:07:40 -08:00
Andrei Pangin
134e70e53b
Merge
2010-02-04 15:50:59 -08:00
Tom Rodriguez
22ce62f2d1
6921992: failure in verify scheduling after 6792161
...
Reviewed-by: kvn
2010-02-04 11:16:23 -08:00
Vladimir Kozlov
0c27c5537e
6614597: Performance variability in jvm2008 xml.validation
...
Fix incorrect marking of methods as not compilable.
Reviewed-by: never
2010-02-01 16:49:49 -08:00
Tom Deneau
f23b68b367
6902182: 4/4 Starting with jdwp agent should not incur performance penalty
...
Rename can_post_exceptions support to can_post_on_exceptions. Add support for should_post_on_exceptions flag to permit per JavaThread optimizations.
Reviewed-by: never, kvn, dcubed
2010-02-01 17:35:05 -07:00
Christian Thalinger
918c7a2e33
6921352: JSR 292 needs its own deopt handler
...
We need to introduce a new MH deopt handler so we can easily determine if the deopt happened at a MH call site or not.
Reviewed-by: never, jrose
2010-02-01 19:29:46 +01:00
Tom Rodriguez
8cc63249e9
6916644: C2 compiler crash on x86
...
Reviewed-by: kvn, twisti
2010-01-29 22:51:41 -08:00
Eric Caspole
a57d68e35b
4360113: Evict nmethods when code cache gets full
...
Speculatively unload the oldest nmethods when code cache gets full.
Reviewed-by: never, kvn
2010-01-29 09:27:22 -08:00
Christian Thalinger
9aa675b7e6
6921339: backout 6917766
...
Reviewed-by: mr
2010-01-29 08:33:24 -08:00
Christian Thalinger
fbc43afae6
6917766: JSR 292 needs its own deopt handler
...
We need to introduce a new MH deopt handler so we can easily determine if the deopt happened at a MH call site or not.
Reviewed-by: never, jrose
2010-01-29 12:13:05 +01:00
Tom Rodriguez
07c442542c
6792161: assert("No dead instructions after post-alloc")
...
Reviewed-by: kvn
2010-01-28 20:41:37 -08:00
Tom Rodriguez
0b2600abcd
6920346: G1: "must avoid base_memory and AliasIdxTop"
...
Reviewed-by: kvn
2010-01-28 16:28:28 -08:00
Vladimir Kozlov
0ebcf0d492
6894807: No ClassCastException for HashAttributeSet constructors if run with -Xcomp
...
Return interface klass type if it is exact.
Reviewed-by: never
2010-01-21 10:07:59 -08:00
Igor Veresov
ae60c05fee
Merge
2010-01-20 12:54:25 -08:00
Y. Srinivas Ramakrishna
d327b24c06
Merge
2010-01-16 23:51:50 -08:00
Tom Rodriguez
72d0f638c7
6849984: Value methods for platform dependent math functions constant fold incorrectly
...
Reviewed-by: kvn, twisti
2010-01-15 11:53:33 -08:00
Y. Srinivas Ramakrishna
331512606a
6896647: card marks can be deferred too long
...
Deferred card marks are now flushed during the gc prologue. Parallel[Scavege,OldGC] and SerialGC no longer defer card marks generated by COMPILER2 as a result of ReduceInitialCardMarks. For these cases, introduced a diagnostic option to defer the card marks, only for the purposes of testing and diagnostics. CMS and G1 continue to defer card marks. Potential performance concern related to single-threaded flushing of deferred card marks in the gc prologue will be addressed in the future.
Reviewed-by: never, johnc
2010-01-13 15:26:39 -08:00
Changpeng Fang
815db4fcba
6894779: Loop Predication for Loop Optimizer in C2
...
Loop predication implementation
Reviewed-by: never, kvn
2010-01-12 14:37:35 -08:00
John R Rose
48bd193a36
Merge
2010-01-08 18:27:20 -08:00
John R Rose
6fbdf208fc
6912063: inlining parameters need to be adjusted for some uses of the JVM
...
Put all inline-related switches into product mode, to allow tuning by dynamic language implementors.
Reviewed-by: twisti, kvn
2010-01-08 13:58:49 -08:00
Vladimir Kozlov
eca996c10f
6910484: incorrect integer optimization (loosing and op-r in a given example)
...
Remove AND operation only if mask is equal to shift.
Reviewed-by: never
2010-01-08 09:51:24 -08:00
Kevin Brown
7548b8eed5
6915110: IfNode::up_one_dom moves beyond RootNode bug in src/share/vm/opto/ifnode.cpp
...
Check RootNode before check Loop in IfNode::up_one_dom().
Reviewed-by: never
2010-01-08 09:42:31 -08:00
Christian Thalinger
e5fb2ad1c4
6914206: change way of permission checking for generated MethodHandle adapters
...
Put generated MH adapter in InvokeDynamic/MethodHandle classes to be able to indentify them easily in the compiler.
Reviewed-by: kvn, never, jrose
2010-01-08 11:09:46 +01:00
Vladimir Kozlov
8da8433a6f
6912517: JIT bug compiles out (and stops running) code that needs to be run. Causes NPE
...
Add missing check that value is used in memory expression in instructions with embedded load.
Reviewed-by: never, jrose
2010-01-07 16:26:31 -08:00
Tom Rodriguez
98449cf2c2
6914300: ciEnv should export all well known classes
...
Reviewed-by: kvn, twisti
2010-01-06 14:22:39 -08:00
Christian Thalinger
47f2433a58
6893268: additional dynamic language related optimizations in C2
...
C2 needs some additional optimizations to be able to handle MethodHandle invokes and invokedynamic instructions at the best performance.
Reviewed-by: kvn, never
2010-01-05 15:21:25 +01:00
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