Commit graph

119 commits

Author SHA1 Message Date
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
Niclas Adlertz
922879d58e 8029302: Performance regression in Math.pow intrinsic
Added special case for x^y where y == 2

Reviewed-by: kvn, roland
2014-04-25 12:48:34 +02:00
Roland Westrelin
f5adc57f94 8032410: compiler/uncommontrap/TestStackBangRbp.java times out on Solaris-Sparc V9
Make compiled code bang the stack by the worst case size of the interpreter frame at deoptimization points.

Reviewed-by: twisti, kvn
2014-04-01 09:36:49 +02:00
Vladimir Kozlov
4841e826dd 8038939: Some options related to RTM locking optimization works inconsistently
Switch UseRTMXendForLockBusy flag ON by default and change code to retry RTM locking on lock busy condition by default.

Reviewed-by: roland
2014-04-09 11:18:02 -07:00
Vladimir Kozlov
97a51c5c2a 8031320: Use Intel RTM instructions for locks
Use RTM for inflated locks and stack locks.

Reviewed-by: iveresov, twisti, roland, dcubed
2014-03-20 17:49:27 -07:00
Per Lidén
4dc240f785 8079792: GC directory structure cleanup
Reviewed-by: brutisso, stefank, david
2015-05-13 15:16:06 +02:00
Vladimir Kozlov
e2fecea88e 8033805: Move Fast_Lock/Fast_Unlock code from .ad files to macroassembler
Consolidated C2 x86 locking code in one place in macroAssembler_x86.cpp.

Reviewed-by: roland
2014-02-24 15:12:26 -08:00
Albert Noll
234b4044ba 8028109: compiler/codecache/CheckReservedInitialCodeCacheSizeArgOrder.java crashes in RT_Baseline
Use non-relocatable code to load byte_map_base

Reviewed-by: kvn, roland
2013-12-04 09:31:17 +01:00
Mikael Vidstedt
e80dce6a4d 8026775: nsk/jvmti/RedefineClasses/StressRedefine crashes due to EXCEPTION_ACCESS_VIOLATION
Uncommon trap blob did not bang all the stack shadow pages

Reviewed-by: kvn, twisti, iveresov, jrose
2013-11-06 06:51:24 -08:00