26 Commits

Author SHA1 Message Date
Ed Nevill
59193ab336 8151502: optimize pd_disjoint_words and pd_conjoint_words
Optimize copy routines using inline assembler

Reviewed-by: aph
2016-03-10 14:53:09 +00:00
Ed Nevill
5f3739f293 8150313: aarch64: optimise array copy using SIMD instructions
Reviewed-by: aph
2016-02-20 15:15:35 +00:00
Ed Nevill
af0f23a617 8150082: aarch64: optimise small array copy
Reviewed-by: aph
2016-02-20 15:11:42 +00:00
Felix Yang
40cdd7a181 8149907: aarch64: use load/store pair instructions in call_stub
Aarch64: make use of load/store pair instructions in call_stub to save space

Reviewed-by: aph
2016-02-18 21:53:24 +08:00
Andrew Haley
8dd35ed3dd 8150045: arraycopy causes segfaults in SATB during garbage collection
Reviewed-by: roland
2016-02-17 14:06:45 +00:00
Hui Shi
663e1a5c6d 8149080: AArch64: Recognise disjoint array copy in stub code
Detect array copy can use fwd copy by checking (dest-src) above_same (copy_size)

Reviewed-by: aph
2016-02-05 03:55:51 -08:00
Ed Nevill
4c5566f502 8149365: aarch64: memory copy does not prefetch on backwards copy
Implement prefetch on backwards copies

Reviewed-by: aph
2016-02-08 14:14:35 +00:00
Ed Nevill
a7de801a92 8148948: aarch64: generate_copy_longs calls align() incorrectly
Fix alignments

Reviewed-by: aph
2016-02-03 11:34:12 +00:00
Felix Yang
c675914f1c 8148328: aarch64: redundant lsr instructions in stub code
Avoid redundant lsr instructions in jbyte_arraycopy and jbyte_disjoint_arraycopy.

Reviewed-by: aph
2016-01-27 12:20:53 +08:00
Andrew Haley
6b826df140 8146709: AArch64: Incorrect use of ADRP for byte_map_base
Reviewed-by: roland
2016-01-19 17:52:52 +00:00
Christian Thalinger
9e981ee107 Merge 2015-12-18 12:39:02 -08:00
Andrew Haley
c2221a88e8 8145320: Create unsafe_arraycopy and generic_arraycopy for AArch64
Reviewed-by: kvn
2015-12-14 15:53:48 +00:00
Fei Yang
ad8ecc0f98 8144201: aarch64: jdk/test/com/sun/net/httpserver/Test6a.java fails with --enable-unlimited-crypto
Fix typo in stub generate_cipherBlockChaining_decryptAESCrypt

Reviewed-by: roland
2015-12-07 21:14:56 +08:00
Dean Long
344a9becee Merge 2015-10-17 19:40:30 -04:00
Ed Nevill
a138ebeb52 8139043: aarch64: add support for adler32 intrinsic
Add adler32 support like 8132081 for sparc

Reviewed-by: kvn
2015-10-08 13:14:46 +00:00
Andrew Haley
67af37e0b8 8135018: AARCH64: Missing memory barriers for CMS collector
Add StoreStore barrier when CMS needs them

Reviewed-by: tschatzl
2015-09-24 12:04:57 +02:00
Jesper Wilhelmsson
1736e104a1 Merge 2015-09-08 16:10:37 +02:00
Andrew Haley
ef62a6daab 8134869: AARCH64: GHASH intrinsic is not optimal
Rewrite intrinsic to make better use of SIMD instructions

Reviewed-by: kvn
2015-09-02 13:23:59 +00:00
Kim Barrett
7706e36194 8072817: CardTableExtension kind() should be BarrierSet::CardTableExtension
Use BarrierSet::CardTableForRS where needed, and update concrete bs tags.

Reviewed-by: jwilhelm, jmasa
2015-08-18 17:48:35 -04: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
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
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
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
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
Joseph Provino
67fb17a658 8067891: Remove vestigal G1SATBCT barrier set kind
Remove all case statements specifying G1SATBCT

Reviewed-by: tschatzl, kbarrett
2015-03-23 12:18:20 +01:00
Andrew Haley
9c458decf5 8068054: AARCH64: Assembler interpreter, shared runtime
Add src/cpu/aarch64/vm/* interpreter, shared runtime files.

Reviewed-by: kvn, roland, coleenp, twisti
2015-01-20 11:34:17 -08:00