119 Commits

Author SHA1 Message Date
Vladimir Kozlov
634a7fdebc Merge 2016-06-24 15:09:00 -07:00
Aleksey Shipilev
f6c1efe6ac 8156803: Turn StressLCM/StressGCM flags to diagnostic
Reviewed-by: kvn, ctornqvi
2016-06-22 13:29:09 +03:00
Cheleswer Sahu
93043ecb8f 8150900: Implement diagnostic_pd
Reviewed-by: twisti, gziemski, kevinw
2016-05-24 16:02:45 +05:30
Vladimir Ivanov
cdc0b9792f Merge 2016-05-11 00:40:59 +00:00
Gerard Ziemski
a991801b42 8073500: Prevent certain commercial flags from being changed at runtime
Implement new writeable mechanism for flag control

Reviewed-by: coleenp, iklam
2016-05-10 12:10:21 -05:00
Rahul Raghavan
7adc4034cd 8153655: Make intrinsics flags diagnostic and update intrinsics tests to enable diagnostic options
Converted all intrinsics flags to diagnostic and updated related intrinsics tests to enable diagnostic options

Reviewed-by: kvn
2016-05-09 01:21:55 -07:00
Roland Westrelin
e08e2ac711 8154135: Loop alignment may be added inside the loop body
Reviewed-by: kvn, vlivanov
2016-04-18 20:57:27 +03:00
Bharadwaj Yadavalli
cecf2d83d5 Merge 2016-04-08 12:36:27 -04:00
Bharadwaj Yadavalli
1e6ac67ecf 8153816: [BACKOUT] Make intrinsics flags diagnostic
Backout fix for 8145348

Reviewed-by: kvn, jwilhelm
2016-04-08 01:00:10 -04:00
Michael Berg
ff80cc58c9 8151573: Multiversioning for range check elimination
Range check elimination in post loops

Reviewed-by: kvn
2016-04-05 10:34:05 -07: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
Rahul Raghavan
9acc5ad3ce 8145348: Make intrinsics flags diagnostic
Converted product or develop intrinsics flags to diagnostic.

Reviewed-by: kvn
2016-03-28 01:08:02 -07:00
Michael Berg
3ade110066 8149421: Vectorized Post Loops
Add vectorised post loop for counted loops with vectors.

Reviewed-by: kvn
2016-02-12 16:12:15 -08: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
Zoltan Majo
1ca592e687 8129847: Compiling methods generated by Nashorn triggers high memory usage in C2
Add a new compiler phase, PhaseRenumberLive, that renumbers live nodes.

Reviewed-by: kvn, thartmann, vlivanov, shade
2015-12-01 08:05:10 +01:00
Michael C Berg
e86e38619e 8140779: Code generation fixes for avx512
Assembler refactoring. Abstract away instruction attributes.

Reviewed-by: kvn, roland, iveresov
2015-11-09 11:26:41 -08:00
Jan Civlin
0485593fbc 8139340: SuperWord enhancement to support vector conditional move (CMovVD) on Intel AVX cpu
Emit vector conditional moves

Reviewed-by: kvn
2015-10-26 19:33:31 -07:00
Vladimir Ivanov
b7f5ea4aee Merge 2015-10-20 22:03:38 +00:00
Vladimir Ivanov
deec4ce18c 8132168: Support IdealGraphVisualizer in optimized build
Reviewed-by: kvn
2015-10-20 19:22:56 +03:00
Nils Eliasson
5a5faf94bf 8137167: JEP165: Compiler Control: Implementation task
Compiler Control JEP

Reviewed-by: roland, twisti, zmajo, simonis
2015-10-20 18:07:28 +02:00
Vladimir Ivanov
0fcb9ffe75 8065151: Support IdealGraphVisualizer in optimized build
Reviewed-by: kvn
2015-09-06 10:13:18 +03:00
Jan Civlin
115afda88e 8136725: Provide utility for creation a counted loop reserve copy (clone)
Make it easier to revert to the original loop should that be needed

Reviewed-by: kvn
2015-10-09 12:17:58 -07:00
Zoltan Majo
fc2a5e9d53 8078554: Compiler: implement ranges (optionally constraints) for those flags that have them missing
Add range check or constraint where necessary.

Reviewed-by: roland, thartmann
2015-10-09 14:21:26 +02:00
Michael Berg
d49d1ea740 8134802: LCM register pressure scheduling
Calculate register pressure in a block to help instructions scheduling.

Reviewed-by: kvn, dlong
2015-09-16 13:16:17 -07:00
Vladimir Kozlov
44a4201adc 8136406: Remove ZapDeadCompiledLocals code
Dead code elimination.

