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
Vladimir Kozlov
0ccb2841ea
8022585: VM crashes when ran with -XX:+PrintInlining
...
Use adr_at() to access inline info structures in growableArray. Add ability to specify print inlining per method.
Reviewed-by: twisti
2013-09-24 16:08:00 -07:00
Niclas Adlertz
afef481831
Merge
2013-09-19 18:01:39 +02:00
Thomas Schatzl
b4e927d2a9
Merge
2013-09-16 09:41:03 +02:00
David Chase
222c735458
8014013: CallInfo structure no longer accurately reports the result of a LinkResolver operation
...
Enhance method resolution and resulting data structures, plus some refactoring.
Reviewed-by: twisti, acorn, jrose
2013-09-13 22:38:02 -04: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
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
Erik Helin
30f059b5fc
8015107: NPG: Use consistent naming for metaspace concepts
...
Reviewed-by: coleenp, mgerdin, hseigel
2013-08-12 17:37:02 +02:00
Rickard Bäckman
a231c31f38
8022675: Redundant class init check
...
Reviewed-by: kvn, twisti
2013-08-08 03:16:56 +02: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
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
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
Christian Thalinger
6964a690ed
7198429: need checked categorization of caller-sensitive methods in the JDK
...
Reviewed-by: kvn, jrose
2013-03-25 17:13:26 -07:00
Roland Westrelin
260e822459
8007959: Use expensive node logic for more math nodes
...
Use expensive node logic for other more math nodes.
Reviewed-by: kvn
2013-02-18 09:06:24 +01:00
Roland Westrelin
c401bf065d
7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob
...
Add support for expensive nodes.
Reviewed-by: kvn
2013-02-12 12:56:11 +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
Christian Thalinger
827930b510
8006127: remove printing code added with 8006031
...
Reviewed-by: kvn
2013-01-11 20:01:16 -08:00
Christian Thalinger
6c57a4b9f8
8006031: LibraryCallKit::inline_array_copyOf disabled unintentionally with 7172640
...
Reviewed-by: kvn
2013-01-11 14:07:09 -08:00
Aleksey Shipilev
4c293ebcd6
8004318: JEP-171: Support Unsafe fences intrinsics
...
Add three memory-ordering intrinsics to the sun.misc.Unsafe class.
Reviewed-by: twisti, kvn
2012-12-18 17:37:44 -08:00
Vladimir Ivanov
8eb3b25c4f
Merge
2012-12-18 08:19:53 -08:00
Vladimir Ivanov
6d08af845e
8003135: HotSpot inlines and hoists the Thread.currentThread().isInterrupted() out of the loop
...
Make the load of TLS._osthread._interrupted flag in Thread.isInterrupted(Z)Z intrinsic effectively volatile.
Reviewed-by: kvn, jrose
2012-12-18 06:52:00 -08:00
Roland Westrelin
b1c3e5ccc6
8005031: Some cleanup in c2 to prepare for incremental inlining support
...
Collection of small changes to prepare for incremental inlining.
Reviewed-by: twisti, kvn
2012-12-18 14:55:25 +01:00
Christian Thalinger
c5240e7c53
8004319: test/gc/7168848/HumongousAlloc.java fails after 7172640
...
Reviewed-by: kvn, johnc
2012-12-03 15:48:49 -08:00
Christian Thalinger
31411dbc32
7172640: C2: instrinsic implementations in LibraryCallKit should use argument() instead of pop()
...
Reviewed-by: kvn, jrose
2012-11-26 17:25:11 -08:00
Tom Deneau
6d94ef1ee7
7184394: add intrinsics to use AES instructions
...
Use new x86 AES instructions for AESCrypt.
Reviewed-by: twisti, kvn, roland
2012-10-24 14:33:22 -07:00
Vladimir Kozlov
2d3b78abcc
8000623: tools/javac/Diagnostics/6769027/T6769027.java crashes in PSPromotionManager::copy_to_survivor_space
...
Fix type of method pointer load from vtable.
Reviewed-by: twisti, johnc, roland
2012-10-17 12:09:32 -07:00
Vladimir Kozlov
5f132a5ec3
Merge
2012-10-12 09:22:52 -07: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
Christian Thalinger
7162ad011c
8000263: JSR 292: signature types may appear to be unloaded
...
Reviewed-by: kvn, jrose
2012-10-08 17:04:00 -07:00
Coleen Phillimore
28047d6a0f
8000213: NPG: Should have renamed arrayKlass and typeArrayKlass
...
Capitalize these metadata types (and objArrayKlass)
Reviewed-by: stefank, twisti, kvn
2012-09-29 06:40:00 -04: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
Roland Westrelin
302540691b
7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
...
Use shorter instruction sequences for atomic add and atomic exchange when possible.
Reviewed-by: kvn, jrose
2012-09-20 16:49:17 +02: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
Vladimir Kozlov
04c6a7ce10
7190310: Inlining WeakReference.get(), and hoisting $referent may lead to non-terminating loops
...
In C2 add software membar after load from Reference.referent field to prevent commoning of loads across safepoint since GC can change its value. In C1 always generate Reference.get() intrinsic.
Reviewed-by: roland, twisti, dholmes, johnc
2012-08-20 09:58:58 -07:00
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
Roland Westrelin
3511594d3c
7177917: Failed test java/lang/Math/PowTests.java
...
When c2 intrinsifies pow/exp, it should never inline the java implementations.
Reviewed-by: kvn
2012-07-02 09:58:06 +02:00
Roland Westrelin
118f552a6e
7174363: Arrays.copyOfRange leads to VM crash with -Xcomp -server if executed by testing framework
...
Arrays.copyOfRange(original, from, to) with from > original.length tries to do a copy with a negative length.
Reviewed-by: kvn, twisti
2012-06-18 09:52:31 +02:00