1016 Commits

Author SHA1 Message Date
Albert Noll
bce45e9222 Merge 2014-04-14 09:04:36 +00:00
Albert Noll
e2305182b5 8039425: Code cleanup: PhaseIterGVN::optimize()
This code cleanup aims at improving code readability.

Reviewed-by: kvn, roland
2014-04-14 10:57:07 +02:00
Albert Noll
7e1059b62d 8034216: assert(false) failed: infinite loop in PhaseIterGVN::optimize
Eagerly remove all castPP nodes in PhaseCCP to get type convergence in memnode.

Reviewed-by: kvn, roland
2014-04-11 11:33:00 +02:00
Igor Veresov
e6456ff2a4 8038297: Avoid placing CTI immediately following cbcond instruction on T4
Insert a nop between cbcond and CTI

Reviewed-by: kvn, twisti
2014-04-10 23:15:13 -07:00
Roland Westrelin
522abfc113 8005079: fix LogCompilation for incremental inlining
Report late inlining as part of the rest of the inlining output

Reviewed-by: twisti, kvn
2014-04-10 11:38:12 +02:00
Tobias Hartmann
65d6e6b331 8036898: assert(t != NULL) failed: must set before get
Ignore nodes without a type when checking for speculative types in Compile::remove_speculative_types(...).

Reviewed-by: kvn, roland
2014-04-10 09:26:24 +02:00
Roland Westrelin
eb8588549a 8007988: PrintInlining output is inconsistent with incremental inlining
Fix duplicate and conflicting inlining output

Reviewed-by: kvn, vlivanov
2014-04-09 09:17:43 +02:00
Morris Meyer
6db303a301 8001532: C2 node files refactoring
Split C2 node files into cast, convert, countbits, intrinsic, move, narrowptr and opaquenode classes

Reviewed-by: kvn, morris
2014-04-01 09:05:20 -07:00
Roland Westrelin
fa3b0a8f47 8031755: Type speculation should be used to optimize explicit null checks
Feed profiling data about reference nullness to type speculation.

Reviewed-by: kvn, iveresov
2014-03-31 09:08:53 +02:00
Lutz Schmidt
ac75d4fc2f 8037821: Account for trampoline stubs when estimating code buffer sizes
Take into account space needed for "trampoline code" used by calls on PPC64.

Reviewed-by: kvn
2014-03-25 12:54:21 -07:00
Poonam Bajaj
1516f610a1 6653795: C2 intrinsic for Unsafe.getAddress performs pointer sign extension on 32-bit systems
Native pointers less than 64 bits wide should be extended as an unsigned number.

Reviewed-by: kvn, kevinw
2014-03-24 08:43:10 -07:00
Vladimir Kozlov
97a51c5c2a 8031320: Use Intel RTM instructions for locks
Use RTM for inflated locks and stack locks.

Reviewed-by: iveresov, twisti, roland, dcubed
2014-03-20 17:49:27 -07:00
Igor Veresov
54db2c2d61 8032463: VirtualDispatch test timeout with DeoptimizeALot
Introduce code aging for warm method detection

Reviewed-by: kvn, twisti
2014-05-13 11:32:10 -07:00
Igor Veresov
768beb9a23 8031321: Support Intel bit manipulation instructions
Add support for BMI1 instructions

Reviewed-by: kvn, roland
2014-03-12 11:24:26 -07:00
David Chase
a0bb00ac27 Merge 2014-03-11 10:59:26 -07:00
David Chase
13a70d932e 8028037: [parfait] warnings from b114 for hotspot.src.share.vm
Insert null check for one warning; other warning handled in parfait config

Reviewed-by: kvn
2014-03-11 13:38:32 -04:00
Nils Eliasson
f457cabe80 Merge 2014-03-11 11:26:14 -04:00
Igor Veresov
35f1475d20 8025644: java/util/stream/test/org/openjdk/tests/java/util/stream/ToArrayOpTest.java fails with TestData$OfRef): failure java.lang.AssertionError: expected [true] but found [false]
In GraphKit::gen_checkcast() provide only exact superklass to GraphKit::maybe_cast_profiled_receiver()

Reviewed-by: kvn, roland
2014-03-10 11:09:02 -07:00
Vladimir Ivanov
bd8255eaa4 8036667: "assert(adr->is_AddP() && adr->in(AddPNode::Offset)->is_Con()) failed: offset is a constant" with FoldStableValues on
Reviewed-by: kvn
2014-03-06 09:53:14 -08:00
Roland Westrelin
d5ff84f8b3 8032633: Enable type speculation by default
Enable type speculation

Reviewed-by: kvn
2014-03-06 11:11:04 +01:00
Vladimir Ivanov
3ba019c8b2 8035828: Turn on @Stable support in VM
Reviewed-by: jrose, twisti
2014-03-04 02:20:41 -08:00
Aleksey Shipilev
1d10b6813e 8031818: Experimental VM flag for enforcing safe object construction
-XX:+AlwaysSafeConstructors to unconditionally emit the trailing constructor barrier.

Reviewed-by: kvn, roland
2014-03-03 15:31:27 +04:00
Aleksey Shipilev
c4bd0f58d3 8033380: Experimental VM flag to enforce access atomicity
-XX:+AlwaysAtomicAccesses to unconditionally enforce the access atomicity.

Reviewed-by: roland, kvn, iveresov
2014-03-03 15:54:45 +04:00
Dmitry Samersoff
4482a30c61 8036102: part of the fix for 6498581 lost in mismerge
Restore code lost in mis-merge

