Commit graph

52 commits

Author SHA1 Message Date
Erik Gahlin
c98e599afa 8164523: Clean up metadata for event based tracing
Reviewed-by: mlarsson, mgronlun
2016-08-23 19:21:48 +02:00
Stefan Karlsson
f8be292b88 8141501: Problems with BitMap buffer management
Reviewed-by: pliden, kbarrett
2016-05-03 22:45:27 +02: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
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
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
Nils Eliasson
5a5faf94bf 8137167: JEP165: Compiler Control: Implementation task
Compiler Control JEP

Reviewed-by: roland, twisti, zmajo, simonis
2015-10-20 18:07:28 +02:00
Nils Eliasson
5ca8983920 8135068: Extract method matchers from CompilerOracle
Ecapsulate code to enable reuse

Reviewed-by: roland, kvn
2015-09-18 10:11:11 +02: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
Vladimir Ivanov
5ff12acb9d 8062280: C2: inlining failure due to access checks being too strict
Reviewed-by: kvn
2015-04-14 18:11:06 +03:00
Igor Ignatyev
140bf2be86 8073607: add trace events for inlining
Reviewed-by: kvn, fzhinkin, mgronlun
2015-03-13 21:53:13 +03:00
Vladimir Ivanov
7227e9ba53 8063137: Never-taken branches should be pruned when GWT LambdaForms are shared
Reviewed-by: jrose, kvn
2015-01-29 10:25:59 -08:00
Vladimir Ivanov
3e0d07ed5c 8060147: SIGSEGV in Metadata::mark_on_stack() while marking metadata in ciEnv
Reviewed-by: kvn, roland, coleenp, mgerdin
2014-11-11 04:46:13 -08:00
Vladimir Kozlov
8b93fb04cd 8056964: JDK-8055286 changes are incomplete
Added ccstr and ccstrlist types to compilerOracle 'option' command

Reviewed-by: roland
2014-09-02 10:26:48 -07: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
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
Roland Westrelin
fa3b0a8f47 8031755: Type speculation should be used to optimize explicit null checks
Feed profiling data about reference nullness to type speculation.

Reviewed-by: kvn, iveresov
2014-03-31 09:08:53 +02:00
Vladimir Kozlov
ba7149bbda 8028468: Add inlining information into ciReplay
Allow dump and replay inlining for specified method during a program execution.

Reviewed-by: roland, twisti
2014-01-08 10:25:50 -08:00
Roland Westrelin
1b5bd82335 8024070: C2 needs some form of type speculation
Record unused type profile information with type system, propagate and use it.

Reviewed-by: kvn, twisti
2013-10-23 12:40:23 +02: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
Roland Westrelin
f188c2bf70 7199175: JSR 292: C1 needs patching when invokedynamic/invokehandle call site is not linked
Do patching rather bailing out for unlinked call with appendix

Reviewed-by: twisti, kvn
2013-08-21 13:34:45 +02:00
Vladimir Kozlov
b4977e887a 6934604: enable parts of EliminateAutoBox by default
Resurrected autobox elimination code and enabled part of it by default.

Reviewed-by: roland, twisti
2013-05-08 15:08:01 -07:00
Albert Noll
ca3a625f1e 8010332: removed unused method: ciMethod::uses_monitors
Reviewed-by: twisti, roland
2013-04-23 13:48:02 +02:00
Jiangli Zhou
56370657b9 8010862: The Method counter fields used for profiling can be allocated lazily
Allocate the method's profiling related metadata until they are needed.

Reviewed-by: coleenp, roland
2013-04-09 17:17:41 -04:00
Christian Thalinger
6964a690ed 7198429: need checked categorization of caller-sensitive methods in the JDK
Reviewed-by: kvn, jrose
2013-03-25 17:13:26 -07:00
Igor Ignatyev
014d9489bb 8006613: adding reason to made_not_compilable
Reviewed-by: kvn, vlivanov
2013-02-05 08:25:51 -08:00
Christian Thalinger
31411dbc32 7172640: C2: instrinsic implementations in LibraryCallKit should use argument() instead of pop()
Reviewed-by: kvn, jrose
2012-11-26 17:25:11 -08:00
Bharadwaj Yadavalli
4b288c8976 8001077: remove ciMethod::will_link
Removed will_link and changed all calls to is_loaded().

Reviewed-by: kvn
2012-11-15 10:42:06 -08:00
Yumin Qi
f712e12f98 6830717: replay of compilations would help with debugging
When java process crashed in compiler thread, repeat the compilation process will help finding root cause. This is done with using SA dump application class data and replay data from core dump, then use debug version of jvm to recompile the problematic java method.

