Vladimir Kozlov
c3a0e80e0b
Merge
2014-01-28 12:25:34 -08:00
Mikael Vidstedt
a0da47fd66
8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
...
Copyright year updated for files modified during 2013
Reviewed-by: twisti, iveresov
2013-12-24 11:48:39 -08:00
Goetz Lindenmaier
13b13f5259
8024921: PPC64 (part 113): Extend Load and Store nodes to know about memory ordering
...
Add a field to C2 LoadNode and StoreNode classes which indicates whether the load/store should do an acquire/release on platforms which support it.
Reviewed-by: kvn
2013-11-15 11:05:32 -08:00
Erik Helin
30f059b5fc
8015107: NPG: Use consistent naming for metaspace concepts
...
Reviewed-by: coleenp, mgerdin, hseigel
2013-08-12 17:37:02 +02:00
Vladimir Kozlov
ccfb92c6a9
8012972: Incremental Inlining should support scalar replaced object in debug info
...
Store in _first_index not absolute index but an index relative to the last (youngest) jvms->_scloff value
Reviewed-by: roland, twisti
2013-08-23 11:41:37 -07:00
Vladimir Kozlov
d7176bf7f8
8014189: JVM crash with SEGV in ConnectionGraph::record_for_escape_analysis()
...
Add NULL checks and asserts for Type::make_ptr() returned value.
Reviewed-by: twisti
2013-05-09 17:28:04 -07:00
Vladimir Kozlov
b4977e887a
6934604: enable parts of EliminateAutoBox by default
...
Resurrected autobox elimination code and enabled part of it by default.
Reviewed-by: roland, twisti
2013-05-08 15:08:01 -07:00
Roland Westrelin
748083843a
8009460: C2compiler crash in machnode::in_regmask(unsigned int)
...
7121140 may not correctly break the Allocate -> MemBarStoreStore link
Reviewed-by: kvn
2013-03-06 10:28:38 +01:00
Vladimir Kozlov
9e0c61f822
6896617: Optimize sun.nio.cs.ISO_8859_1$Encode.encodeArrayLoop() on x86
...
Use SSE4.2 and AVX2 instructions for encodeArray intrinsic.
Reviewed-by: roland
2013-01-22 15:34:16 -08:00
Bharadwaj Yadavalli
2d2532e740
7092905: C2: Keep track of the number of dead nodes
...
Keep an (almost) accurate running count of the reachable (live) flow graph nodes.
Reviewed-by: kvn, twisti, jrose, vlivanov
2012-11-27 17:24:15 -08:00
Roland Westrelin
61eb5a0549
7054512: Compress class pointers after perm gen removal
...
Support of compress class pointers in the compilers.
Reviewed-by: kvn, twisti
2012-10-09 10:11:38 +02:00
Bharadwaj Yadavalli
d5d2e78faa
7193318: C2: remove number of inputs requirement from Node's new operator
...
Deleted placement new operator of Node - node(size_t, Compile *, int).
Reviewed-by: kvn, twisti
2012-09-27 09:38:42 -07:00
Jon Masamitsu
5c58d27aac
6964458: Reimplement class meta-data storage to use native memory
...
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04:00
Zhengyu Gu
a39b17624a
6995781: Native Memory Tracking (Phase 1)
...
7151532: DCmd for hotspot native memory tracking
Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd
Reviewed-by: acorn, coleenp, fparain
2012-06-28 17:03:16 -04:00
Vlaidmir Ivanov
dd85e2f356
7173340: C2: code cleanup: use PhaseIterGVN::replace_edge(Node*, int, Node*) where applicable
...
Replace frequent C2 optimizer code patterns with new methods calls
Reviewed-by: kvn, twisti
2012-06-12 16:23:31 -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
Vladimir Kozlov
b9cba282ee
7129618: assert(obj_node->eqv_uncast(obj),"");
...
Relax verification and locks elimination checks for new implementation (EliminateNestedLocks).
Reviewed-by: iveresov
2012-01-13 12:58:26 -08:00
Vladimir Kozlov
337666a80c
7128355: assert(!nocreate) failed: Cannot build a phi for a block already parsed
...
Do not common BoxLock nodes and avoid creating phis of boxes.
Reviewed-by: never
2012-01-12 14:45:04 -08:00
Vladimir Kozlov
791afc42da
7128352: assert(obj_node == obj) failed
...
Compare uncasted object nodes.
Reviewed-by: never
2012-01-10 18:05:38 -08:00
Vladimir Kozlov
94927c382b
7125896: Eliminate nested locks
...
Nested locks elimination done before lock nodes expansion by looking for outer locks of the same object.
Reviewed-by: never, twisti
2012-01-07 13:26:43 -08:00
Vladimir Kozlov
05ec1c0816
7125879: assert(proj != NULL) failed: must be found
...
Leave i_o attached to slow allocation call when there are no i_o users after the call.
Reviewed-by: iveresov, twisti
2011-12-30 11:43:06 -08:00
Vladimir Kozlov
f96f3e5e85
7123954: Some CTW test crash with SIGSEGV
...
Correct Allocate expansion code to preserve i_o when only slow call is generated.
Reviewed-by: iveresov
2011-12-27 15:08: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
Vladimir Kozlov
8d2ee23293
6890673: Eliminate allocations immediately after EA
...
Try to eliminate allocations and related locks immediately after escape analysis.
Reviewed-by: never
2011-11-16 09:13:57 -08:00
Vladimir Kozlov
47e357e16f
7081933: Use zeroing elimination optimization for large array
...
Don't zero new typeArray during runtime call if the allocation is followed by arraycopy into it.
Reviewed-by: twisti
2011-09-26 10:24:05 -07:00
Vladimir Kozlov
90651b2666
7079329: Adjust allocation prefetching for T4
...
On T4 2 BIS instructions should be issued to prefetch 64 bytes
Reviewed-by: iveresov, phh, twisti
2011-08-16 16:59:46 -07: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
b3505a88a4
7044738: Loop unroll optimization causes incorrect result
...
Take into account memory dependencies when clonning nodes in clone_up_backedge_goo().
Reviewed-by: never
2011-06-28 15:24:29 -07:00
Vladimir Kozlov
18dd7131d0
7050280: assert(u->as_Unlock()->is_eliminated()) failed: sanity
...
Mark all associated (same box and obj) lock and unlock nodes for elimination if some of them marked already.
Reviewed-by: iveresov, never
2011-06-04 10:36:22 -07: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
Tom Rodriguez
2126589fd0
7029167: add support for conditional card marks
...
Reviewed-by: iveresov, kvn
2011-04-27 15:40:36 -07:00
Paul Hohensee
7b0134a7cb
7003271: Hotspot should track cumulative Java heap bytes allocated on a per-thread basis
...
Track allocated bytes in Thread's, update on TLAB retirement and direct allocation in Eden and tenured, add JNI methods for ThreadMXBean.
Reviewed-by: coleenp, kvn, dholmes, ysr
2011-01-07 10:42:32 -05: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
3fbdd52bdf
6969569: assert(is_static() && is_constant()) failed: illegal call to constant_value()
...
Add missing is_static guard.
Reviewed-by: twisti
2010-07-23 10:07:46 -07:00
Vladimir Kozlov
448b83e288
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
...
Use replace_node() method instead of subsume_node().
Reviewed-by: jrose, never
2010-06-28 14:54:39 -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
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
Vladimir Kozlov
f6934fd3b7
6940726: Use BIS instruction for allocation prefetch on Sparc
...
Use BIS instruction for allocation prefetch on Sparc
Reviewed-by: twisti
2010-04-07 12:39:27 -07: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
9db2092b1b
6892658: C2 should optimize some stringbuilder patterns
...
Reviewed-by: kvn, twisti
2009-11-12 09:24:21 -08: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
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
Vladimir Kozlov
ca3a3504be
6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr")
...
Delay a memory node transformation if its control or address on IGVN worklist.
Reviewed-by: never
2009-04-07 19:04:24 -07:00
Erik Trimble
8d6035660e
Merge
2009-03-12 18:16:36 -07:00
Xiomara Jayasena
2be2e027b0
6814575: Update copyright year
...
Update copyright for files that have been modified in 2009, up to 03/09
Reviewed-by: katleman, tbell, ohair
2009-03-09 13:28:46 -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
Vladimir Kozlov
9b31d58b98
6809798: SafePointScalarObject node placed into incorrect block during GCM
...
Replace the control edge of a pinned node before scheduling.
Reviewed-by: never
2009-02-26 14:26:02 -08:00
Vladimir Kozlov
dc3008a513
6802499: EA: assert(false,"unknown node on this path")
...
Add missing checks for SCMemProj node in Escape analysis code.
Reviewed-by: never
2009-02-19 17:38:53 -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