59 Commits

Author SHA1 Message Date
Jesper Wilhelmsson
cc14920031 Merge 2017-04-06 22:58:55 +02:00
Mikael Gerdin
cc1aaab7e9 8176100: [REDO][REDO] G1 Needs pre barrier on dereference of weak JNI handles
Reviewed-by: kbarrett, coleenp, tschatzl
2017-03-22 15:25:21 +01:00
Daniel D. Daugherty
298e3a2dcc 8175086: [BACKOUT] fix for JDK-8166188
Reviewed-by: kbarrett, jwilhelm, dcubed
2017-02-16 10:41:19 -08:00
Kim Barrett
28477cf493 8166188: G1 Needs pre barrier on dereference of weak JNI handles
Add low tag to jweaks and G1 barrier for jweak loads.

Co-authored-by: Martin Doerr <martin.doerr@sap.com>
Co-authored-by: Volker Simonis <volker.simonis@sap.com>
Reviewed-by: mgerdin, mdoerr, pliden, dlong, dcubed, coleenp, aph, tschatzl
2017-02-15 22:19:13 -05:00
Vivek Deshpande
631dc21518 8171974: Fix for R10 Register clobbering with usage of ExternalAddress
Reviewed-by: kvn, rbackman
2017-01-03 14:56:51 -08:00
Chris Plummer
3b086bdbbb 8172020: Internal Error (cpu/arm/vm/frame_arm.cpp:571): assert(obj == __null || Universe::heap()->is_in(obj)) failed: sanity check #
Do check_and_handle_earlyret() on method return

Reviewed-by: sspitsyn, aph, adinn, simonis
2017-02-28 10:51:47 -08:00
Smita Kamath
2bc0337093 8165381: Update for x86 SHA512 using AVX2
Add intrinsics for x86 AVX2 architecture with no SHA instructions.

Reviewed-by: kvn
2016-10-21 10:16:09 -07:00
Vivek Deshpande
d58e3e0324 8154122: Intrinsify fused mac operations
Added FMA intrinsics on x86

Reviewed-by: kvn, aph, darcy
2016-08-26 12:17:50 -07:00
Dean Long
6e820bb025 8161598: Kitchensink fails: assert(nm->insts_contains(original_pc)) failed: original PC must be in nmethod/CompiledMethod
Skip unwalkable frames in

Reviewed-by: fparain, coleenp, aph
2016-08-16 09:19:13 -07:00
Vivek Deshpande
489b38091e 8154473: Update for CompilerDirectives to control stub generation and intrinsics
Use -XX:DisableIntrinsic flag to control intrinsics usage in Interpreter.

Reviewed-by: twisti, neliasso, kvn, simonis
2016-05-20 14:17:55 -07:00
Vladimir Ivanov
622a5ae6f0 Merge 2016-05-06 18:20:50 +03:00
Paul Sandoz
472a1bc607 8151268: Wire up the x86 _vectorizedMismatch stub routine in C1
Reviewed-by: kvn
2016-05-05 10:03:26 -07:00
Vladimir Ivanov
72747f47fd Merge 2016-04-29 02:13:40 +03:00
Jan Civlin
f2e9b827d6 8154495: SHA256 AVX2 intrinsic (when no supports_sha() available)
Reviewed-by: kvn
2016-04-26 21:54:21 -07:00
Coleen Phillimore
de88e58a82 8154580: Save mirror in interpreter frame to enable cleanups of CLDClosure
GC walks the mirror using OopClosure rather than using CLDClosure in oops_interpreted_do()

Reviewed-by: dlong, twisti, stefank
2016-04-25 09:51:00 -04:00
Michael Berg
64cf7e6b6f 8153998: Masked vector post loops
Masked vectorization for post loops to execute in a single iteration in place of fixup scalar loops which used to take many iterations to complete work for user loops.

Reviewed-by: twisti, kvn
2016-04-18 15:18:14 -07:00
Shravya Rukmannagari
ad79a5ae65 8152907: Update for x86 tan and log10 in the math lib
Optimize Math.tan() and log10() for 64 and 32 bit X86 architecture using Intel LIBM  implementation.