Reviewed-by: kvn, twisti, sspitsyn
2012-11-12 14:03:53 -08:00
Jon Masamitsu
5c58d27aac 6964458: Reimplement class meta-data storage to use native memory
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04:00
Christian Thalinger
12901d0e5b 7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI

Remove assembly code for JDK 7 chained method handles

Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, kvn, mhaupt
2012-07-24 10:51:00 -07:00
Michael Haupt
e0cf9c652d 6711908: JVM needs direct access to some annotations
Add annotation extraction code to class file parser.

Reviewed-by: twisti, jrose, kvn
2012-07-12 00:39:53 -07:00
Christian Thalinger
ed9a60ae02 7108383: JSR 292: JRuby bench_define_method_methods.rb: assert(slow_jvms != NULL) failed: miss path must not
Reviewed-by: kvn, never
2011-11-17 04:07:30 -08:00
Christian Thalinger
02db22f7e7 7092712: JSR 292: unloaded invokedynamic call sites can lead to a crash with signature types not on BCP
Reviewed-by: jrose, never
2011-10-12 21:00:13 -07:00
Christian Thalinger
05b60b3662 7078382: JSR 292: don't count method handle adapters against inlining budgets
Reviewed-by: kvn, never
2011-08-31 01:40:45 -07:00
Igor Veresov
47caaa4c06 7057120: Tiered: Allow C1 to inline methods with loops
Recompile the enclosing methods without inlining of the method that has OSRed to level 4 or recompile the enclosing method at level 4.

Reviewed-by: kvn, never
2011-07-01 10:37:37 -07:00
Tom Rodriguez
16d6414619 7030715: JSR 292 JRuby test/test_super_call_site_caching.rb asserts with +DoEscapeAnalysis
Reviewed-by: twisti
2011-04-25 16:25:58 -07:00
Christian Thalinger
0b2d972fd3 7018355: JSR 292: VM crash in DefNewGeneration::copy_to_survivor_space
Reviewed-by: kvn, jrose
2011-04-18 01:33:28 -07:00
Tom Rodriguez
423f587b01 4926272: methodOopDesc::method_from_bcp is unsafe
Reviewed-by: coleenp, jrose, kvn, dcubed
2011-01-13 22:15:41 -08:00
Igor Veresov
ab725dba1d 7003554: (tiered) assert(is_null_object() || handle() != NULL) failed: cannot embed null pointer
C1 with profiling doesn't check whether the MDO has been really allocated, which can silently fail if the perm gen is full. The solution is to check if the allocation failed and bailout out of inlining or compilation.

Reviewed-by: kvn, never
2010-12-02 17:21:12 -08:00
Stefan Karlsson
8006fe8f75 6989984: Use standard include model for Hospot
Replaced MakeDeps and the includeDB files with more standardized solutions.

Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Igor Veresov
2c66a6c3fd 6953144: Tiered compilation
Infrastructure for tiered compilation support (interpreter + c1 + c2) for 32 and 64 bit. Simple tiered policy implementation.

Reviewed-by: kvn, never, phh, twisti
2010-09-03 17:51:07 -07:00
Gary Benson
d7310fb0f7 6976186: integrate Shark HotSpot changes
Shark is a JIT compiler for Zero that uses the LLVM compiler infrastructure.

Reviewed-by: kvn, twisti
2010-08-11 05:51:21 -07:00
Vladimir Kozlov
2b339c9319 6968368: SIGSEGV in the BCEscapeAnalyzer::copy_dependencies
Use GrowableArray and VectorSet allocated in ciEnv arena.

Reviewed-by: never, twisti
2010-07-14 14:47:34 -07:00
Erik Trimble
ba7c173659 6941466: Oracle rebranding changes for Hotspot repositories
Change all the Sun copyrights to Oracle copyright

Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
Christian Thalinger
e5fb2ad1c4 6914206: change way of permission checking for generated MethodHandle adapters
Put generated MH adapter in InvokeDynamic/MethodHandle classes to be able to indentify them easily in the compiler.

Reviewed-by: kvn, never, jrose
2010-01-08 11:09:46 +01:00
Christian Thalinger
47f2433a58 6893268: additional dynamic language related optimizations in C2
C2 needs some additional optimizations to be able to handle MethodHandle invokes and invokedynamic instructions at the best performance.

Reviewed-by: kvn, never
2010-01-05 15:21:25 +01:00
Christian Thalinger
375527d84e 6829187: compiler optimizations required for JSR 292
C2 implementation for invokedynamic support.

Reviewed-by: kvn, never
2010-01-05 13:05:58 +01:00
Tom Rodriguez
7437f0b825 6854812: 6.0_14-b08 crashes with a SIGSEGV
Reviewed-by: kvn, twisti
2009-09-16 11:06:10 -07:00