929 Commits

Author SHA1 Message Date
Sandhya Viswanathan
51fd716978 8078113: 8011102 changes may cause incorrect results
Replace Vzeroupper instruction in stubs with zeroing only used ymm registers.

Reviewed-by: kvn
2015-04-17 17:39:19 -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
Goetz Lindenmaier
af1efee490 8077618: Move rtmLocking.cpp to shared directory
Reviewed-by: dholmes, kvn
2015-04-13 18:49:59 -07:00
Igor Veresov
1b5090da9e 8076968: PICL based initialization of L2 cache line size on some SPARC systems is incorrect
Chcek both l2-dcache-line-size and l2-cache-line-size properties to determine the size of the line

Reviewed-by: kvn
2015-04-06 20:20:17 -07:00
Volker Simonis
1bcb57c8de 8076532: Fix format warning/error in methodHandles_ppc.cpp
Reviewed-by: dholmes
2015-04-02 11:28:55 +02: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
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
Tobias Hartmann
3bc3f7cd49 8075324: Costs of memory operands in aarch64.ad are inconsistent
Made cost of 'indOffI' consistent to the other memory operands.

Reviewed-by: roland, aph, adinn
2015-03-23 10:13:18 +01:00
Andrew Haley
f82562e36e 8075443: AARCH64: Missed L2I optimizations in C2
Use iRegIOrL2I for input operands whenever it makes sense.

Reviewed-by: kvn
2015-03-20 17:39:29 +00:00
Alejandro Murillo
b83414f119 Merge 2015-03-19 15:00:51 -07:00
Zoltan Majo
379e3d6fb6 Merge 2015-03-19 18:01:39 +01:00
Andrew Haley
2fc2ef9a39 8075045: AARCH64: Stack banging should use store rather than load
Change stack bangs to use a store rather than a load

Reviewed-by: dholmes
2015-03-17 14:03:05 +00:00
Alejandro Murillo
f0349a463b Merge 2015-03-16 14:27:33 -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
Coleen Phillimore
cd6b38c449 8074717: Merge interp_masm files for x86 _32 and _64
Merge interp_masm_x86 files into one.

Reviewed-by: sspitsyn, hseigel, mockner
2015-03-13 15:16:07 -04:00
Andrew Haley
bb8dc09453 8074723: AARCH64: Stray pop in C1 LIR_Assembler::emit_profile_type
Remove stray POP instruction

Reviewed-by: dholmes
2015-03-13 12:44:28 +00:00
Mikael Vidstedt
2b6f0b511f 6313046: Remove unused frame::native_param_addr code
Removed dead code in frame

Reviewed-by: dholmes, cjplummer, dsamersoff
2015-03-11 12:00:26 -07:00
Max Ockner
ca4b73ad27 8013393: Merge template interpreter files for x86 _32 and _64
The 32 and 64 bit versions of templateTable_x86 have been merged.

Reviewed-by: twisti, jrose, coleenp
2015-03-09 13:39:24 -04:00
Daniel D. Daugherty
38b93bbbcb Merge 2015-03-06 08:47:51 -08:00
Alejandro Murillo
cf1f3d308b Merge 2015-03-06 04:58:52 -08:00
Erik Osterlund
c2a4574760 7143664: Clean up OrderAccess implementations and usage
Clarify and correct the abstract model for memory barriers provided by the orderAccess class. Refactor the implementations using template specialization to allow the bulk of the code to be shared, with platform specific customizations applied as needed.

Reviewed-by: acorn, dcubed, dholmes, dlong, goetz, kbarrett, sgehwolf
2015-03-03 19:20:26 -05:00
Andrew Haley
45d5073b91 8074349: AARCH64: C2 generates poor code for some byte and character stores
Use iRegIorL2I as src input for char and byte stores.

Reviewed-by: kvn
2015-03-03 17:56:33 +00:00
Jesper Wilhelmsson
c1bc0a31b2 8074459: Flags handling memory sizes should be of type size_t
Changed the type to size_t for flags that handles memory sizes