Reviewed-by: dcubed
2014-03-01 09:56:15 -08:00
Morris Meyer
c696dd6700 Merge 2014-02-28 08:02:20 -08:00
Roland Westrelin
227129c4d9 8031754: Type speculation should favor profile data from outermost inlined method
Favor profile data coming from outer most method

Reviewed-by: kvn, twisti
2014-02-28 13:44:16 +01:00
Igor Veresov
2c99a4ef9f 8035283: Second phase of branch shortening doesn't account for loop alignment
Added missing check for loop padding case.

Reviewed-by: kvn, jrose
2014-02-26 16:45:15 -08:00
Harold Seigel
b2c117b170 Merge 2014-02-23 13:16:03 -05:00
Markus Grönlund
68857c9469 8035493: JVMTI PopFrame capability must instruct compilers not to prune locals
Reviewed-by: kvn, sla, coleenp, sspitsyn
2014-02-22 10:22:05 +01:00
Vladimir Kozlov
4200d0d095 Merge 2014-02-20 12:20:56 -08:00
Goetz Lindenmaier
a5520f1c94 8035394: PPC64: Make usage of intrinsic dsqrt depend on processor recognition
Reviewed-by: kvn
2014-02-20 11:05:12 +01:00
Vladimir Kozlov
5117e1a805 Merge 2014-02-19 12:08:49 -08:00
Henry Jen
a752b0b503 8033215: clang: node.cpp:284 IDX_INIT macro use uninitialized field _out
Reviewed-by: twisti, kvn
2014-02-11 21:32:19 -08:00
Niclas Adlertz
94a86285a7 8010500: [parfait] Possible null pointer dereference at hotspot/src/share/vm/opto/loopnode.hpp
Added NULL check for loopnode() in get_pre_loop_end()

Reviewed-by: kvn, roland
2014-02-26 07:46:46 +01:00
Roland Westrelin
84c68fc78a Merge 2014-02-25 10:42:25 -08:00
Roland Westrelin
493557fc90 8031752: Failed speculative optimizations should be reattempted when root of compilation is different
Support for speculative traps that keep track of the root of the compilation in which a trap occurs.

Reviewed-by: kvn, twisti
2014-02-25 18:16:24 +01:00
Niclas Adlertz
5d4b624caf 8033260: assert(lrg._area >= 0.0) failed: negative spill area
Change type from float to double on block frequency, and add check for +Inf - +Inf operation

Reviewed-by: kvn, roland
2014-02-25 17:51:27 +01:00
Niclas Adlertz
532b570e81 8032656: Tag the MachSpillCopies with purpose information
Subclassed the MachSpillCopyNode with different subnodes for different spill purposes to enhance debugging / visualization

Reviewed-by: kvn, roland
2014-02-25 14:09:02 +01:00
Niclas Adlertz
e3931e81eb 8032894: Remove dead code in Pressure::lower
Remove dead code in Pressure::lower

Reviewed-by: kvn, roland
2014-02-25 10:26:21 +01:00
Vladimir Kozlov
7d92dc4d79 Merge 2014-01-28 12:28:17 -08:00
Vladimir Kozlov
c3a0e80e0b Merge 2014-01-28 12:25:34 -08:00
Vladimir Kozlov
a354960abb 8032566: Crash in JIT when running Scala compiler (and compiling Scala std lib)
Switch off EliminateAutoBox flag by default in jdk8 release.

Reviewed-by: iveresov
2014-01-27 10:20:51 -08:00
Niclas Adlertz
970a35292b 8031498: Cleanup and re-factorize PhaseChaitin::build_ifg_physical
Created sub-functions, added data structures, improved naming and removed unnecessary code

Reviewed-by: kvn, roland, rbackman
2014-01-24 13:06:52 +01:00
Aleksey Shipilev
fbff3b73a4 8032490: Remove -XX:+-UseOldInlining
Move the option to obsolete options list, purge the redundant compiler code.

Reviewed-by: kvn, jrose
2014-01-24 15:26:56 +04:00
Roland Westrelin
c19a7e0fa3 8027422: assert(_gvn.type(obj)->higher_equal(tjp)) failed: cast_up is no longer needed
Type methods shouldn't always operate on speculative part

Reviewed-by: kvn, twisti
2014-01-24 09:31:53 +01:00
Rickard Bäckman
0b85ee832e 8027754: Enable loop optimizations for loops with MathExact inside
Reviewed-by: kvn, iveresov
2014-01-23 12:08:28 +01:00
Martin Doerr
0306737032 8029101: PPC64 (part 211): ordering of Independent Reads of Independent Writes
Reviewed-by: dholmes, kvn
2014-01-16 14:25:51 +01:00
Jesper Wilhelmsson
81ba2e32c0 8025856: Fix typos in the GC code
Fix about 440 typos in comments in the VM code

Reviewed-by: mgerdin, tschatzl, coleenp, kmo, jcoomes
2014-01-23 14:47:23 +01:00
Shrinivas Joshi
d4c9d3889b 8002074: Support for AES on SPARC
Add intrinsics/stub routines support for single-block and multi-block (as used by Cipher Block Chaining mode) AES encryption and decryption operations on the SPARC platform.

Reviewed-by: kvn, roland
2014-01-14 17:46:48 -08:00
Roland Westrelin
14578d5ae9 8029464: assert(ft == ttkp->cast_to_ptr_type(jtkp->ptr()) || ft->isa_narrowoop()
Fix the assert check for narrow klass pointer.

Reviewed-by: twisti, kvn
2014-01-13 16:16:25 -08:00