Commit graph

77 commits

Author SHA1 Message Date
David Holmes
6e0ea9d21c 8132510: Replace ThreadLocalStorage with compiler/language-based thread-local variables
Used compiled-based TLS when available. Additional contributions by Thomas Stufe (AIX) and Andrew Haley (Aarch64)

Reviewed-by: stuefe, bdelsart, dcubed
2015-12-04 04:06:37 -05:00
Nils Eliasson
a51ff63df7 Merge 2015-11-24 10:30:23 +01:00
Zoltan Majo
d0382697c4 8143208: compiler/c1/6855215/Test6855215.java supports_sse2() failed
Check that SSE is enabled before using SSE instructions in string-related intrinsics. Make the UseSSE42Intrinsics dependent on UseSSE >= 4.

Reviewed-by: kvn
2015-11-23 08:11:30 +01:00
Michael Berg
2ae7dcf853 8142980: SKX SpecJvm2008 - Derby
Fix EVEX and AVX512 problems found by testing on 64-bit SKX and KNL EVEX enabled platforms.

Reviewed-by: iveresov, kvn, vlivanov
2015-11-19 16:07:22 -08:00
Kim Barrett
e8c5bc2024 8143014: Access PtrQueue member offsets through derived classes
Moved accessors to derived classes and updated callers.

Reviewed-by: tschatzl, jmasa, twisti
2015-11-17 16:40:52 -05:00
Nils Eliasson
6ec2776bf3 8141629: Hs-comp doesn't build with JDK-8139040
Fix benign uninitialized vars

Reviewed-by: roland
2015-11-06 16:42:01 +01:00
Tobias Hartmann
7af927f9c1 8141132: JEP 254: Compact Strings
Adopt a more space-efficient internal representation for strings.

Co-authored-by: Brent Christian <brent.christian@oracle.com>
Co-authored-by: Vivek Deshpande <vivek.r.deshpande@intel.com>
Co-authored-by: Charlie Hunt <charlie.hunt@oracle.com>
Co-authored-by: Vladimir Kozlov <vladimir.kozlov@oracle.com>
Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Xueming Shen <xueming.shen@oracle.com>
Co-authored-by: Aleksey Shipilev <aleksey.shipilev@oracle.com>
Co-authored-by: Sandhya Viswanathan <sandhya.viswanathan@intel.com>
Reviewed-by: alanb, bdelsart, coleenp, iklam, jiangli, jrose, kevinw, naoto, pliden, roland, smarks, twisti
2015-11-03 09:41:03 +01:00
Dean Long
344a9becee Merge 2015-10-17 19:40:30 -04:00
Zoltan Majo
34e1545cab 8080650: Enable stubs to use frame pointers correctly
Change MacroAssembler::verified_entry() to set up RBP correctly when generating stub code.

Reviewed-by: kvn
2015-10-15 17:38:41 +02:00
Jesper Wilhelmsson
7078962b9c Merge 2015-10-15 13:28:22 +02:00
David Lindholm
5770f4eb32 8042893: compiler: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files
8042894: runtime: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files

Reviewed-by: goetz, brutisso
2015-10-09 09:42:33 +02:00
Vivek R Deshpande
5a633b1cbd 8132207: update for x86 exp in the math lib
Add new java.lang.Math() intrinsics from x86

Reviewed-by: kvn, iveresov
2015-10-05 20:02:40 -07:00
Jesper Wilhelmsson
e75e2e04f7 Merge 2015-10-07 01:03:24 +02:00
Christian Thalinger
16526e000e 8136421: JEP 243: Java-Level JVM Compiler Interface
Reviewed-by: ihse, alanb, roland, coleenp, iveresov, kvn, kbarrett
2015-10-08 12:49:30 -10:00
David Lindholm
1e71f67736 8080775: Better argument formatting for assert() and friends
Reviewed-by: kbarrett, pliden
2015-09-29 11:02:08 +02:00
Nils Eliasson
2f9e32256d Merge 2015-11-13 13:31:48 +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
Tomasz Wojtowicz
61b77b8590 8134553: CRC32C implementations for x86/x64 targets
Reviewed-by: kvn
2015-09-16 15:54:32 -07:00
Michael Berg
d67924dc8e 8132160: support for AVX 512 call frames and stack management
Simplify save/restore frame on x86 systems which support EVEX.

Reviewed-by: kvn, iveresov
2015-09-11 17:02:44 -07:00
Dmitry Samersoff
6ed285af0a Merge 2015-08-31 21:46:33 +03: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
Zoltan Majo
1e55e60cb1 8076373: In 32-bit VM interpreter and compiled code process NaN values differently
Change interpreter to use XMM registers on x86_32 if they are available. Add stubs for methods transforming from/to int/long float/double.

