Vladimir Ivanov
dad72d8a2b
Merge
2015-02-24 07:39:22 -08:00
Roland Westrelin
88848bd9e8
6912521: System.arraycopy works slower than the simple loop for little lengths
...
Convert small array copies to series of loads and stores
Reviewed-by: kvn, vlivanov
2015-02-18 18:14:07 +01:00
Harold Seigel
ce4261471b
8068687: Remove meta-index support and cleanup hotspot code for rt.jar etc in non-modular jdk image
...
Remove the meta-index code and rt.jar code and comments
Reviewed-by: mchung, gtriantafill
2015-02-17 13:19:23 -05:00
Christian Tornqvist
094674666c
Merge
2015-02-13 05:17:41 -08:00
Paul Sandoz
c002e71565
8068977: Remove unused sun.misc.Unsafe prefetch intrinsic support
...
Reviewed-by: kvn, vlivanov
2015-02-10 21:32:05 +01:00
Roland Westrelin
e6ac3ca09e
8072016: Array copy may cause infinite cycle of deoptimization/compilation
...
Infinite deoptimization/recompilation cycles in case of arraycopy with tightly coupled allocation
Reviewed-by: kvn, vlivanov
2015-02-09 15:10:58 +01:00
Vladimir Ivanov
7227e9ba53
8063137: Never-taken branches should be pruned when GWT LambdaForms are shared
...
Reviewed-by: jrose, kvn
2015-01-29 10:25:59 -08:00
Tobias Hartmann
21e2e5ffc0
8069580: String intrinsic related cleanups
...
Small cleanup of string intrinsic related code.
Reviewed-by: kvn, roland
2015-01-22 09:07:41 +01:00
Roland Westrelin
2e82794bfa
6700100: optimize inline_native_clone() for small objects with exact klass
...
Optimize small instance clones as loads/stores
Reviewed-by: kvn, iveresov
2014-12-16 13:49:36 +01:00
Roland Westrelin
686e5a0a6f
8064703: crash running specjvm98's javac following 8060252
...
Uncommon trap between arraycopy and initialization may leave array initialized
Reviewed-by: kvn, vlivanov, goetz
2014-12-01 11:59:56 +01:00
Zoltan Majo
49b224a4f7
8057622: java/util/stream/test/org/openjdk/tests/java/util/stream/InfiniteStreamWithLimitOpTest: SEGV inside compiled code (sparc)
...
In Parse::array_store_check(), add control edge FROM IfTrue branch of runtime type check of the destination array TO loading _element_klass from destination array.
Reviewed-by: kvn, roland, anoll
2014-11-06 09:40:58 +01:00
Roland Westrelin
79738069b0
8060252: JDK-7173584 compiler changes regress SPECjvm2008 on SPARC
...
Arraycopy code misses opportunities to optimize copies to just allocated array.
Reviewed-by: kvn
2014-10-20 22:53:37 +02:00
Vladimir Kozlov
74def215cd
8054492: Casting can result in redundant null checks in generated code
...
Add C2 intrinsic for Class.cast() method and force inline it too.
Reviewed-by: jrose, roland, drchase, iignatyev
2014-10-31 16:51:57 -07:00
Roland Westrelin
2d59d215e2
8057758: Tests run TypeProfileLevel=222 crash with guarantee(0) failed: must find derived/base pair
...
Use TypeAryPtr::INT type with offset 0 in inline_multiplyToLen().
Reviewed-by: kvn, iveresov
2014-09-09 15:47:18 -07:00
Vladimir Kozlov
98f413fa1f
Merge
2014-09-04 22:59:17 -07:00
Coleen Phillimore
73d759e533
8049105: Move array component mirror to instance of java/lang/Class (hotspot part 2)
...
This removes component mirrors from arrayKlass metadata and the C2 intrinsic for them.
Reviewed-by: kvn, twisti, mgerdin
2014-08-28 11:29:09 -04:00
Roland Westrelin
400f0f7a8f
8055153: nsk/stress/jck60/jck60014 crashes on sparc
...
Missing control for LoadRange and LoadKlass nodes created during arraycopy node expansion
Reviewed-by: kvn, iveresov
2014-08-19 17:23:38 +02:00
Vladimir Kozlov
ed5be50e9e
8054927: Missing MemNode::acquire ordering in some volatile Load nodes
...
Fixed memory ordering parameter and added missing barriers for volatile loads.
Reviewed-by: roland, iveresov
2014-08-13 13:05:04 -07:00
Roland Westrelin
a56ade07c7
7173584: Implement arraycopy as a macro node
...
Delay the conversion of arraycopy to stub calls to macro expansion
Reviewed-by: kvn, iveresov
2014-08-11 14:12:51 +02:00
Tobias Hartmann
70a55eac34
8054033: Remove unused references to Compile*
...
Removed unused references to Compile* missed by JDK-8034812.
Reviewed-by: kvn, roland
2014-08-05 09:58:52 +02:00
Roland Westrelin
fa27000f3c
8055910: closed/java/util/Collections/CheckedCollections.java failed with ClassCastException not thrown
...
Missing subtype check for Arrays.copyOf intrinsic
Reviewed-by: kvn, iveresov
2014-08-29 16:32:29 +02:00
Vladimir Kozlov
b9e949183d
8055494: Add C2 x86 intrinsic for BigInteger::multiplyToLen() method
...
Add new C2 intrinsic for BigInteger::multiplyToLen() on x86 in 64-bit VM.
Reviewed-by: roland
2014-09-02 12:48:45 -07:00
Goetz Lindenmaier
25f33c005d
8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories
...
Introduce and clean up umbrella headers for the files in the cpu subdirectories.
Reviewed-by: lfoltan, coleenp, dholmes
2014-07-04 11:46:01 +02:00
James Cheng
395560c428
8035968: Leverage CPU Instructions to Improve SHA Performance on SPARC
...
Add C2 SHA intrinsics on SPARC
Reviewed-by: kvn, roland
2014-06-11 11:05:10 -07:00
Vladimir Kozlov
56cea022c9
8035605: Expand functionality of PredictedIntrinsicGenerator
...
Allow several predicates and separate intrinsic methods per one intrinsified (virtual) method.
Reviewed-by: roland
2014-06-10 12:28:06 -07:00
Roland Westrelin
2838bcc3bf
8026796: Make replace_in_map() on parent maps generic
...
Propagate node replacements along control flow edges to callers
Reviewed-by: kvn, vlivanov
2014-06-10 13:37:16 +02:00
Vladimir Ivanov
ea0470002e
8033626: assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place
...
Reviewed-by: kvn, roland
2014-06-10 10:00:59 +00:00
Tobias Hartmann
2a0815a55e
8034812: remove IDX_INIT macro hack in Node class
...
The IDX_INIT macro used by Node::Node(...) to retrieve the Compile object is removed and replaced by a call to Compile::current(). The Node constructor, new operator and all calls to it are adapted accordingly.
Reviewed-by: kvn, jrose, iveresov, goetz
2014-06-02 08:07:29 +02:00
Albert Noll
a3b9ebba8d
8011646: SEGV in compiled code with loop predication
...
Remove control edge of load node to ensure that castPP removal sets the control edge correctly
Reviewed-by: kvn, roland
2014-05-30 06:50:38 +02:00
Yuri Gaevsky
cc3c656cf1
8025580: Temporary flags: UseNewReflection and ReflectionWrapResolutionErrors
...
The fix removes all UseNewReflection/ReflectionWrapResolutionErrors occurrences/logic and adds them into the list of obsolete_jvm_flags in arguments.cpp.
Reviewed-by: coleenp, hseigel
2014-05-15 17:38:50 -04:00
Tobias Hartmann
ded0d16e25
8042052: assert(t != NULL) failed: must set before get
...
Added missing call to _gvn.transform to make sure the type of the PhiNode is recorded in the gvn.
Reviewed-by: kvn
2014-05-05 15:10:43 +02:00
Niclas Adlertz
922879d58e
8029302: Performance regression in Math.pow intrinsic
...
Added special case for x^y where y == 2
Reviewed-by: kvn, roland
2014-04-25 12:48:34 +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
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
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
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
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
c3a0e80e0b
Merge
2014-01-28 12:25:34 -08: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
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
Goetz Lindenmaier
fe89766184
8028515: PPPC64 (part 113.2): opto: Introduce LoadFence/StoreFence
...
Use new nodes for loadFence/storeFence intrinsics in C2.
Reviewed-by: kvn, dholmes
2013-11-26 18:38:19 -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
Rickard Bäckman
4d9e812aa2
8027353: Exact intrinsics: assert(n != NULL) failed: must not be null
...
Reviewed-by: kvn, roland
2013-10-28 08:34:10 +01:00
Rickard Bäckman
615376fb9b
8026844: Various Math functions needs intrinsification
...
Reviewed-by: kvn, twisti
2013-10-18 10:41:56 +02:00
Roland Westrelin
1b5bd82335
8024070: C2 needs some form of type speculation
...
Record unused type profile information with type system, propagate and use it.
Reviewed-by: kvn, twisti
2013-10-23 12:40:23 +02:00
Roland Westrelin
3f8ae3e9b9
8024069: replace_in_map() should operate on parent maps
...
Type information gets lost because replace_in_map() doesn't update parent maps
Reviewed-by: kvn, twisti
2013-10-19 12:16:43 +02:00
Aleksey Shipilev
84fd9150e2
8014447: Object.hashCode intrinsic breaks inline caches
...
Try to inline as normal method first, then fall back to intrinsic.
Reviewed-by: kvn, twisti
2013-09-27 11:52:24 +04:00
Rickard Bäckman
441f1d74cf
8024924: Intrinsify java.lang.Math.addExact
...
Reviewed-by: kvn, twisti
2013-09-27 08:39:19 +02:00