Reviewed-by: roland, twisti
2015-09-15 11:04:11 -07:00
Roland Westrelin
02ae6d2a31 Merge 2015-08-04 13:41:09 +02:00
Zoltan Majo
26cd440c55 8132457: Unify command-line flags controlling the usage of compiler intrinsics
Cleanup processing of command-line flags controlling intrinsics.

Reviewed-by: kvn
2015-08-03 09:39:29 +02:00
Sangheon Kim
a13fe250b0 8130459: Add additional validation after heap creation
Some PLAB related flags' validation can happen after heap creation. Introduced additional stage of validation check.

Reviewed-by: coleenp, dholmes, kbarrett, gziemski, ecaspole, ddmitriev
2015-07-27 13:56:26 -07:00
Andrew Haley
917f70414f Merge 2015-07-02 11:12:59 +01:00
Vladimir Kozlov
0b9dfebfa4 Merge 2015-06-25 09:48:50 -07:00
Andrew Haley
52b991b411 8130150: Implement BigInteger.montgomeryMultiply intrinsic
Add montgomeryMultiply intrinsics

Reviewed-by: kvn
2015-06-16 17:31:53 +01:00
Michael Berg
7c7b91845f 8080325: SuperWord loop unrolling analysis
Determine loop unroll factor based on supported vectors sizes.

Reviewed-by: roland, kvn
2015-06-16 16:10:36 -07:00
Gerard Ziemski
ed2bb8c9fc 8122937: [JEP 245] Validate JVM Command-Line Flag Arguments
Validate the arguments to all JVM command-line flags so as to avoid crashes, and ensure that appropriate error messages are displayed when they are invalid.

Reviewed-by: ddmitriev, dholmes, kbarrett, drwhite, brutisso, coleenp
2015-06-18 14:39:38 -05:00
Vladimir Kozlov
93d1573c5e 8081778: Use Intel x64 CPU instructions for RSA acceleration
Add intrinsics for BigInteger squareToLen and mulAdd methods.

Reviewed-by: kvn, jrose
2015-06-03 15:02:10 -07:00
Michael C Berg
4fca8dbb1f 8076276: Add support for AVX512
Reviewed-by: kvn, roland
2015-05-08 11:49:20 -07:00
Jan Civlin
c7d33de202 8076284: Improve vectorization of parallel streams
Improve vectorization of java/util/stream/Streams$RangeIntSpliterator::forEachRemaining() method and enable loop vectorization in a given method on demand.

Reviewed-by: kvn
2015-05-05 12:33:57 -07:00
Aleksey Shipilev
dc67bb0a0e 8076987: C1 should support conditional card marks (UseCondCardMark)
Reviewed-by: iveresov, roland
2015-04-22 19:10:03 +03: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
Vladimir Kozlov
5f8d6ce7b6 Merge 2015-01-20 15:24:58 -08: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
Vladimir Kozlov
48b6c6007f Merge 2014-12-11 15:06:12 -08:00
Andrew Haley
0b30e012ee 8064611: AARCH64: Changes to HotSpot shared code
Everything except cpu/ and os_cpu/

Reviewed-by: dholmes, goetz, dlong, coleenp, kvn
2014-12-11 13:11:53 -08:00
Vladimir Ivanov
5a00d5f6b5 8058148: MaxNodeLimit and LiveNodeCountInliningCutoff
Reviewed-by: kvn, roland
2014-11-24 07:29:03 -08:00
Vladimir Kozlov
c620214d18 8041984: CompilerThread seems to occupy all CPU in a very rare situation
Add new timeout checks to EA.

Reviewed-by: iveresov, drchase
2014-10-24 10:28:19 -07:00
Zoltan Majo
bde7fd61b4 8060215: per-method PrintIdealGraphLevel
Use CompileCommand=option to set PrintIdealGraphLevel on a per-method level. Introduce the PrintIdealGraph develop to control/check if printing the graph is enabled for any method

Reviewed-by: kvn, dlong, thartmann
2014-10-15 10:51:43 +02:00
Aleksey Shipilev
f824f8c3cb 8058968: Compiler time traces should be improved
Use CITime consistently, make C2 to report to CompilerBroker, more probes.

Reviewed-by: vlivanov, jrose
2014-09-25 12:10:57 +04: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
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 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
Roland Westrelin
d5ff84f8b3 8032633: Enable type speculation by default
Enable type speculation

Reviewed-by: kvn
2014-03-06 11:11:04 +01:00