671 Commits

Author SHA1 Message Date
David Chase
fbe3993153 Merge 2014-11-07 13:58:52 -05: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
Goetz Lindenmaier
0aa09022fa 8062370: Various minor code improvements
A lot of fixes useful to improve the code quality.

Reviewed-by: coleenp, dholmes
2014-10-29 10:13:24 +01:00
Jesper Wilhelmsson
b59b80b068 Merge 2014-11-03 15:53:48 +01:00
Bengt Rutisson
4601eb634a 8061308: Remove iCMS
Reviewed-by: mgerdin, jmasa
2014-10-31 09:10:51 +01:00
Erik Osterlund
a324ff0f31 8058255: Native jbyte Atomic::cmpxchg for supported x86 platforms
Use the native cmpxchgb instruction on x86.

Reviewed-by: dholmes, kbarrett, phh
2014-10-21 15:07:25 +02:00
Jesper Wilhelmsson
2616e09389 Merge 2014-11-17 21:32:32 +01:00
Stefan Karlsson
692dbfd02d 8062808: Turn on the -Wreturn-type warning
Reviewed-by: mgerdin, tschatzl, coleenp, jrose, kbarrett
2014-11-12 13:55:59 +01:00
Daniel D. Daugherty
f1ab0fae73 8049737: Contended Locking reorder and cache line bucket
JEP-143/JDK-8046133 - optimization #1 - reorder and cache line bucket.

Co-authored-by: Dave Dice <dave.dice@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Reviewed-by: shade, dice, dholmes, dsimms
2014-10-14 10:32:12 -07:00
Tobias Hartmann
ea755702aa 8059468: Fix PrintCodeCache output changed by JDK-8059137
Change output of PrintCodeCache to print "CodeCache" instead of "Code Cache" and change name of non-method code heap to non-nmethod code heap.

Reviewed-by: vlivanov, anoll
2014-09-30 15:44:43 +02:00
Volker Simonis
a1628426d3 8058345: Refactor native stack printing from vmError.cpp to debug.cpp to make it available in gdb as well
Also fix stack trace on x86 to enable walking of runtime stubs and native wrappers

Reviewed-by: kvn
2014-09-24 12:19:07 -07:00
Tobias Hartmann
cd01de591a 8015774: Add support for multiple code heaps
Support for segmentation of the code cache. Separate code heaps are created and used to store code of different types.

Reviewed-by: kvn, iveresov, roland, anoll, egahlin, sla
2014-09-17 08:00:07 +02:00
Tobias Hartmann
dd6285d984 8048721: -XX:+PrintCompilation prints negative bci for non entrant OSR methods
Removed 'InvalidOSREntryBci' and checking nmethod::_state instead to determine if an osr method is non-entrant.

Reviewed-by: kvn, vlivanov, drchase
2014-09-15 08:08:22 +02:00
Aleksey Shipilev
13329b5040 8050147: StoreLoad barrier interferes with stack usages
Reviewed-by: jrose, kvn, drchase
2014-09-04 13:11:25 +04:00
Vladimir Kozlov
44d1787a26 8059139: It should be possible to explicitly disable usage of TZCNT instr w/ -XX:-UseBMI1Instructions
Reviewed-by: iveresov
2014-10-17 15:35:25 -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
f813683519 8055069: TSX and RTM should be deprecated more strongly until hardware is corrected
Require to specify UnlockExperimentalVMOptions flag together with UseRTMLocking flag on un-patched systems where CPUID allows it but is unsupported otherwise.

Reviewed-by: iveresov, fzhinkin
2014-08-22 12:03:49 -07:00
Coleen Phillimore
cafb36661d 8003426: Remove UseFastAccessors and UseFastEmptyMethods except for zero
These options have been long disabled in Xmixed mode because they prevent these small methods from being inlined and are subject to bit rot, and we don't need more macro assembler code to maintain and change if the constant pool cache format changes.

Reviewed-by: simonis, kvn
2014-08-12 10:48:55 -04:00
Zhengyu Gu
8a690a1250 6424123: JVM crashes on failed 'strdup' call
Calling os::malloc()/os::strdup() and new os::strdup_check_oom() instead of ::malloc()/::strdup() for native memory tracking purpose

Reviewed-by: coleenp, ctornqvi, kvn
2014-08-11 10:18:09 -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
Coleen Phillimore
e051932425 Merge 2014-07-18 11:22:49 -04:00
Coleen Phillimore
3f0a945468 8004128: NPG: remove stackwalking in Threads::gc_prologue and gc_epilogue code
Remove bcx and mdx handling.  We no longer have to convert bytecode pointers to indices for GC since Methods aren't moved.

Reviewed-by: mgerdin, kvn
2014-07-17 15:45:46 -04:00
Daniel D. Daugherty
a06d36cada 8049717: expose L1_data_cache_line_size for diagnostic/sanity checks
Add support for VM_Version::L1_data_cache_line_size().

Reviewed-by: dsimms, kvn, dholmes
2014-07-15 07:33:49 -07:00
Goetz Lindenmaier
25f33c005d 8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories
Introduce and clean up umbrella headers for the files in the cpu subdirectories.

