Commit Graph

45 Commits

Author SHA1 Message Date
Christian Tornqvist
820b9e7a16 8164737: Remove Unsafe dependency from ProcessTools
Reviewed-by: gtriantafill, dholmes
2016-08-25 08:40:53 -04:00
Christian Tornqvist
ad85e18f23 8157957: ClassNotFoundException: jdk.test.lib.JDKToolFinder
Reviewed-by: coleenp, gtriantafill, mseledtsov, iignatyev, dholmes, dsamersoff
2016-08-19 10:06:30 -04:00
Dmitrij Pochepko
757db81501 8162603: Unrecognized VM option 'UseCountedLoopSafepoints'
Reviewed-by: kvn
2016-07-28 16:09:31 +03:00
Roland Westrelin
3636d8f3d5 8161147: jvm crashes when -XX:+UseCountedLoopSafepoints is enabled
Don't convert loop with safepoint on the backedge to Counted loop

Reviewed-by: kvn
2016-07-25 14:31:42 -07:00
Pavel Punegov
684f63ba14 8160761: [TESTBUG] Several compiler tests fail with product bits
Add UnlockDiagnosticVMOptions to tests

Reviewed-by: goetz
2016-07-13 19:08:07 +03:00
Igor Ignatyev
a0381422dd 8132919: Put compiler tests in packages
Reviewed-by: vlivanov, dpochepk
2016-07-12 18:24:48 +03:00
Tobias Hartmann
4ab4c66c41 8159016: Over-unrolled loop is partially removed
Prevent over-unrolling of loops by computing upper bound for trip count.

Reviewed-by: kvn
2016-06-27 10:10:11 +02:00
Dmitry Samersoff
85deb5aa7e 8154258: [TESTBUG] Various serviceability tests fail compilation
Replace sun.misc.Unsafe with jdk.internal.misc.Unsafe

Reviewed-by: chegar, kvn
2016-05-01 12:47:00 +03:00
Tobias Hartmann
3a358f4cff 8086057: Crash with "modified node is not on IGVN._worklist" when running with -XX:-SplitIfBlocks
Pre-loop Opaque1 node 'pre_opaq' should be put on the IGVN worklist after modification.

Reviewed-by: kvn
2016-04-25 10:53:42 +02:00
Zoltan Majo
69d14c811b 8072422: Cleanup: Remove some unused flags/code in loop optimizations
Remove unused flags, change test using them.

Reviewed-by: kvn, twisti
2016-04-04 12:52:11 +02:00
Jamsheed Mohammed
45bd62d1f1 8149123: [TESTBUG] compiler/loopopts/superword/SumRed* tests running on non-x86 platforms
Restricted test execution to supported archs.

Reviewed-by: kvn
2016-02-10 15:24:22 +01:00
Roland Westrelin
1462f0b038 8147645: get_ctrl_no_update() code is wrong
Array.fill intrinsification code doesn't mark replaced control as dead

Reviewed-by: kvn
2016-02-03 10:58:50 +01:00
Igor Ignatyev
972bf92ef7 8148161: quarantine compiler/loopopts/UseCountedLoopSafepoints.java
Reviewed-by: kvn
2016-01-26 00:25:20 +03:00
Goetz Lindenmaier
4e99638d69 8147937: Adapt SAP copyrights to new company name
Reviewed-by: simonis, stuefe
2016-01-21 12:37:47 +01:00
Tobias Hartmann
ca56200977 6675699: need comprehensive fix for unconstrained ConvI2L with narrowed type
Emit CastII to make narrow ConvI2L dependent on the corresponding range check.

Reviewed-by: kvn, roland
2016-01-18 08:40:25 +01:00
Roland Westrelin
3b0e147813 8146792: Predicate moved after partial peel may lead to broken graph
Partial peel can leave a pinned node between predicates and loop and prevent some loop predication

Reviewed-by: kvn
2016-01-11 16:02:42 +01:00
Andreas Eriksson
c64b2175e7 6869327: Add new C2 flag to keep safepoints in counted loops
Reviewed-by: kvn, shade
2015-12-04 14:06:38 +01:00
Jesper Wilhelmsson
c7a51854d9 Merge 2015-11-30 19:38:51 +01:00
Gerard Ziemski
a138de1354 8141706: [TESTBUG] Update tests failing due to changed behavior
Add UnlockDiagnosticVMOptions as appropriate.

Reviewed-by: kvn, dholmes
2015-11-20 11:57:33 -06:00
Vladimir Kozlov
6ed8c23581 8141624: Limit calculation of pre loop during super word optimization is wrong
Reviewed-by: vlivanov, kvn
2015-11-10 21:36:35 -08:00
Felix Yang
12cba200a3 8138583: aarch64: add support for vectorizing fabs/fneg
Reviewed-by: aph, roland
2015-09-30 04:35:39 -04:00
Ed Nevill
cb8cff7e6e 8135231: aarch64: add support for vectorizing double precision sqrt
Reviewed-by: roland, aph
2015-09-23 12:39:30 -04:00
Roland Westrelin
92af9b015c 8136926: phi == NULL assert in PhaseIdealLoop::try_move_store_after_loop
Multiple phis on same slice are possible in a loop

