122 Commits

Author SHA1 Message Date
Andrew Haley
244435704b 8131779: AARCH64: add Montgomery multiply intrinsic
Add Montgomery multiply intrinsic for AArch64.

Reviewed-by: kvn
2015-07-20 11:41:34 +01:00
Vladimir Kozlov
1e08e6133d Merge 2015-07-17 14:51:28 -07:00
Ed Nevill
b73ef8ebc6 8131362: aarch64: C2 does not handle large stack offsets
Change spill code to allow large offsets

Reviewed-by: kvn, aph
2015-07-17 07:50:36 +00:00
Ed Nevill
ae05bc036d 8131483: aarch64: illegal stlxr instructions
Do not generate stlxX with Ws == Xn

Reviewed-by: kvn, aph
2015-07-16 14:16:44 +00:00
Thomas Schatzl
392a65ff86 8131344: Missing klass.inline.hpp include in compiler files
Reviewed-by: kvn
2015-07-16 11:55:21 +02:00
Yumin Qi
6384ca7b1f 8025692: Log what methods are touched at run-time
Added two diagnostic flags, LogTouchedMethods and PrintTouchedMethodsAtExit to list all methods that have been touched at run time. Added new jcmd, VM.print_touched_methods.

Reviewed-by: acorn, iklam
2015-07-15 12:24:41 -07:00
Ed Nevill
d3196fb464 8131358: aarch64: test compiler/loopopts/superword/ProdRed_Float.java fails when run with debug VM
Fix typo in match rule in vsub2f

Reviewed-by: kvn, aph
2015-07-15 16:05:53 +00:00
Dmitry Dmitriev
8486cb7650 8130332: StarvationMonitorInterval, PreInflateSpin, VerifyGenericSignatures and CountInterpCalls VM Options can be deprecated or removed in JDK 9
Deprecate StarvationMonitorInterval and PreInflateSpin, remove VerifyGenericSignatures and CountInterpCalls

Reviewed-by: coleenp, gziemski
2015-07-11 12:36:46 +03:00
Daniel D. Daugherty
8dbfda6628 Merge 2015-07-09 14:35:13 -07:00
Ed Nevill
4a169a2ab1 8130687: aarch64: add support for hardware crc32c
Add support for crc32c using built in crc32c instructions

Reviewed-by: kvn, aph
2015-07-07 15:04:25 +00:00
Goetz Lindenmaier
07c7774cd7 8086069: Adapt runtime calls to recent intrinsics to pass ints as long
Remove CCallingConventionRequiresIntsAsLongs from shared code and push functionality to native wrapper. Less optimal but more flexible.

Reviewed-by: jrose, kvn
2015-06-29 15:30:55 +02:00
Zoltan Majo
547a40e75a 8130120: Handling of SHA intrinsics inconsistent across platforms
Introduce common warning message and common processing of SHA intrinsic-related arguments.

Reviewed-by: kvn, mcberg
2015-07-03 09:33:04 +02:00
Alexander Alexeev
1b1d8f21cb 8129426: aarch64: add support for PopCount in C2
Add support for PopCount using SIMD cnt and addv inst

Reviewed-by: kvn, aph
2015-06-25 13:41:29 +00:00
Ed Nevill
38d2a4cc99 8086087: aarch64: add support for 64 bit vectors
Support 64 bit vectors

Reviewed-by: kvn, aph
2015-06-25 08:52:12 +00:00
James Cheng
e2533553f6 8073583: C2 support for CRC32C on SPARC
Reviewed-by: jrose, kvn
2015-06-29 00:10:01 -07:00
Alejandro Murillo
4a826139e3 Merge 2015-06-26 19:11:15 -07:00
Vladimir Kozlov
0b9dfebfa4 Merge 2015-06-25 09:48:50 -07:00
Jesper Wilhelmsson
d60d6fdf40 Merge 2015-06-24 13:38:01 +02:00
Goetz Lindenmaier
1a88faab89 8129757: ppc/aarch: Fix passing thread to runtime after "8073165: Contended Locking fast exit bucket."
Reviewed-by: enevill, simonis, adinn
2015-06-24 09:13:12 +02:00
Bertrand Delsart
d046f1596b 8030076: remove unused runtime related code
Small cleanup of runtime code

Reviewed-by: dholmes, coleenp
2015-06-24 08:30:52 +02:00
Alejandro Murillo
edb5f74e0d Merge 2015-06-23 14:20:40 -07:00
Ed Nevill
d17ff6b63d 8129551: aarch64: some regressions introduced by addition of vectorisation code
Fix regressions

Reviewed-by: kvn
2015-06-23 18:56:17 +00:00
Andrew Dinn
b23811b6b6 8129584: Fix required for aarch64 after 8122937
The fix for 8122937 omitted cpu/aarch64 changes required by src/share fixes

Reviewed-by: kvn, simonis
2015-06-23 10:17:35 -04:00
Anthony Scarpino
c4c528df14 8073108: Use x86 and SPARC CPU instructions for GHASH acceleration
Reviewed-by: kvn, jrose
2015-06-17 17:48:25 -07:00
Aleksey Shipilev
6cb9f920e1 8078438: Interpreter should support conditional card marks (UseCondCardMark) on x86 and aarch64
Add interpreter support for conditional card marks on x86 and aarch64