Reviewed-by: kvn, mcberg
2015-08-19 08:55:18 +02:00
Aleksey Shipilev
f6c7ab6565 8131682: C1 should use multibyte nops everywhere
Reviewed-by: dlong, goetz, adinn, aph, vlivanov
2015-08-11 12:24:26 +03:00
Thomas Schatzl
392a65ff86 8131344: Missing klass.inline.hpp include in compiler files
Reviewed-by: kvn
2015-07-16 11:55:21 +02:00
Daniel D. Daugherty
0db4f21ce2 8130448: thread dump improvements, comment additions, new diagnostics inspired by 8077392
Reviewed-by: dholmes, coleenp
2015-07-14 09:33:20 -07:00
Bill Pittore
304b59b0c8 8081202: Hotspot compile warning: "Invalid suffix on literal; C++11 requires a space between literal and identifier"
Need to add a space between macro identifier and string literal

Reviewed-by: stefank, dholmes, kbarrett
2015-06-24 12:12:25 -04:00
Andrew Haley
b387838cea 8079315: UseCondCardMark broken in conjunction with CMS precleaning on x86
Add the necessary StoreLoad barrier in interpreter, C1 and C2 for x86

Reviewed-by: tschatzl
2015-06-19 09:41:50 +02: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
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
Jesper Wilhelmsson
25c41c6094 Merge 2015-05-21 21:17:56 +02:00
Jesper Wilhelmsson
f64e5038a4 Merge 2015-05-18 17:09:47 +02:00
Daniel D. Daugherty
5cf176b870 Merge 2015-05-16 13:19:11 -07:00
Max Ockner
813f34059b 6811960: x86 biasedlocking epoch expired rare bug
It is now guaranteed that biased_locking_enter will be passed a valid tmp_reg.

Reviewed-by: coleenp, dcubed, kvn
2015-05-14 14:03:58 -04:00
Michael C Berg
4fca8dbb1f 8076276: Add support for AVX512
Reviewed-by: kvn, roland
2015-05-08 11:49:20 -07:00
Bharadwaj Yadavalli
f8d0a6ff28 Merge 2015-04-30 18:14:58 -04: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
884f0d320f 8073165: Contended Locking fast exit bucket
JEP-143/JDK-8073165 Contended Locking fast exit bucket

Co-authored-by: Dave Dice <dave.dice@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Reviewed-by: dholmes, acorn, dice, dcubed
2015-04-16 08:23:26 -07:00
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
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
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
Tobias Hartmann
21e2e5ffc0 8069580: String intrinsic related cleanups
Small cleanup of string intrinsic related code.

Reviewed-by: kvn, roland
2015-01-22 09:07:41 +01:00
Roland Westrelin
3b3dd985de 8063086: Math.pow yields different results upon repeated calls
C2 treats x^2 as a special case and computes x * x while the interpreter and c1 don't have special case code for X^2.

Reviewed-by: kvn
2015-01-07 16:40:02 +01:00
David Chase
f454e5e02c Merge 2014-11-13 11:35:15 -05:00
Jesper Wilhelmsson
c72d5c48e2 Merge 2014-11-13 12:29:09 +01:00
Daniel D. Daugherty
d7ec650456 8062851: cleanup ObjectMonitor offset adjustments
JEP-143/JDK-8046133 - cleanup computation of ObjectMonitor field pointers

Reviewed-by: dholmes, redestad, coleenp
2014-11-06 13:05:14 -08:00
Martin Doerr
d4fc9133ab 8062950: Bug in locking code when UseOptoBiasInlining is disabled: assert(dmw->is_neutral()) failed: invariant
Reviewed-by: dholmes, kvn
2014-11-05 16:28:11 +01:00
Bengt Rutisson
4601eb634a 8061308: Remove iCMS
Reviewed-by: mgerdin, jmasa
2014-10-31 09:10:51 +01: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
Vladimir Kozlov
7764490363 8052081: Optimize generated by C2 code for Intel's Atom processor
Allow to execute vectorization and crc32 optimization on Atom. Enable UseFPUForSpilling by default on x86.

Reviewed-by: roland
2014-08-05 15:02:10 -07:00
David Chase
305ec3bd3f 8037816: Fix for 8036122 breaks build with Xcode5/clang
Repaired or selectively disabled offending formats; future-proofed with additional checking

Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00