41 Commits

Author SHA1 Message Date
Roland Westrelin
d8a1c1d04c 8354282: C2: more crashes in compiled code because of dependency on removed range check CastIIs
Reviewed-by: chagedorn
Backport-of: 00068a80304a809297d0df8698850861e9a1c5e9
2026-01-05 14:46:49 +00:00
Roland Westrelin
f155661151 8342692: C2: long counted loop/long range checks: don't create loop-nest for short running loops
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Reviewed-by: chagedorn, thartmann
2025-07-22 08:35:36 +00:00
Manuel Hässig
9ae39b62b9 8355276: Sort C2 includes
Reviewed-by: kvn, thartmann
2025-06-23 07:47:17 +00:00
Quan Anh Mai
991097b7bf 8315066: Add unsigned bounds and known bits to TypeInt/Long
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Reviewed-by: epeter, kvn, jbhateja
2025-06-13 01:05:44 +00:00
Quan Anh Mai
ed604038ff 8346836: C2: Verify CastII/CastLL bounds at runtime
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, epeter
2025-04-25 02:09:58 +00:00
Roland Westrelin
bcac42aabc 8349479: C2: when a Type node becomes dead, make CFG path that uses it unreachable
Reviewed-by: chagedorn, vlivanov
2025-04-10 07:04:15 +00:00
Jatin Bhateja
4b463ee70e 8342103: C2 compiler support for Float16 type and associated scalar operations
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Bhavana Kilambi <bkilambi@openjdk.org>
Co-authored-by: Joe Darcy <darcy@openjdk.org>
Co-authored-by: Raffaello Giulietti <rgiulietti@openjdk.org>
Reviewed-by: psandoz, epeter, sviswanathan
2025-02-12 17:02:51 +00:00
Stefan Karlsson
c33c1cfe73 8347909: Automatic precompiled.hpp inclusion
Reviewed-by: lkorinth, erikj, dholmes, ihse
2025-01-21 10:21:24 +00:00
Roland Westrelin
2649a97332 8332827: [REDO] C2: crash in compiled code because of dependency on removed range check CastIIs
Reviewed-by: epeter, chagedorn
2024-12-19 16:09:41 +00:00
Magnus Ihse Bursie
2979806c72 8345795: Update copyright year to 2024 for hotspot in files where it was missed
Reviewed-by: dholmes, tschatzl, dnsimon, sspitsyn
2024-12-10 08:47:46 +00:00
Roland Westrelin
c9a7b9772d 8332829: [BACKOUT] C2: crash in compiled code because of dependency on removed range check CastIIs
Reviewed-by: thartmann
2024-05-23 16:37:01 +00:00
Roland Westrelin
ab8d7b0ced 8324517: C2: crash in compiled code because of dependency on removed range check CastIIs
Reviewed-by: epeter, thartmann
2024-05-16 07:25:11 +00:00
Joshua Cao
b058063c40 8323820: [MacOS] build failure: non-void function does not return a value
Reviewed-by: shade, lucy
2024-01-16 22:01:21 +00:00
Roland Westrelin
b922f8d459 8319793: C2 compilation fails with "Bad graph detected in build_loop_late" after JDK-8279888
Reviewed-by: chagedorn, epeter
2024-01-11 09:00:44 +00:00
Joshua Cao
7263e25d9b 8322490: cleanup CastNode construction
Reviewed-by: chagedorn, phh
2023-12-22 21:08:45 +00:00
Roland Westrelin
7766785098 8319372: C2 compilation fails with "Bad immediate dominator info"
Reviewed-by: kvn, chagedorn, thartmann
2023-11-30 08:09:06 +00:00
Roland Westrelin
52983ed529 8303737: C2: Load can bypass subtype check that enforces it's from the right object type
Reviewed-by: chagedorn, thartmann
2023-09-26 06:55:01 +00:00
Kim Barrett
c077be4768 8314694: Separate checked_cast from globalDefinitions.hpp
Reviewed-by: stuefe, coleenp, sspitsyn
2023-08-23 22:32:37 +00:00
Johan Sjölen
5726d31e56 8301074: Replace NULL with nullptr in share/opto/
Reviewed-by: kvn, jwilhelm
2023-03-09 20:28:26 +00:00
Emanuel Peter
8f195ff236 8298952: All nodes should have type(n) == Value(n) after IGVN
Reviewed-by: kvn, thartmann, chagedorn
2023-02-06 08:45:48 +00:00
Roland Westrelin
05a0a71031 8297933: [REDO] Compiler should only use verified interface types for optimization
Reviewed-by: kvn, vlivanov
2023-01-09 08:26:08 +00:00
Roland Westrelin
9430f3e65c 8297934: [BACKOUT] Compiler should only use verified interface types for optimization
Reviewed-by: thartmann, kvn
2022-12-01 14:19:28 +00:00
Roland Westrelin
45d1807ad3 6312651: Compiler should only use verified interface types for optimization
Reviewed-by: vlivanov, kvn
2022-11-21 08:47:42 +00:00
Johan Sjölen
4b8399b5f0 8293251: Use stringStream::base() instead of as_string() when applicable
Reviewed-by: rehn
2022-09-16 19:54:35 +00:00
Roland Westrelin
cbaf6e807e 8288022: c2: Transform (CastLL (AddL into (AddL (CastLL when possible
Reviewed-by: thartmann, kvn
2022-07-06 11:36:12 +00:00
Roland Westrelin
dae4c493e4 8286197: C2: Optimize MemorySegment shape in int loop
Reviewed-by: kvn, thartmann
2022-06-10 08:17:26 +00:00
Emanuel Peter
06cadb36e0 8230382: Clean up ConvI2L, CastII and CastLL::Ideal methods
Reviewed-by: thartmann, roland
2022-02-28 12:13:35 +00:00
Roland Westrelin
4d545a1f86 8267988: C2: assert(!addp->is_AddP() || addp->in(AddPNode::Base)->is_top() || addp->in(AddPNode::Base) == n->in(AddPNode::Base)) failed: Base pointers must match (addp 1301)
Reviewed-by: chagedorn, vlivanov, kvn
2021-06-16 07:36:07 +00:00
Roland Westrelin
4413142eca 8268017: C2: assert(phi_type->isa_int() || phi_type->isa_ptr() || phi_type->isa_long()) failed: bad phi type
Reviewed-by: vlivanov, chagedorn, whuang
2021-06-09 07:58:17 +00:00
Roland Westrelin
8100a20e98 8263971: C2 crashes with SIGFPE with -XX:+StressGCM and -XX:+StressIGVN
Reviewed-by: chagedorn, thartmann
2021-03-30 07:40:49 +00:00
Roland Westrelin
d93293f31b 8256730: Code that uses Object.checkIndex() range checks doesn't optimize well
Reviewed-by: vlivanov, thartmann
2020-12-10 08:09:08 +00:00
Roland Westrelin
a7422ac2f4 8255150: Add utility methods to check long indexes and ranges
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Reviewed-by: jvernee, dlong, vlivanov
2020-11-17 10:37:27 +00:00
Vladimir Ivanov
7e2640432b 8255000: C2: Unify IGVN processing when loop opts are over
Reviewed-by: neliasso, iveresov, kvn
2020-10-21 08:09:00 +00:00
Paul Sandoz
0c99b19258 8223347: Integration of Vector API (Incubator)
Co-authored-by: Vivek Deshpande <vdeshpande@openjdk.org>
Co-authored-by: Qi Feng <qfeng@openjdk.org>
Co-authored-by: Ian Graves <igraves@openjdk.org>
Co-authored-by: Jean-Philippe Halimi <jphalimi@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Co-authored-by: Ningsheng Jian <njian@openjdk.org>
Co-authored-by: Razvan Lupusoru <rlupusoru@openjdk.org>
Co-authored-by: Smita Kamath <svkamath@openjdk.org>
Co-authored-by: Rahul Kandu <rkandu@openjdk.org>
Co-authored-by: Kishor Kharbas <kkharbas@openjdk.org>
Co-authored-by: Eric Liu <Eric.Liu2@arm.com>
Co-authored-by: Aaloan Miftah <someusername3@gmail.com>
Co-authored-by: John R Rose <jrose@openjdk.org>
Co-authored-by: Shravya Rukmannagari <srukmannagar@openjdk.org>
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Co-authored-by: Lauren Walkowski <lauren.walkowski@arm.com>
Co-authored-by: Yang Zang <Yang.Zhang@arm.com>
Co-authored-by: Joshua Zhu <jzhu@openjdk.org>
Co-authored-by: Wang Zhuo <wzhuo@openjdk.org>
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: erikj, chegar, kvn, darcy, forax, briangoetz, aph, epavlova, coleenp
2020-10-14 20:02:46 +00:00
Tobias Hartmann
0c7e01fa32 8242108: Performance regression after fix for JDK-8229496
Backed out the fix for 8229496.

Reviewed-by: kvn, roland
2020-04-22 16:22:53 +02:00
Tobias Hartmann
a4b46ccc23 8229496: SIGFPE (division by zero) in C2 OSR compiled method
Adding a CastNode to keep the dependency between the div/mod operation and the zero check.

Reviewed-by: roland, mdoerr
2019-09-05 13:56:17 +02:00
Derek Thomson
7a4b473edd 8157372: C2: Node::cmp() should return bool
The method Node::cmp() should return a boolean

Reviewed-by: vlivanov, kvn
2019-03-28 11:06:00 -07:00
Vladimir Ivanov
46a57587dc 8059241: C2: Excessive RemoveUseless passes during incremental inlining
Reviewed-by: roland, shade
2019-01-31 17:48:25 -08:00
Igor Ignatyev
5ff302e6bb 8214917: CTW testlibrary shouldn't ignore errors raised by the library itself
Reviewed-by: kvn, roland
2018-12-10 11:04:55 -08:00
Coleen Phillimore
e908052a71 8189610: Reconcile jvm.h and all jvm_md.h between java.base and hotspot
Removed hotspot version of jvm*h and jni*h files.

Reviewed-by: ihse, mchung, dholmes
2017-10-31 11:55:09 -04:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00