Reviewed-by: tschatzl, aph
2015-06-19 09:41:49 +02:00
Ed Nevill
10741a86f6 8079565: aarch64: Add vectorization support for aarch64
Add vectorization support

Reviewed-by: roland
2015-06-04 12:04:18 +00:00
Alexander Alexeev
252b1be912 8081790: aarch64: SHA tests fail
Fix SHA tests in JTReg so they recognize aarch64

Reviewed-by: duke
2015-06-03 08:23:09 +00:00
Alexander Alexeev
5e3d542763 8081289: aarch64: add support for RewriteFrequentPairs in interpreter
Add support for RewriteFrequentPairs

Reviewed-by: roland
2015-05-27 09:02:08 +00:00
Alejandro Murillo
64fe991952 Merge 2015-05-21 17:11:54 -07:00
Ed Nevill
87e17632b5 8080586: aarch64: hotspot test compiler/codegen/7184394/TestAESMain.java fails
Return correct length in generate_cipherBlockChaining_encryptAESCrypt

Reviewed-by: roland
2015-05-18 15:52:33 +00:00
Jesper Wilhelmsson
f64e5038a4 Merge 2015-05-18 17:09:47 +02:00
Ed Nevill
66630f6ae5 8079564: Use FP register as proper frame pointer in JIT compiled code on aarch64
Add support for PreserveFramePointer for debug/profile

Reviewed-by: kvn
2015-05-15 09:21:48 +00:00
Ed Nevill
a65f9f9589 8079203: AARCH64: Need to cater for different partner implementations
Parse /proc/cpuinfo to derive implementation specific info

Reviewed-by: kvn
2015-05-12 13:58:42 +00:00
Ed Nevill
69aa7ea566 8079507: aarch64: fails to build due to changes to template interpreter
Fix by merging in changes from fix for 8074345

Reviewed-by: kvn
2015-05-07 13:58:57 +00:00
Alejandro Murillo
d83bdb4157 Merge 2015-05-01 03:56:01 -07:00
Bharadwaj Yadavalli
f8d0a6ff28 Merge 2015-04-30 18:14:58 -04:00
Andrew Haley
a4c5e8666b 8078621: AARCH64: Fails to build without precompiled headers
Fix #includes.

Reviewed-by: kvn
2015-04-24 16:28:29 +01:00
Ed Nevill
650d8b7cb6 8075930: AARCH64: Use FP Register in C2
Modify to allow C2 to allocate FP (R29) as a general register

Reviewed-by: aph, kvn, dlong
2015-04-24 11:01:37 +00:00
Andrew Dinn
294d9dce7f 8078263: AARCH64: Volatile fields should be accessed with ldar and stlr
Ad file rules now generate load acquire and store release for volatile accesses

Reviewed-by: kvn
2015-04-23 17:53:38 +01:00
Zoltan Majo
a452b030ce 8068945: Use RBP register as proper frame pointer in JIT compiled code on x86
Introduce the PreserveFramePointer flag to control if RBP is used as the frame pointer or as a general purpose register.

Reviewed-by: kvn, roland, dlong, enevill, shade
2015-04-27 10:49:43 +02:00
Daniel D. Daugherty
9b1474b512 Merge 2015-07-02 14:20:36 -07:00
Vladimir Kozlov
b9c00b1904 Merge 2015-04-16 14:05:48 -07:00
Andrew Haley
d81e78e8bc 8077615: AARCH64: Add C2 intrinsic for BigInteger::multiplyToLen() method
Add C2 intrinsic for BigInteger::multiplyToLen() on AArch64.

Reviewed-by: kvn
2015-04-14 11:43:18 +01:00
Coleen Phillimore
f0035b701e 8076492: Make common code from template interpreter code
Move case statement out of assembly code

Reviewed-by: minqi, sspitsyn, dholmes
2015-04-01 22:03:17 -04:00
Andrew Haley
1dfbc44c1f 8026049: (bf) Intrinsify ByteBuffer.put{Int, Double, Float, ...} methods
Use unaligned Unsafe loads and stores for ByteBuffer access on platforms which support unaligned access. Add intrinsics for Unsafe.{get,put}-X-Unaligned methods.

Reviewed-by: dholmes, jrose, psandoz, kvn
2015-03-31 12:31:18 -07:00
Zoltan Majo
90e9ec4634 Merge 2015-03-27 09:02:53 +01:00
Alejandro Murillo
4811592f50 Merge 2015-03-26 13:54:11 -07:00
Jesper Wilhelmsson
5f5b27baba Merge 2015-03-23 22:08:14 +01:00
Alejandro Murillo
7ce244a2eb Merge 2015-03-23 11:44:41 -07:00
Tobias Hartmann
869a12fdab 8075136: Unnecessary sign extension for byte array access
Added C2 matching rules to remove unnecessary sign extension for byte array access.

Reviewed-by: roland, kvn, aph, adinn
2015-03-23 10:15:53 +01:00