Reviewed-by: kvn, twisti
2016-04-06 10:29:26 -07:00
Michael Berg
e38aef947f 8151003: Remove nds->is_valid() checks from assembler_x86.cpp
Reviewed-by: kvn
2016-04-05 11:37:41 -07:00
Mikael Vidstedt
d4b4dca194 8151002: Make Assembler methods vextract and vinsert match actual instructions
Reviewed-by: kvn, vlivanov, mcberg
2016-03-07 15:03:48 -08:00
Vivek Deshpande
40fe96de0d 8150767: Enables SHA Extensions on x86
Add x86 intrinsics for SHA-1 and SHA-256.

Co-authored-by: Shravya Rukmannagari <shravya.rukmannagari@intel.com>
Reviewed-by: kvn, twisti
2016-03-03 22:02:13 -08:00
Aleksey Shipilev
103aff334f 8146801: Allocating short arrays of non-constant size is slow
Reviewed-by: kvn, twisti, vlivanov
2016-03-04 01:30:11 +03:00
Zoltan Majo
dfa6539a6a 8086053: Address inconsistencies regarding ZeroTLAB
Add zero-initialization to C1 for fast TLAB refills; strenghten C2 conditions for skipping zero-initialization.

Reviewed-by: kvn, thartmann
2016-01-12 09:19:09 +01:00
Christian Thalinger
a0861106e3 Merge 2016-01-11 17:11:57 -08:00
Joseph Provino
9288ff53e7 Merge 2016-01-07 21:10:28 +00:00
Coleen Phillimore
ac0d55c188 8074457: Remove the non-Zero CPP Interpreter
Remove cppInterpreter assembly files and reorganize InterpreterGenerator includes

Reviewed-by: goetz, bdelsart
2015-12-22 11:11:29 -05:00
Vivek R Deshpande
453650389f 8145688: Update for x86 pow in the math lib
Optimizes Math.pow() for 64 and 32 bit X86 architecture using Intel LIBM  implementation.

Reviewed-by: kvn
2015-12-23 21:09:50 -08:00
Christian Thalinger
9e981ee107 Merge 2015-12-18 12:39:02 -08:00
Vivek Deshpande
6a52e93df7 8143353: update for x86 sin and cos in the math lib
Optimize Math.sin() and cos() for 64 and 32 bit X86 architecture using Intel LIBM  implementation.

Reviewed-by: kvn
2016-01-08 21:06:50 -08:00
Frederic Parain
ef800bd53f 8046936: JEP 270: Reserved Stack Areas for Critical Sections
Reviewed-by: acorn, dcubed
2015-12-11 09:07:07 -08:00
Vivek R Deshpande
2d9a6cfd3f 8143355: Update for addition of vectorizedMismatch intrinsic for x86
Co-authored-by: Liqi Yi <liqi.yi@intel.com>
Reviewed-by: kvn
2015-12-07 16:35:07 -08:00
Vladimir Ivanov
d60a09e9c5 8072008: Emit direct call instead of linkTo* for recursive indy/MH.invoke* calls
Reviewed-by: jrose, dlong, aph, forax
2015-12-04 23:46:19 +03: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
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
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
Vivek R Deshpande
c07f802b14 8139575: Update for x86 log in the math lib
Add new java.lang.Math() intrinsics from x86

Reviewed-by: kvn, iveresov
2015-10-22 21:39:25 -07: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
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
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
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
Michael C Berg
4fca8dbb1f 8076276: Add support for AVX512
Reviewed-by: kvn, roland
2015-05-08 11:49:20 -07: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
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
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
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
Roland Westrelin
cbd0e9bf96 8023657: New type profiling points: arguments to call
X86 interpreter and c1 type profiling for arguments at calls

Reviewed-by: kvn, twisti
2013-10-09 16:32:21 +02:00
Harold Seigel
4d91f4e69d 8003424: Enable Class Data Sharing for CompressedOops
8016729: ObjectAlignmentInBytes=16 now forces the use of heap based compressed oops
8005933: The -Xshare:auto option is ignored for -server

Move klass metaspace above the heap and support CDS with compressed klass ptrs.

Reviewed-by: coleenp, kvn, mgerdin, tschatzl, stefank
2013-08-15 20:04:10 -04:00