Reviewed-by: lfoltan, coleenp, dholmes
2014-07-04 11:46:01 +02:00
Goetz Lindenmaier
f2051ed6fa 8048241: Introduce umbrella header os.inline.hpp and clean up includes
Reviewed-by: coleenp, dholmes, lfoltan
2014-06-26 16:05:15 +02:00
Jon Masamitsu
38aa661273 Merge 2014-06-26 18:55:29 -07:00
Tobias Hartmann
801975f4ca 8033332: missing types in TemplateInterpreterGenerator::generate_result_handler_for
Add missing case statements for T_LONG and T_VOID to generate_result_handler_for(..).

Reviewed-by: iveresov, anoll
2014-06-25 09:19:09 +02:00
Stefan Karlsson
c3148bb6cb 8047326: Consolidate all CompiledIC::CompiledIC implementations and move it to compiledIC.cpp
Reviewed-by: vlivanov, ehelin
2014-06-25 08:56:57 +02:00
Lev Priima
644042fe4a 8041794: remove bytecodes_<arch>.{cpp,hpp} files
Reviewed-by: dholmes, coleenp, twisti, iignatyev
2014-06-20 22:39:56 +04:00
Igor Veresov
7ae9df8697 8046684: sharedRuntime.cpp...assert(((nmethod*)cb)->is_at_poll_or_poll_return(pc)) failed: safepoint polling: type must be poll
Emit a poll relocation for the testl in is_polling_page_far() on x86

Reviewed-by: vlivanov, roland
2014-06-18 10:54:32 -07:00
James Cheng
395560c428 8035968: Leverage CPU Instructions to Improve SHA Performance on SPARC
Add C2 SHA intrinsics on SPARC

Reviewed-by: kvn, roland
2014-06-11 11:05:10 -07:00
Rickard Bäckman
0915147727 8031994: java/lang/Character/CheckProp test times out
Reviewed-by: iveresov, roland
2014-06-04 10:01:28 +02:00
Mikael Vidstedt
e09b9cbc3c 8044242: Remove dead NativeMovRegMemPatching class
Reviewed-by: twisti, kvn
2014-06-02 15:48:34 -07:00
Tobias Hartmann
2a0815a55e 8034812: remove IDX_INIT macro hack in Node class
The IDX_INIT macro used by Node::Node(...) to retrieve the Compile object is removed and replaced by a call to Compile::current(). The Node constructor, new operator and all calls to it are adapted accordingly.

Reviewed-by: kvn, jrose, iveresov, goetz
2014-06-02 08:07:29 +02:00
Igor Veresov
54db2c2d61 8032463: VirtualDispatch test timeout with DeoptimizeALot
Introduce code aging for warm method detection

Reviewed-by: kvn, twisti
2014-05-13 11:32:10 -07:00
Tobias Hartmann
5938d3d5b9 8021770: BackEdgeThreshold option is no longer used and should be removed
The BackEdgeThreshold option is removed because it is no longer used.

Reviewed-by: twisti, kvn, cjplummer
2014-05-13 11:25:17 +02: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
Jon Masamitsu
39154726de Merge 2014-05-08 18:22:22 -07:00
Vladimir Kozlov
d9056b18ee 8041957: -XX:UseAVX=0 cause assert(UseAVX) failed
Temporary set UseAVX=1 and UseSSE=2 in generate_get_cpu_info()

Reviewed-by: twisti
2014-04-29 12:20:53 -07:00
Tobias Hartmann
06c26b6f97 8036956: remove EnableInvokeDynamic flag
The EnableInvokeDynamic flag and all support code is removed because it is not longer used in JDK 9.

Reviewed-by: kvn, twisti
2014-04-29 08:08:44 +02: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
0acbad17c8 8039975: SIGSEGV in MethodData::next_data(ProfileData*)
Profiling code in interpreter broken when argument profiling is off.

Reviewed-by: iveresov, kvn
2014-04-18 14:25:21 +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
Goetz Lindenmaier
d7b640b3ce 8039146: Fix 64-bit store to int JNIHandleBlock::_top
Reviewed-by: coleenp, kvn
2014-04-03 12:37:53 +02:00
Igor Veresov
6428c0a397 8039043: Implicit null check is in the wrong place in C1 -UseCompressedOops
Null check is placed in a wrong place when storing a null to an object field on x64 with compressed oops off

Reviewed-by: roland, vlivanov, kvn
2014-04-02 11:24:51 -07:00
Vladimir Kozlov
77d38feb95 8038633: crash in VM_Version::get_processor_features() on startup
Windows need an exception wrapper around getPsrInfo_stub() call in order to properly handle SEGV for YMM registers test.

Reviewed-by: iveresov, iignatyev
2014-03-31 13:08:03 -07:00
Lutz Schmidt
ac75d4fc2f 8037821: Account for trampoline stubs when estimating code buffer sizes
Take into account space needed for "trampoline code" used by calls on PPC64.

Reviewed-by: kvn
2014-03-25 12:54:21 -07:00
Igor Veresov
ddc2f91ab4 8038222: Assembler::bsrl fails on assert when -UseCountLeadingZerosInstruction is used on CPU with LZCNT support
Remove the overly strict assert

Reviewed-by: kvn, twisti
2014-03-24 23:13:46 -07:00