Niclas Adlertz
bcdf7e7a4d
8010941: MinJumpTableSize is set to 18, investigate if that's still optimal
...
Lowered the MinJumpTableSize for each platform
Reviewed-by: kvn
2013-09-11 09:34:00 +02:00
Vladimir Ivanov
f0e77ac67f
8001107: @Stable annotation for constant folding of lazily evaluated variables
...
Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: rbackman, twisti, kvn
2013-09-10 14:51:48 -07:00
Niclas Adlertz
a0a141a9d9
Merge
2013-09-05 10:39:10 +02:00
Niclas Adlertz
547f4dea7b
8024095: Missing brackets in local scheduling code
...
Added brackets for if-statement
Reviewed-by: kvn, roland
2013-09-02 22:44:57 +02:00
Niclas Adlertz
900acf0c44
8023988: Move local scheduling of nodes to the CFG creation and code motion phase (PhaseCFG)
...
Moved local scheduling code from class Block to class PhaseCFG
Reviewed-by: kvn, roland
2013-09-01 19:21:05 +02:00
Lois Foltan
fca9e37c80
8021954: VM SIGSEGV during classloading on MacOS; hs_err_pid file produced
...
Declare all user-defined operator new()s within Hotspot code with the empty throw() exception specification
Reviewed-by: coleenp, twisti, dholmes, hseigel, dcubed, kvn, ccheung
2013-08-29 18:56:29 -04:00
Martin Doerr
c678f0173a
8023597: Optimize G1 barriers code for unsafe load_store
...
Avoid loading old values in G1 pre-barriers for inlined unsafe load_store nodes.
Reviewed-by: kvn, tonyp
2013-08-28 11:22:43 +02:00
Niclas Adlertz
be8c8aac48
8023691: Create interface for nodes in class Block
...
Create public methods for accessing the nodes in a block
Reviewed-by: kvn, roland
2013-08-26 12:50:23 +02:00
Vladimir Kozlov
dac98bcc0d
8023472: C2 optimization breaks with G1
...
Set control edge for previous value load in G1 pre-barrier
Reviewed-by: twisti
2013-08-23 18:04:35 -07: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
Rickard Bäckman
a231c31f38
8022675: Redundant class init check
...
Reviewed-by: kvn, twisti
2013-08-08 03:16:56 +02:00
Vladimir Kozlov
4ee53ef4e3
8021898: Broken JIT compiler optimization for loop unswitching
...
Fix method clone_projs() to clone all related MachProj nodes.
Reviewed-by: roland, adlertz
2013-08-16 14:11:40 -07:00
Niclas Adlertz
a235ecb344
8023003: Cleanup the public interface to PhaseCFG
...
Public methods that don't need to be public should be private.
Reviewed-by: kvn, twisti
2013-08-16 10:23:55 +02:00
Vladimir Kozlov
20f7d1a82a
8022993: Convert MAX_UNROLL constant to LoopMaxUnroll C2 flag
...
Replace MAX_UNROLL constant with new C2 LoopMaxUnroll flag.
Reviewed-by: roland
2013-08-14 10:21:26 -07:00
Niclas Adlertz
bfe8385fa9
8022284: Hide internal data structure in PhaseCFG
...
Hide private node to block mapping using public interface
Reviewed-by: kvn, roland
2013-08-07 17:56:19 +02:00
Morris Meyer
80b04bb48e
Merge
2013-07-24 13:54:03 -07:00
Calvin Cheung
1a1e83be6a
8004872: Early loading of HashMap and StringValue under -XX:+AggressiveOpts can be removed
...
This fix also removes the -XX:+UseStringCache option
Reviewed-by: dholmes, acorn, iklam
2013-07-18 14:57:51 -07:00
Vladimir Kozlov
1338c067aa
8007898: Incorrect optimization of Memory Barriers in Matcher::post_store_load_barrier()
...
Generate one "fat" membar instead of set of barriers for volitile store
Reviewed-by: roland
2013-07-12 14:03:10 -07:00
David Chase
9a359984c2
7088419: Use x86 Hardware CRC32 Instruction with java.util.zip.CRC32
...
Add intrinsics using new instruction to interpreter, C1, C2, for suitable x86; add test
Reviewed-by: kvn, twisti
2013-07-02 20:42:12 -04:00
Vladimir Kozlov
fc1302ea95
8019247: SIGSEGV in compiled method c8e.e.t_.getArray(Ljava/lang/Class;)[Ljava/lang/Object
...
Undo recent changes (and add more comments) in Ideal_allocation().
Reviewed-by: roland
2013-07-02 10:30:49 -07:00
Niclas Adlertz
19d56715fa
8017243: 8001345 is incomplete
...
Replaces unused decodeN at MemBarAcquire with its corresponding loadN if loadN is used at more than one place.
Reviewed-by: kvn, twisti
2013-06-25 12:07:07 -07:00
Vladimir Kozlov
175419c053
Merge
2013-06-20 16:08:11 -07:00
Niclas Adlertz
556b4925b3
8001345: VM crashes with assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
...
Remove unnecessary LoadN / DecodeN nodes at MemBarAcquire nodes.
Reviewed-by: kvn, roland
2013-06-19 00:41:56 +02:00
Vladimir Kozlov
55f6f35697
Merge
2013-06-14 16:33:34 -07:00
David Chase
219121826e
8014959: assert(Compile::current()->live_nodes() < (uint)MaxNodeLimit) failed: Live Node limit exceeded limit
...
Insert extra checks and bailouts for too many nodes
Reviewed-by: kvn
2013-06-11 16:34:34 -04:00
Calvin Cheung
53448fdbed
8014431: cleanup warnings indicated by the -Wunused-value compiler option on linux
...
Co-authored-by: Jeremy Manson <jeremymanson@google.com>
Reviewed-by: dholmes, coleenp
2013-06-13 22:02:40 -07:00
Staffan Larsen
718f3252f6
8005849: JEP 167: Event-Based JVM Tracing
...
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Bengt Rutisson <bengt.rutisson@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Erik Gahlin <erik.gahlin@oracle.com>
Co-authored-by: Erik Helin <erik.helin@oracle.com>
Co-authored-by: Jesper Wilhelmsson <jesper.wilhelmsson@oracle.com>
Co-authored-by: Keith McGuigan <keith.mcguigan@oracle.com>
Co-authored-by: Mattias Tobiasson <mattias.tobiasson@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Mikael Auno <mikael.auno@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Co-authored-by: Nils Loodin <nils.loodin@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: acorn, coleenp, sla
2013-06-10 11:30:51 +02:00
Niclas Adlertz
f4682b75e5
8005956: C2: assert(!def_outside->member(r)) failed: Use of external LRG overlaps the same LRG defined in this block
...
Disable re-materialization of reaching definitions (which have live inputs) for phi nodes when spilling.
Reviewed-by: twisti, kvn
2013-06-03 12:39:33 -07:00
Roland Westrelin
6ae26f2e94
8010460: Interpreter on some platforms loads ConstMethod::_max_stack and misses extra stack slots for JSR 292
...
ConstMethod::max_stack() doesn't account for JSR 292 appendix.
Reviewed-by: kvn
2013-04-24 11:49:38 +02:00
Vladimir Kozlov
ff008d0615
8015441: runThese crashed with assert(opcode == Op_ConP || opcode == Op_ThreadLocal || opcode == Op_CastX2P ..) failed: sanity
...
Relax the assert to accept any raw ptr types.
Reviewed-by: roland
2013-05-31 13:54:47 -07:00
Vladimir Kozlov
ea54d8f3f0
8014811: loopTransform.cpp assert(cmp_end->in(2) == limit) failed
...
Stop current iteration of loop opts if partial_peel() failed and it created node clones outside processed loop.
Reviewed-by: roland
2013-05-22 09:02:43 -07:00
Christian Thalinger
c6c7f3439e
Merge
2013-05-16 13:47:55 -07:00
Yumin Qi
98151c30c8
8012902: remove use of global operator new - take 2
...
The fix of 8010992, disable use of global operator new and new[] which caused failure on some tests. This takes two of the bugs also add ALLOW_OPERATOR_NEW_USAGE to prevent crash for third party code calling operator new of jvm on certain platforms.
Reviewed-by: coleenp, dholmes, zgu
2013-05-14 09:41:12 -07:00
Vladimir Kozlov
2ed62e808c
8014286: failed java/lang/Math/DivModTests.java after 6934604 changes
...
Corrected escape state for the result of boxing method. Added force inlining executed boxing methods.
Reviewed-by: twisti
2013-05-13 14:36:39 -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
Vladimir Kozlov
1763afaec5
Merge
2013-05-03 15:35:30 -07:00
Mikael Gerdin
94677d4faf
Merge
2013-05-02 16:41:09 -07:00
Dean Long
9c966207ef
Merge
2013-04-24 21:11:02 -04:00
Goetz Lindenmaier
3f42e9e118
8003853: specify offset of IC load in java_to_interp stub
...
Refactored code to allow platform-specific differences
Reviewed-by: dlong, twisti
2013-04-24 20:55:28 -04:00
Martin Doerr
19d99e3d92
8012715: G1: GraphKit accesses PtrQueue::_index as int but is size_t
...
In graphKit INT operations were generated to access PtrQueue::_index which has type size_t. This is 64 bit on 64-bit machines. No problems occur on little endian machines as long as the index fits into 32 bit, but on big endian machines the upper part is read, which is zero. This leads to unnecessary branches to the slow path in the runtime.
Reviewed-by: twisti, johnc
2013-04-24 14:48:43 -07:00
Gilles Duboscq
34da1742ef
8012292: optimized build with GCC broken
...
Some #ifndef PRODUCT should be #ifdef ASSERT
Reviewed-by: kvn, twisti
2013-04-24 14:26:09 +02:00
Bharadwaj Yadavalli
b32dc11760
Merge
2013-04-19 03:13:04 -04:00
Jiangli Zhou
2f703b2613
Merge
2013-04-15 21:25:23 -04:00
Nils Eliasson
92ef5fe748
8006952: Slow VM due to excessive code cache freelist iteration
...
Remove continous free block requirement
Reviewed-by: kvn
2013-04-11 13:57:44 +02:00
Niclas Adlertz
09fdc18edc
8011621: live_ranges_in_separate_class.patch
...
Reviewed-by: kvn, roland
2013-04-16 10:08:41 +02:00
David Chase
25c31f3742
6443505: Ideal() function for CmpLTMask
...
Repair wrong code generation, added new matching rule
Reviewed-by: kvn, twisti
2013-04-12 19:14:47 -07:00
Jiangli Zhou
56370657b9
8010862: The Method counter fields used for profiling can be allocated lazily
...
Allocate the method's profiling related metadata until they are needed.
Reviewed-by: coleenp, roland
2013-04-09 17:17:41 -04:00
Daniel D. Daugherty
78339229bb
Merge
2013-04-05 10:38:08 -07:00
Mikael Vidstedt
eeb83733a6
8003310: Enable -Wunused-function when compiling with gcc
...
Add the -Wunused-function flag and remove a number of unused functions.
Reviewed-by: dholmes, coleenp, kvn
2013-04-04 10:01:26 -07:00