Reviewed-by: kbarrett, tschatzl
2015-03-03 18:01:27 +01:00
Andrew Dinn
539384a8d2 8074119: [AARCH64] stage repo misses fixes from several Hotspot changes
Add shared code changes from 8059606, 8069230, 8068976, 8068977, 8072911 and 8071805

Reviewed-by: aph, kvn
2015-03-02 10:31:52 -08: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
Kim Barrett
40d3986051 8069016: Add BarrierSet downcast support
Add FakeRttiSupport utility and use to provide barrier_set_cast.

Reviewed-by: jmasa, sangheki
2015-02-27 19:52:48 -05:00
Vladimir Kozlov
239370b736 Merge 2015-02-26 10:56:54 -08:00
Jesper Wilhelmsson
5c18821ea5 Merge 2015-02-19 12:56:50 +01:00
Jesper Wilhelmsson
d7f5fccbc6 Merge 2015-02-16 21:24:39 +01:00
Christian Tornqvist
cdb714aeb5 Merge 2015-02-13 15:05:30 -08:00
Daniel D. Daugherty
a9e28164eb 8061553: Contended Locking fast enter bucket
JEP-143/JDK-8061553 Contended Locking fast enter bucket

Co-authored-by: Dave Dice <dave.dice@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Reviewed-by: dholmes, acorn
2015-02-13 10:01:42 -08:00
Stefan Karlsson
4913ad5d7d 8072911: Remove includes of oop.inline.hpp from .hpp files
Reviewed-by: brutisso, coleenp, jwilhelm, simonis, dholmes
2015-02-13 14:37:35 +01:00
Christian Tornqvist
094674666c Merge 2015-02-13 05:17:41 -08:00
Vladimir Ivanov
a1b368700b Merge 2015-02-12 13:55:54 -08:00
Paul Sandoz
c002e71565 8068977: Remove unused sun.misc.Unsafe prefetch intrinsic support
Reviewed-by: kvn, vlivanov
2015-02-10 21:32:05 +01:00
Stefan Karlsson
c132a5a0a5 8072910: Move the g1EvacFailure.hpp implementation to g1EvacFailure.cpp
Reviewed-by: jwilhelm, tschatzl
2015-02-10 17:16:17 +01:00
Andrew Haley
182a191e07 8071947: AARCH64: frame::safe_for_sender() computes incorrect sender_sp value for interpreted frames
Apply the fix for 8068655 to the AArch64 sources.

Reviewed-by: kvn
2015-02-06 10:36:46 -08:00
Andrew Haley
86e7982c2c 8072483: AARCH64: aarch64.ad uses the wrong operand class for some operations
Use iReg<X>NoSp registers operands where required.

Reviewed-by: kvn, adinn, enevill
2015-02-05 11:47:33 -08:00
Jesper Wilhelmsson
ad23789419 Merge 2015-02-05 12:23:29 +01:00
Christian Tornqvist
edbc932bc7 Merge 2015-02-04 18:22:46 -08:00
Joseph Provino
00d9c7a2d1 8071805: BarrierSet::Other is not used and should be removed
Remove all occurences of BarrierSet::Other because the barrier set kind is never set to Other.

Reviewed-by: tschatzl, kbarrett
2015-02-04 10:18:28 -05:00
Ed Nevill
db7a37cee0 8072129: [AARCH64] missing fix for 8066900
Add 8066900 fix to arm64 code.

Reviewed-by: kvn
2015-02-02 11:29:37 -08:00
Frederic Parain
788217a445 8068655: frame::safe_for_sender() computes incorrect sender_sp value for interpreted frames
Reviewed-by: dcubed, coleenp, bdelsart
2015-02-02 18:20:14 +01:00
Zoltan Majo
883d349e17 8071818: Incorrect addressing mode used for ldf in SPARC assembler
Update MacroAssembler::ldf to select addressing mode depending on Address parameter.

Reviewed-by: kvn, dlong
2015-01-30 10:40:08 +01:00
Andrew Haley
610bd6ba34 8071688: AARCH64: SIGSEGV in MethodData::next_data(ProfileData*)
Apply the fix for 8039975 to the AArch64 sources.

Reviewed-by: kvn, roland
2015-01-27 20:49:11 +01:00