Commit Graph

18 Commits

Author SHA1 Message Date
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