Reviewed-by: kvn, mcberg
2015-09-22 15:25:34 +02:00
Zoltan Majo
a61a0cec2e 8136914: compiler/loopopts/superword/SumRedSqrt_Double.java times out
Change test to execute only on relevant (x86-based) platforms.

Reviewed-by: kvn, dlong
2015-09-22 13:42:09 +02:00
Roland Westrelin
c55d212196 8136461: PhaseIdealLoop::try_move_store_before_loop() may bypass early loop exit
PhaseIdealLoop::try_move_store_before_loop() needs to check for early loop exit before candidate Stores

Reviewed-by: kvn
2015-09-15 13:08:43 +02:00
Michael Berg
e75f5a5cde 8135028: support for vectorizing double precision sqrt
Reviewed-by: kvn, twisti
2015-09-09 10:34:17 -07:00
Roland Westrelin
96b004cd82 8080289: Intermediate writes in a loop not eliminated by optimizer
Move Stores out of loop (after or before) when possible

Reviewed-by: kvn, vlivanov
2015-07-29 17:25:04 +02:00
Roland Westrelin
81b0f156c8 8080976: Unexpected AIOOB thrown from 1.9.0-ea-b64 on (regression)
Loop variant use in reduction should prevent vectorization

Reviewed-by: kvn, mcberg
2015-05-29 16:09:16 +02:00
Vladimir Kozlov
49ab7a3900 8080483: Incorrect test execution string at SumRed_Long.java
Reviewed-by: iveresov
2015-05-15 18:12:21 -07:00
Tobias Hartmann
6172821723 8080420: Compilation of TestVectorizationWithInvariant fails with "error: package com.oracle.java.testlibrary does not exist"
Fixed location of testlibrary package.

Reviewed-by: kvn
2015-05-14 18:02:35 +02:00
Tobias Hartmann
005adcec93 Merge 2015-05-11 07:58:02 +02:00
Michael C Berg
4fca8dbb1f 8076276: Add support for AVX512
Reviewed-by: kvn, roland
2015-05-08 11:49:20 -07:00
Tobias Hartmann
43a5abc876 8078497: C2's superword optimization causes unaligned memory accesses
Prevent vectorization of memory operations with different invariant offsets if unaligned memory accesses are not allowed.

Reviewed-by: kvn
2015-05-08 12:19:17 +02:00
Michael C Berg
a880f3d139 8078563: Restrict reduction optimization
Reviewed-by: kvn, twisti
2015-04-29 15:34:04 -07:00
Roland Westrelin
3cdae26a75 8078426: mb/jvm/compiler/InterfaceCalls/testAC2 - assert(predicate_proj == 0L) failed: only one predicate entry expected
Split if finds predicates on several incoming paths when unswitched's loops are optimized out

Reviewed-by: kvn
2015-04-29 14:43:12 -07:00
Roland Westrelin
05ea4dbf1e 8069191: moving predicate out of loops may cause array accesses to bypass null check
Remove CastPP nodes only during final graph reshape

Reviewed-by: kvn, jrose
2015-03-24 10:25:09 +01:00
Michael C Berg
9e55e44c85 8074981: Integer/FP scalar reduction optimization
Add scalar reduction optimization to C2 to take advantage of vector instructions in modern x86 CPUs.

Reviewed-by: kvn, twisti
2015-04-01 18:07:50 -07:00
Zoltan Majo
41b79b9ad4 8074869: C2 code generator can replace -0.0f with +0.0f on Linux
Instead of 'fpclass', use cast float->int and double->long to check if value is +0.0f and +0.0d, respectively.

Reviewed-by: kvn, simonis, dlong
2015-03-14 11:21:04 +01:00
Roland Westrelin
f4f9769cd2 8073184: Compile of java.lang.Integer::getChars fails with LoopLimitCheck = false after 8054478
CastII that guards counted loops confuses range check elimination with LoopLimitCheck off

Reviewed-by: kvn, iveresov
2015-02-24 15:23:05 +01:00
Igor Veresov
14cf940405 8073735: compiler/loopopts/CountedLoopProblem.java got OOME
Ignore OOM in the test

Reviewed-by: kvn
2015-02-24 23:31:00 -08:00
Igor Veresov
783f2be52f 8072753: Nondeterministic wrong answer on arithmetic
Check for overflow when inverting the loop during the counted loop conversion

Reviewed-by: kvn
2015-02-17 11:00:18 -08:00
Pavel Chistyakov
0b17d19f48 8068231: Several tests are still excluded
Reviewed-by: kvn, iignatyev
2015-01-16 15:08:20 +03:00
Roland Westrelin
4bc2edad15 8054478: C2: Incorrectly compiled char[] array access crashes JVM
Dead backbranch in main loop results in erroneous array access

Reviewed-by: kvn, iveresov
2014-11-13 09:19:46 +01:00
Zoltan Majo
68b0d32b05 8062854: move compiler jtreg test to corresponding subfolders and use those in TEST.groups
Move all test from <bug_id> directories to <functional_dir_name>/<bug_id>; update TEST.groups to execute more tests

Reviewed-by: drchase, kvn
2014-11-18 19:44:45 +01:00
Vladimir Kozlov
b571b4214a 8046516: Segmentation fault in JVM (easily reproducible)
Place new nodes on the previous loop exit in reorg_offsets().

Reviewed-by: roland
2014-06-12 10:15:43 -07:00