Christian Thalinger
12901d0e5b
7023639: JSR 292 method handle invocation needs a fast path for compiled code
...
6984705: JSR 292 method handle creation should not go through JNI
Remove assembly code for JDK 7 chained method handles
Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, kvn, mhaupt
2012-07-24 10:51:00 -07:00
Vladimir Kozlov
eb4a860bc3
6924259: Remove String.count/String.offset
...
Allow a version of String class that doesn't have count and offset fields.
Reviewed-by: never, coleenp
2012-05-14 09:36:00 -07:00
Vladimir Kozlov
e6015c7c26
7143491: G1 C2 CTW: assert(p2x->outcnt() == 2) failed: expects 2 users: Xor and URShift nodes
...
Adjust the assert and code in eliminate_card_mark() method for case when stored value is NULL.
Reviewed-by: iveresov, never
2012-02-07 16:33:43 -08:00
Roland Westrelin
97439fb4ff
7121140: Allocation paths require explicit memory synchronization operations for RMO systems
...
Adds store store barrier after initialization of header and body of objects.
Reviewed-by: never, kvn
2011-12-20 16:56:50 +01:00
Stefan Karlsson
e057d60ca1
7118863: Move sizeof(klassOopDesc) into the *Klass::*_offset_in_bytes() functions
...
Moved sizeof(klassOopDesc), changed the return type to ByteSize and removed the _in_bytes suffix.
Reviewed-by: never, bdelsart, coleenp, jrose
2011-12-07 11:35:03 +01:00
Roland Westrelin
b543a07b9a
7074017: Introduce MemBarAcquireLock/MemBarReleaseLock nodes for monitor enter/exit code paths
...
Replace MemBarAcquire/MemBarRelease nodes on the monitor enter/exit code paths with new MemBarAcquireLock/MemBarReleaseLock nodes
Reviewed-by: kvn, twisti
2011-08-02 18:36:40 +02:00
Vladimir Kozlov
1ac79543d0
5091921: Sign flip issues in loop optimizer
...
Fix integer overflow problem in the code generated by loop optimizer.
Reviewed-by: never
2011-05-04 13:12:42 -07:00
Vladimir Kozlov
6d0283ed8e
Merge
2011-04-29 11:15:30 -07:00
Tom Rodriguez
2126589fd0
7029167: add support for conditional card marks
...
Reviewed-by: iveresov, kvn
2011-04-27 15:40:36 -07:00
Tom Rodriguez
16d6414619
7030715: JSR 292 JRuby test/test_super_call_site_caching.rb asserts with +DoEscapeAnalysis
...
Reviewed-by: twisti
2011-04-25 16:25:58 -07:00
Vladimir Kozlov
abc5f94df7
7026700: regression in 6u24-rev-b23: Crash in C2 compiler in PhaseIdealLoop::build_loop_late_post
...
Memory slices should be always created for non-static fields after allocation
Reviewed-by: never
2011-04-20 18:29:35 -07:00
John Cuthbertson
7c844aba67
Merge
2011-04-14 13:45:41 -07:00
John R Rose
41745904a3
Merge
2011-04-09 21:16:12 -07:00
John Cuthbertson
a08e1ce906
7009266: G1: assert(obj->is_oop_or_null(true )) failed: Error
...
A referent object that is only weakly reachable at the start of concurrent marking but is re-attached to the strongly reachable object graph during marking may not be marked as live. This can cause the reference object to be processed prematurely and leave dangling pointers to the referent object. Implement a read barrier for the java.lang.ref.Reference::referent field by intrinsifying the Reference.get() method, and intercepting accesses though JNI, reflection, and Unsafe, so that when a non-null referent object is read it is also logged in an SATB buffer.
Reviewed-by: kvn, iveresov, never, tonyp, dholmes
2011-04-07 09:53:20 -07:00
Erik Trimble
c9e484d473
7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass
...
Update the copyright to be 2010 on all changed files in OpenJDK
Reviewed-by: ohair
2011-04-05 14:12:31 -07:00
Vladimir Kozlov
68f1177f59
7032314: Allow to generate CallLeafNoFPNode in IdealKit
...
Added CallLeafNoFPNode generation to IdealKit. Added i_o synchronization.
Reviewed-by: never
2011-04-02 09:49:27 -07:00
Vladimir Kozlov
3de260da41
7008866: Missing loop predicate for loop with multiple entries
...
Add predicates when loop head bytecode is parsed instead of when back branch bytecode is parsed.
Reviewed-by: never
2011-03-21 11:28:14 -07:00
Igor Veresov
ab725dba1d
7003554: (tiered) assert(is_null_object() || handle() != NULL) failed: cannot embed null pointer
...
C1 with profiling doesn't check whether the MDO has been really allocated, which can silently fail if the perm gen is full. The solution is to check if the allocation failed and bailout out of inlining or compilation.
Reviewed-by: kvn, never
2010-12-02 17:21:12 -08:00
Stefan Karlsson
8006fe8f75
6989984: Use standard include model for Hospot
...
Replaced MakeDeps and the includeDB files with more standardized solutions.
Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Vladimir Kozlov
606ee163ca
7000491: assert(false) failed: should be optimized out in SharedRuntime::g1_wb_pre
...
Wrong value type is used for NULL store when clearing the detail message of the preallocated exception object.
Reviewed-by: never, iveresov
2010-11-18 09:52:48 -08:00
Tom Rodriguez
0ecb9e3298
6965815: OptimizeStringConcat: assert(!q->is_MergeMem()) failed with specjbb2000
...
Reviewed-by: kvn
2010-09-08 20:28:57 -07:00
Christian Thalinger
a4b2fe3b1c
6978355: renaming for 6961697
...
This is the renaming part of 6961697 to keep the actual changes small for review.
Reviewed-by: kvn, never
2010-08-25 05:27:54 -07:00
John R Rose
c7e50e8305
6912064: type profiles need to be exploited more for dynamic language support
...
Reviewed-by: kvn
2010-08-20 23:40:30 -07:00
Vladimir Kozlov
21f481e5dd
6959430: Make sure raw loads have control edge
...
Check that raw loads have control edge
Reviewed-by: never, twisti
2010-06-15 18:07:27 -07:00
Jon Masamitsu
428d02d5d7
Merge
2010-06-10 08:27:35 -07:00
John Cuthbertson
6d8002eb26
6953058: G1: A bigapp crashes with SIGSEGV in compiled code
...
In C2's G1 post write barrier, the loads of the buffer and index fields from the DirtyCardQueue structure may be moved across a safepoint. Use the current value of "control" in the C2 IR to limit how far these loads can move.
Reviewed-by: never, iveresov, kvn
2010-06-07 17:46:04 -07:00
Erik Trimble
ba7c173659
6941466: Oracle rebranding changes for Hotspot repositories
...
Change all the Sun copyrights to Oracle copyright
Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
Tom Rodriguez
eb534d777a
6943485: JVMTI always on capabilities change code generation too much
...
Reviewed-by: twisti, dcubed
2010-04-26 23:59:45 -07:00
Vladimir Kozlov
9110d86267
Merge
2010-02-12 15:27:36 -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
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
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
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
Tom Rodriguez
dfbb0bf3e2
6908167: jbb2005, OptimizeStringConcat causes assert in EA
...
Reviewed-by: kvn
2009-12-08 16:27:21 -08:00
Tom Rodriguez
9db2092b1b
6892658: C2 should optimize some stringbuilder patterns
...
Reviewed-by: kvn, twisti
2009-11-12 09:24:21 -08: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
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
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
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
ae00753bf7
6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot
...
Developed a reexecute logic for the interpreter to reexecute the bytecode when deopt happens
Reviewed-by: kvn, never, jrose, twisti
2009-07-31 17:12:33 -07:00
Vladimir Kozlov
c3efa899b6
6851742: (EA) allocation elimination doesn't work with UseG1GC
...
Fix eliminate_card_mark() to eliminate G1 pre/post barriers.
Reviewed-by: never
2009-07-16 14:10:42 -07:00
Tom Rodriguez
da11e65fa4
6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer")
...
Reviewed-by: kvn
2009-07-01 12:22:23 -07:00
Tom Rodriguez
3bdd70fe18
6818666: G1: Type lost in g1 pre-barrier
...
Reviewed-by: kvn
2009-06-26 13:03:29 -07:00
Vladimir Kozlov
34ee921399
6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits
...
Cache Jvmti and DTrace flags used by Compiler.
Reviewed-by: never
2009-05-08 10:44:20 -07:00
Changpeng Fang
04fdef79fa
6589834: deoptimization problem with -XX:+DeoptimizeALot
...
Relocate the stack pointer adjustment to where uncommon_trap is actually inserted for new_array.
Reviewed-by: kvn, jrose
2009-04-23 14:04:24 -07:00
John R Rose
34c1d72421
6655646: dynamic languages need dynamically linked call sites
...
Invokedynamic instruction (JSR 292 RI)
Reviewed-by: twisti, never
2009-04-21 23:21:04 -07:00
Vladimir Kozlov
41463d1d3a
Merge
2009-03-19 09:13:24 -07:00
John R Rose
b8dbe8d8f6
6813212: factor duplicated assembly code for general subclass check (for 6655638)
...
Code in interp_masm, stubGenerator, c1_LIRAssembler, and AD files moved into MacroAssembler.
Reviewed-by: kvn
2009-03-13 18:39:22 -07:00
Erik Trimble
8d6035660e
Merge
2009-03-12 18:16:36 -07:00