Commit graph

52 commits

Author SHA1 Message Date
Aleksey Shipilev
9eadcbb47e 8276217: Harmonize StrictMath intrinsics handling
Reviewed-by: aph, kvn
2021-11-04 08:08:07 +00:00
Yi Yang
2926769800 8267956: C1 code cleanup
Reviewed-by: thartmann
2021-07-06 02:11:56 +00:00
Yi Yang
d89e630cdf 8266746: C1: Replace UnsafeGetRaw with UnsafeGet when setting up OSR entry block
Replace UnsafeGetRaw with UnsafeGetObject when setting up OSR entry block, and rename Unsafe{Get,Put}Object to Unsafe{Get,Put}

Reviewed-by: thartmann, dlong, mdoerr
2021-07-01 01:39:50 +00:00
Igor Veresov
0a6c7d8a4b 8267424: CTW: C1 fails with "State must not be null"
Reviewed-by: kvn, roland
2021-06-10 14:18:04 +00:00
David Holmes
cb7128b58e 8266950: Remove vestigial support for non-strict floating-point execution
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, kvn
2021-06-01 22:04:02 +00:00
Vladimir Ivanov
74b70a5677 8036580: CHA: improve default method support
Reviewed-by: thartmann, neliasso
2021-06-01 12:14:48 +00:00
Vladimir Ivanov
35916ed57f 8267806: C1: Relax inlining checks for not yet initialized classes
Reviewed-by: roland, thartmann
2021-05-31 08:45:07 +00:00
Harold Seigel
e14b026841 8243287: Removal of Unsafe::defineAnonymousClass
Reviewed-by: iklam, mchung, alanb, dholmes
2021-05-13 12:46:54 +00:00
Vladimir Ivanov
127bfe44f7 8266074: Vtable-based CHA implementation
Reviewed-by: kvn, jrose, dlong
2021-05-13 10:58:03 +00:00
Aleksey Shipilev
6018336fc5 8259316: [REDO] C1/C2 compiler support for blackholes
Reviewed-by: vlivanov, kvn, iignatyev
2021-05-05 14:27:21 +00:00
Nils Eliasson
ec7b0028e8 8264626: C1 should be able to inline excluded methods
Reviewed-by: iveresov, thartmann
2021-04-06 06:47:00 +00:00
Hui Shi
21e7402b04 8263707: C1 RangeCheckEliminator support constant array and NewMultiArray
Reviewed-by: thartmann, neliasso
2021-03-30 16:04:59 +00:00
Zhengyu Gu
a67a679c78 8263679: C1: Remove vtable call
Reviewed-by: vlivanov, kvn
2021-03-16 18:41:04 +00:00
Igor Veresov
1519632597 8251462: Simplify compilation policy
Reviewed-by: cjplummer, kvn
2021-01-28 20:51:12 +00:00
Jesper Wilhelmsson
555641ede5 Merge 2021-01-07 21:17:35 +00:00
Aleksey Shipilev
ad45678719 8258558: Revert changes for JDK-8252505 and related issues
Reviewed-by: kvn
2021-01-06 13:27:57 +00:00
Claes Redestad
f57405617e 8256424: Move ciSymbol::symbol_name() to ciSymbols::symbol_name()
Reviewed-by: kvn, iklam
2020-12-10 17:22:48 +00:00
Aleksey Shipilev
e590618962 8252505: C1/C2 compiler support for blackholes
Reviewed-by: vlivanov, aph
2020-12-06 17:43:34 +00:00
Ioi Lam
f48737c7b3 8256254: Convert vmIntrinsics::ID to enum class
Reviewed-by: redestad, kvn
2020-12-01 05:35:29 +00:00
Maurizio Cimadamore
0fb31dbf3a 8254231: Implementation of Foreign Linker API (Incubator)
Reviewed-by: coleenp, ihse, dholmes, vlivanov
2020-11-23 11:00:38 +00:00
Christian Hagedorn
f7a65b7fff 8239083: C1 assert(known_holder == NULL || (known_holder->is_instance_klass() && (!known_holder->is_interface() || ((ciInstanceKlass*)known_holder)->has_nonstatic_concrete_methods())), "should be non-static concrete method");
Remove unnecessary preparation to profile the holder of a static method called by a method handle in C1.

Reviewed-by: thartmann, kvn
2020-06-02 11:05:34 +02:00
Mikael Vidstedt
071bd521bc 8244224: Implementation of JEP 381: Remove the Solaris and SPARC Ports
Reviewed-by: alanb, bchristi, dcubed, dfuchs, eosterlund, erikj, glaubitz, ihse, iignatyev, jjiang, kbarrett, ksrini, kvn, naoto, prr, rriggs, serb, sspitsyn, stefank, tschatzl, valeriep, weijun, weijun
2020-05-20 17:33:37 -07:00
Martin Doerr
76b76654d2 8235673: [C1, C2] Split inlining control flags
Reviewed-by: neliasso, kvn, thartmann
2020-05-18 10:57:16 +02:00
Ioi Lam
92d1c4a61a 8244775: Remove unnecessary dependency to jfrEvents.hpp
Reviewed-by: kbarrett, kvn
2020-05-13 10:56:51 -07:00
Jamsheed Mohammed C M
211e529373 8193210: [JVMCI/Graal] add JFR compiler phase/inlining events
C++ EventCompilerPhase/EventCompilerInlining definitions are extended for JVMCI use.

Reviewed-by: dnsimon, egahlin, kvn, mgronlun, thartmann
2020-03-27 09:47:13 -07:00
Jamsheed Mohammed C M
136a1574ec 8237894: CTW: C1 compilation fails with assert(x->type()->tag() == f->type()->tag()) failed: should have same type
Field access instructions hash decalred_type in addition, indexed access instructions hash value type of the instruction in addition.

