Jesper Wilhelmsson
2497c61bc6
Merge
2016-04-11 20:16:35 +02:00
Calvin Cheung
28edd79d64
8145221: Use trampolines for i2i and i2c entries in Methods that are stored in CDS archive
...
This optimization reduces the size of the RW region of the CDS archive. It also reduces the amount of pages in the RW region that are actually written into during runtime.
Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: Goetz Lindenmaier <goetz.lindenmaier@sap.com>
Reviewed-by: dlong, iklam, jiangli
2016-04-07 22:03:04 -07:00
Chris Plummer
fbe049838a
8148639: Some MethodCounter fields can be excluded when not including C2
...
Removed _interpreter_invocation_count and _interpreter_throwout_count fields for C1
Reviewed-by: kvn, coleenp
2016-03-30 09:52:02 -07:00
Coleen Phillimore
97e169ac77
8145628: hotspot metadata classes shouldn't use HeapWordSize or heap related macros like align_object_size
...
Use align_metadata_size, align_metadata_offset and is_metadata_aligned for metadata rather than align_object_size, etc. Use wordSize rather than HeapWordSize for metadata. Use align_ptr_up rather than align_pointer_up (all the related functions are ptr).
Reviewed-by: hseigel, jmasa, cjplummer
2016-01-30 11:02:29 -05:00
Jesper Wilhelmsson
54d0181916
Merge
2016-01-14 17:36:29 +01:00
Rachel Protacio
6dac872d4d
8141564: Convert TraceItables and PrintVtables to Unified Logging
...
The former -XX:+TraceItables and +PrintVtables flags have been converted to UL options -Xlog:itables=trace and vtables=trace
Reviewed-by: acorn, coleenp, dholmes
2016-01-07 13:53:20 -05:00
Christian Thalinger
9e981ee107
Merge
2015-12-18 12:39:02 -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
Christian Thalinger
bf5db72254
8134994: use separate VMStructs databases for SA and JVMCI
...
Reviewed-by: kbarrett
2015-12-14 17:02:02 -10:00
Markus Grönlund
2ad9d3192f
8140485: Class load and creation cleanup
...
Reviewed-by: hseigel, coleenp, sspitsyn
2015-12-08 20:04:03 +01:00
Nils Eliasson
2f9e32256d
Merge
2015-11-13 13:31:48 +01:00
Aleksey Shipilev
ac09d8a135
8140650: Method::is_accessor should cover getters and setters for all types
...
Reviewed-by: vlivanov, coleenp, sgehwolf
2015-11-11 01:27:36 +03:00
Joseph Provino
db5f26110b
Merge
2015-10-20 11:17:19 -04:00
Yumin Qi
93d709dc4b
8135284: Remove Method::_method_size field
...
Remove Method::_method_size to improve memory footprint after JDK-8135085,which increased 4 bytes for 32 platform. Also removed related unused code in SA.
Reviewed-by: coleenp, hseigel
2015-10-14 08:12:33 -07:00
Coleen Phillimore
f1e89ea4cc
8140274: methodHandles and constantPoolHandles should be passed as const references
...
Modified code to use const reference parameters
Reviewed-by: sspitsyn, twisti
2015-10-23 16:48:38 -04: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
Aleksey Shipilev
bbc043a7f2
8135085: Change Method::_intrinsic_id from u1 to u2
...
Convert Method::_intrinsic_id from u1 to u2 to expand id range over 255.
Reviewed-by: coleenp, iklam, jiangli
2015-09-18 13:41:11 -07:00
Yumin Qi
6384ca7b1f
8025692: Log what methods are touched at run-time
...
Added two diagnostic flags, LogTouchedMethods and PrintTouchedMethodsAtExit to list all methods that have been touched at run time. Added new jcmd, VM.print_touched_methods.
Reviewed-by: acorn, iklam
2015-07-15 12:24:41 -07:00
Zoltan Majo
9245cdc214
8076112: Add @HotSpotIntrinsicCandidate annotation to indicate methods for which Java Runtime has intrinsics
...
Annotate possibly intrinsified methods with @HotSpotIntrinsicCandidate. Add checks omitted by intrinsics to the library code. Add CheckIntrinsics flags to check consistency of intrinsics.
Reviewed-by: jrose, kvn, thartmann, vlivanov, abuckley, darcy, ascarpino, briangoetz, alanb, aph, dnsimon
2015-07-03 07:25:03 +02:00
Vladimir Ivanov
90a42c2491
8074551: GWT can be marked non-compilable due to deopt count pollution
...
Reviewed-by: kvn
2015-06-11 14:19:40 +03:00
Serguei Spitsyn
942d1f7f32
8046246: the constantPoolCacheOopDesc::adjust_method_entries() used in RedefineClasses does not scale
...
Optimize the adjust_method_entries functions by using the orig_method_idnum() function
Reviewed-by: coleenp, dcubed
2015-02-25 00:30:54 -08:00
Tobias Hartmann
00aa20db4a
8056071: compiler/whitebox/IsMethodCompilableTest.java fails with 'method() is not compilable after 3 iterations'
...
Always use MDO if valid and always compile trivial methods with C1 if available.
Reviewed-by: kvn, iveresov
2014-11-11 11:05:41 +01:00
Jeremy Manson
54e9fee4d2
8062116: JVMTI GetClassMethods is Slow
...
Allocate enough space for all jmethodids; make adding a jmethodid O(1)
Reviewed-by: coleenp, rasbold, sspitsyn
2014-11-05 16:47:37 -08:00
Tobias Hartmann
fe1762fbd6
8061817: Whitebox.deoptimizeMethod() does not deoptimize all OSR versions of method
...
Fixed Whitebox.deoptimizeMethod() to deoptimize all OSR versions of the method.
Reviewed-by: kvn, iignatyev
2014-10-30 13:03:30 +01:00
Igor Veresov
ad7e67c98f
8058564: Tiered compilation performance drop in PIT
...
Ensure MethodCounters are created before method is enqueued for compilation
Reviewed-by: kvn, drchase, jiangli
2014-09-17 21:15:03 -07:00
Coleen Phillimore
3c70d99eda
8055008: Clean up code that saves the previous versions of redefined classes
...
Use scratch_class to find EMCP methods for breakpoints if the old methods are still running.
Reviewed-by: dcubed, sspitsyn
2014-09-03 19:13:18 -04:00
Coleen Phillimore
d230f0b4fd
8051398: jvmti tests fieldacc002, fieldmod002 fail in nightly with errors: (watch#0) wrong location
...
Didn't handle NULL bcp for native methods
Reviewed-by: dcubed, sspitsyn
2014-07-31 00:50:55 +00: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
Coleen Phillimore
024bb79ec8
Merge
2014-05-17 19:34:38 -04:00
Serguei Spitsyn
7f2b064e43
8042796: jvmtiRedefineClasses.cpp: guarantee(false) failed: OLD and/or OBSOLETE method(s) found
...
Relax the guaranty for deleted methods
Reviewed-by: dcubed, coleenp
2014-05-16 15:05:44 -07:00
Coleen Phillimore
c336175c94
8038212: Method::is_valid_method() check has performance regression impact for stackwalking
...
Only prune metaspace virtual spaces at safepoint so walking them is safe outside a safepoint.
Reviewed-by: mgerdin, mgronlun, hseigel, stefank
2014-05-15 18:23:26 -04: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
Coleen Phillimore
c8990959f2
8028497: SIGSEGV at ClassLoaderData::oops_do(OopClosure*, KlassClosure*, bool)
...
Keep class in CLD::_klasses list and mirror created for CDS classes if OOM during restore_shareable_info(). This keeps pointers consistent for CMS.
Reviewed-by: ehelin, stefank, jmasa, iklam
2014-04-08 13:58:38 -04:00
Bharadwaj Yadavalli
a12d6f7a1e
Merge
2014-04-03 17:05:19 -04:00
Roland Westrelin
b21d142f01
8037970: make PrintMethodData a diagnostic options
...
Make PrintMethodData a diagnostic options for performance investigation
Reviewed-by: kvn, iveresov
2014-03-31 10:35:06 +02:00
Coleen Phillimore
472622d900
8031820: NPG: Fix remaining references to metadata as oops in comments
...
8012125: Comments for ConstantPoolCache should reflect the addition of resolved_references in ConstantPool
Updated comments in metadata header files, and renamed this_oop variables to this_cp or this_k when referring to constant pool or classes.
Reviewed-by: stefank, jmasa
2014-03-26 21:47:45 -04:00
Vladimir Ivanov
38d80b03c4
8023461: Thread holding lock at safepoint that vm can block on: MethodCompileQueue_lock
...
Reviewed-by: kvn, iveresov
2014-03-11 15:06:34 +04: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
Christian Thalinger
1a1f9f0871
8037043: put Method flag bits in predictable positions
...
Reviewed-by: kvn, coleenp
2014-03-11 14:54:47 -07:00
Vladimir Kozlov
5117e1a805
Merge
2014-02-19 12:08:49 -08:00
Jesper Wilhelmsson
81ba2e32c0
8025856: Fix typos in the GC code
...
Fix about 440 typos in comments in the VM code
Reviewed-by: mgerdin, tschatzl, coleenp, kmo, jcoomes
2014-01-23 14:47:23 +01:00
Goetz Lindenmaier
46c4ef6572
8029396: PPC64 (part 212): Several memory ordering fixes in C-code
...
Memory ordering fixes in GC and other runtime code showing on PPC64.
Reviewed-by: kvn, coleenp
2013-12-02 10:26:14 +01:00
Igor Veresov
db9a439624
Merge
2013-10-13 13:22:24 -07:00
Karen Kinnear
088ded71f9
8009130: Lambda: Fix access controls, loader constraints
...
New default methods list with inherited superinterface methods
Reviewed-by: minqi, sspitsyn, coleenp
2013-10-07 12:20:28 -04:00
Christian Thalinger
619948a8f1
8025566: EXCEPTION_ACCESS_VIOLATION in compiled by C1 String.valueOf method
...
Reviewed-by: kvn
2013-10-07 10:41:56 -07:00
David Chase
222c735458
8014013: CallInfo structure no longer accurately reports the result of a LinkResolver operation
...
Enhance method resolution and resulting data structures, plus some refactoring.
Reviewed-by: twisti, acorn, jrose
2013-09-13 22:38:02 -04:00
Vladimir Ivanov
a92cdcd010
8023976: assert(!CompilationPolicy::can_be_compiled(this, comp_level)) failed: sanity check
...
Reviewed-by: kvn, twisti
2013-08-29 22:44:19 +04:00
Roland Westrelin
6ae26f2e94
8010460: Interpreter on some platforms loads ConstMethod::_max_stack and misses extra stack slots for JSR 292
...
ConstMethod::max_stack() doesn't account for JSR 292 appendix.
Reviewed-by: kvn
2013-04-24 11:49:38 +02:00
Yumin Qi
9a1cd52a0f
Merge
2013-05-13 18:08:13 +00:00
Yumin Qi
c6aa9c656f
8003557: NPG: Klass* const k should be const Klass* k
...
With NPG, const KlassOop klass which is in fact a definition converted to Klass* const, which is not the original intention. The right usage is converting them to const Klass*.
Reviewed-by: coleenp, kvn
2013-05-10 08:27:30 -07:00