84 Commits

Author SHA1 Message Date
Hui Shi
3b19bff980 8134322: AArch64: Fix several errors in C2 biased locking implementation
Several errors in C2 biased locking require fixing

Reviewed-by: kvn
2015-08-26 17:13:59 +01:00
Ed Nevill
10c3342331 8133842: aarch64: C2 generates illegal instructions with int shifts >=32
Fix logical operatations combined with shifts >= 32

Reviewed-by: kvn, aph, adinn
2015-08-20 09:40:08 +00:00
Andrew Dinn
96413b5dac 8078743: AARCH64: Extend use of stlr to cater for volatile object stores
The current use of stlr on AArch64 to implement volatile stores needs to be extended to cater for object stores.

Reviewed-by: kvn, aph, enevill
2015-08-11 10:25:24 -04:00
Ed Nevill
4f5be2ee49 8133352: aarch64: generates constrained unpredictable instructions
Fix generation of unpredictable STXR Rs, Rt, [Rn] with Rs == Rt

Reviewed-by: kvn, aph, adinn
2015-08-18 12:40:22 +00:00
Ed Nevill
1c9f1ea099 8133935: aarch64: fails to build from source
Add inlucde of oops/oop.inline.hpp to fix build

Reviewed-by: coleenp
2015-08-19 11:59:02 +00:00
Andrew Dinn
bdc4e4d045 8132875: AArch64: Fix error introduced into AArch64 CodeCache by commit for 8130309
The fix for issue 8130309 introduced several errors into the AArch64 codecache routines

Reviewed-by: aph, thartmann, kvn
2015-08-03 05:05:40 -04:00
Tobias Hartmann
e834a48100 8130309: Need to bailout cleanly if creation of stubs fails when codecache is out of space
Check for failed expansion of stub section in code buffer and bailout.

Reviewed-by: kvn, adinn, dlong, roland, twisti
2015-07-29 08:05:21 +02:00
Alexander Alexeev
f3d31d3866 8131062: aarch64: add support for GHASH acceleration
Add support for GHASH using pmull

Reviewed-by: kvn, goetz, aph
2015-07-21 13:36:28 +00:00
Alexander Alexeev
b6cfe54a64 8132010: aarch64: regression test fails compiler/intrinsics/sha/cli/TestUseSHA256IntrinsicsOptionOnSupportedCPU.java
Fix type in SHA flag setting code

Reviewed-by: kvn, goetz, aph, zmajo
2015-07-21 14:23:08 +00:00
Roland Westrelin
327cf6829b Merge 2015-07-27 09:42:23 +02:00
Roland Westrelin
51ddedd5c7 Merge 2015-07-23 19:11:28 +02:00
Andrew Haley
71716bea0b Merge 2015-07-23 17:29:44 +01:00
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