Reviewed-by: thartmann, shade
2020-03-20 05:19:56 -07:00
Stefan Karlsson
e4b27a48a0 8183574: Unify the is_power_of_2 functions
Reviewed-by: kbarrett, redestad
2020-02-17 10:03:17 +01:00
Vladimir Ivanov
590f5996c6 8136414: Large performance penalty declaring a method strictfp on strict-only platforms
Reviewed-by: thartmann
2020-02-11 14:55:39 +03:00
Vladimir Ivanov
a6daef527e 8234923: Missed call_site_target nmethod dependency for non-fully initialized ConstantCallSite instance
Reviewed-by: jrose
2019-12-03 20:13:21 +03:00
Tobias Hartmann
aff41433b6 8234617: C1: Incorrect result of field load due to missing narrowing conversion
Emit an explicit conversion to get the correct field value after the write.

Reviewed-by: vlivanov, mdoerr
2019-12-03 08:29:04 +01:00
Liu Xin
4e64af81a2 8234541: C1 emits an empty message when it inlines successfully
Use "inline" as the message when successfull

Reviewed-by: thartmann, mdoerr
2019-11-30 14:33:05 -08:00
Martin Doerr
7c242c709d 8233820: Test crashed with assert(phi->operand_count() != 1 || phi->subst() != phi) failed: missed trivial simplification
Verification code needs to skip illegal phi functions.

Reviewed-by: thartmann, vlivanov
2019-11-12 16:13:16 +01:00
Xin Liu
1ad5c5bfb7 8165056: move JIT Compiler related files from runtime/ to compiler/ directory
Reviewed-by: kvn, coleenp, dholmes
2019-10-09 12:43:32 -07:00
Lois Foltan
0c507f3180 8230505: Replace JVM type comparisons to T_OBJECT and T_ARRAY with call to is_reference_type
Consistently use is_reference_type when comparing type for T_OBJECT or T_ARRAY.

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: dlong, coleenp, hseigel
2019-09-23 14:49:04 -04:00
Martin Doerr
b0e727124f 8230434: [C1, C2] Release barrier for volatile field stores in constructors implemented inconsistently
Reviewed-by: shade, lucy
2019-09-04 14:21:54 +02:00
Vladimir Ivanov
4dc79c2e05 8227236: assert(singleton != __null && singleton != declared_interface) failed
Reviewed-by: dlong
2019-09-03 17:45:02 +03:00
Vladimir Ivanov
75d4f24c97 8223171: Redundant nmethod dependencies for effectively final methods
Reviewed-by: dlong
2019-05-06 12:15:49 -07:00
Vladimir Ivanov
6f437c6c9a 8218406: C1: Redundant nmethod dependency for private method is added
Reviewed-by: kvn
2019-02-04 17:35:38 -08:00
Vladimir Ivanov
ac3711e9cd 6986483: CHA: optimize calls through interfaces
Reviewed-by: neliasso, thartmann
2019-01-31 17:48:29 -08:00
Eric Caspole
1b9d9fd1ae 8216375: Revert JDK-8145579 after JDK-8076988 is resolved
Remove obsolete code

Reviewed-by: thartmann, dlong
2019-01-09 12:02:38 -05:00
Mandy Chung
5e6d6b8642 8207146: Rename jdk.internal.misc.Unsafe::xxxObject to xxxReference
Reviewed-by: dholmes, thartmann
2018-10-22 17:00:04 -07:00
Lois Foltan
75ed173e15 8209301: JVM rename is_anonymous, host_klass to unsafe specific terminology ahead of Unsafe.defineAnonymousClass deprecation
Clean up VM anonymous class terminology.

Reviewed-by: coleenp, dholmes, mchung
2018-08-20 08:25:57 -04:00
Thomas Schatzl
e98c176026 8208670: Compiler changes to allow enabling -Wreorder
Reviewed-by: kvn
2018-08-08 15:31:06 +02:00
Erik Gahlin
a060be188d 8199712: Flight Recorder
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Reviewed-by: coleenp, ihse, erikj, dsamersoff, mseledtsov, egahlin, mgronlun
2018-05-15 20:24:34 +02:00
Roland Westrelin
93691571bc 8200303: C2 should leverage profiling for lookupswitch/tableswitch
Reviewed-by: kvn, thartmann
2018-04-24 15:07:20 -07:00
Coleen Phillimore
fde89a34d0 8199263: Split interfaceSupport.hpp to not require including .inline.hpp files
InterfaceSupport.hpp is an inline file so moved to interfaceSupport.inline.hpp and stopped including it in .hpp files

Reviewed-by: stefank, rehn, kvn
2018-03-16 09:12:13 -04:00
Coleen Phillimore
ee9d695757 8199283: Remove ValueObj class for allocation subclassing for compiler code
Reviewed-by: stefank, tschatzl
2018-03-09 20:01:38 -05:00
Dean Long
b1723061be 8194984: 9 Null pointer dereference defect groups related to ciMethodData::bci_to_data()
Reviewed-by: kvn
2018-01-31 16:09:29 -08:00
Paul Sandoz
e55a05957d 8186209: Tool support for ConstantDynamic
8186046: Minimal ConstantDynamic support
8190972: Ensure that AOT/Graal filters out class files containing CONSTANT_Dynamic ahead of full AOT support

Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: acorn, coleenp, kvn
2017-09-08 10:46:46 -07:00
Dean Long
18e7fa9b4c 8145579: SimpleThresholdPolicy assumes non-trivial methods to be trivial
Reviewed-by: shade, kvn, thartmann
2017-12-05 10:38:31 -08:00