152 Commits

Author SHA1 Message Date
Damon Fenacci
bfd5bdaf7f 8374582: [REDO] Move input validation checks to Java for java.lang.StringCoding intrinsics
Co-authored-by: Volkan Yazici <vyazici@openjdk.org>
Reviewed-by: chagedorn, thartmann, vyazici
2026-02-06 07:44:25 +00:00
Roland Westrelin
6e9256cb61 8373343: C2: verify AddP base input only set for heap addresses
Reviewed-by: dlong, chagedorn, qamai
2026-01-22 10:37:26 +00:00
Emanuel Peter
42439eb60c 8374889: C2 VectorAPI: must handle impossible combination of signed cast from float
Reviewed-by: dlong, qamai
2026-01-20 18:30:42 +00:00
Benoît Maillard
4458cab4b0 8367627: C2: Missed Ideal() optimization opportunity with MemBar
Reviewed-by: chagedorn, epeter
2026-01-05 14:39:38 +00:00
Quan Anh Mai
104d0cb542 8373577: C2: Cleanup adr_type of CallLeafPureNode
Reviewed-by: roland, vlivanov
2025-12-13 14:07:24 +00:00
Roland Westrelin
e6546683a8 8327963: C2: fix construction of memory graph around Initialize node to prevent incorrect execution if allocation is removed
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Reviewed-by: epeter, rcastanedalo
2025-11-04 11:17:56 +00:00
Emanuel Peter
443b172638 8324751: C2 SuperWord: Aliasing Analysis runtime check
Reviewed-by: kvn, mhaessig
2025-08-28 05:53:23 +00:00
Saranya Natarajan
2b756ab1e8 8358781: C2 fails with assert "bad profile data type" when TypeProfileCasts is disabled
Reviewed-by: mhaessig, kvn, dfenacci
2025-08-18 08:16:32 +00:00
Marc Chevalier
ed70910b0f 8347901: C2 should remove unused leaf / pure runtime calls
Reviewed-by: thartmann, vlivanov
2025-07-22 08:48:07 +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
hanguanqiang
45300dd123 8358568: Purge obsolete/broken GenerateSynchronizationCode flag
Reviewed-by: thartmann, shade
2025-07-07 05:22:44 +00:00
Benoît Maillard
c220b1358c 8356865: C2: Unreasonable values for debug flag FastAllocateSizeLimit can lead to left-shift-overflow, which is UB
Reviewed-by: epeter, mhaessig
2025-06-23 07:52:02 +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
Aleksey Shipilev
db6fa5923c 8355617: Remove historical debug_only macro in favor of DEBUG_ONLY
Reviewed-by: stefank, kbarrett, jwaters
2025-04-28 08:43:14 +00:00
Marc Chevalier
97ed536125 8346989: C2: deoptimization and re-execution cycle with Math.*Exact in case of frequent overflow
Reviewed-by: thartmann, vlivanov
2025-04-07 05:21:44 +00:00
Manuel Hässig
d358f5f4a4 8347449: C2: UseLoopPredicate off should also turn UseProfiledLoopPredicate off
Reviewed-by: chagedorn, epeter
2025-04-02 06:48:06 +00:00
Manuel Hässig
8ef78323b1 8350471: Unhandled compilation bailout in GraphKit::builtin_throw
Reviewed-by: thartmann, chagedorn, kvn
2025-03-28 08:53:37 +00:00
Aleksey Shipilev
b73663a2b4 8351155: C1/C2: Remove 32-bit x86 specific FP rounding support
Reviewed-by: vlivanov, kvn
2025-03-27 18:10:53 +00:00
Emanuel Peter
885338b5f3 8323582: C2 SuperWord AlignVector: misaligned vector memory access with unaligned native memory
Reviewed-by: roland, kvn
2025-02-27 06:58:43 +00:00
Quan Anh Mai
e9278de3f8 8348411: C2: Remove the control input of LoadKlassNode and LoadNKlassNode
Reviewed-by: vlivanov, epeter
2025-02-08 04:20:46 +00:00
Stefan Karlsson
c33c1cfe73 8347909: Automatic precompiled.hpp inclusion
Reviewed-by: lkorinth, erikj, dholmes, ihse
2025-01-21 10:21:24 +00:00
theoweidmannoracle
8af304c60f 8341411: C2: remove slice parameter from GraphKit::make_load() and GraphKit::store_to_memory()
Reviewed-by: thartmann, roland
2024-11-13 13:34:09 +00:00
Christian Hagedorn
7131f053b0 8342043: Split Opaque4Node into OpaqueTemplateAssertionPredicateNode and OpaqueNotNullNode
Reviewed-by: kvn, roland
2024-10-23 08:00:42 +00:00
Tobias Hartmann
8d0975a27d 8336726: C2: assert(!do_asserts || projs->fallthrough_ioproj != nullptr) failed: must be found
Reviewed-by: chagedorn, kvn, vlivanov
2024-10-14 05:26:48 +00:00
Roland Westrelin
ff2f39f240 8340214: C2 compilation asserts with "no node with a side effect" in PhaseIdealLoop::try_sink_out_of_loop
Reviewed-by: chagedorn, thartmann
2024-10-09 14:59:15 +00:00
Daniel Skantz
d3f3c6a8cd 8330157: C2: Add a stress flag for bailouts
Reviewed-by: chagedorn, thartmann
2024-10-09 07:01:23 +00:00
Aleksey Shipilev
6600161ad4 8338379: Accesses to class init state should be properly synchronized
Reviewed-by: mdoerr, dholmes, coleenp, fyang, amitkumar
2024-10-07 07:05:31 +00:00
Andrew Dinn
ab509f1b98 8337654: Relocate uncommon trap stub from SharedRuntime to OptoRuntime
Reviewed-by: kvn, vlivanov, fyang
2024-08-06 13:22:55 +00:00
Kim Barrett
ab27acab0b 8336297: C2: Fix -Wzero-as-null-pointer-constant warnings in derived Node ctors
Reviewed-by: kvn, jwaters
2024-07-15 15:43:02 +00:00
Vladimir Kozlov
9691153755 8329141: Obsolete RTM flags and code
Reviewed-by: chagedorn
2024-06-10 17:58:22 +00:00
Christian Hagedorn
95c8a69b0e 8332032: C2: Remove ExpandSubTypeCheckAtParseTime flag
Reviewed-by: thartmann, rcastanedalo
2024-05-31 06:56:57 +00:00
Roland Westrelin
8032d640c0 8332245: C2: missing record_for_ign() call in GraphKit::must_be_not_null()
Reviewed-by: thartmann, chagedorn
2024-05-15 12:01:20 +00:00
Vladimir Ivanov
fa02667d83 8322726: C2: Unloaded signature class kills argument value
Reviewed-by: kvn, dlong, thartmann
2024-05-06 12:21:15 +00:00
Christian Hagedorn
b486709b06 8328480: C2: SubTypeCheckNode in checkcast should use the klass constant of a unique concrete sub class
Reviewed-by: roland, kvn
2024-04-15 06:25:24 +00:00
Christian Hagedorn
e5e21a8a6e 8328702: C2: Crash during parsing because sub type check is not folded
Reviewed-by: roland, kvn
2024-04-04 06:02:35 +00:00
Daniel Lundén
0c1b254be9 8326438: C2: assert(ld->in(1)->Opcode() == Op_LoadN) failed: Assumption invalid: input to DecodeN is not LoadN
Reviewed-by: kvn, rcastanedalo, thartmann
2024-03-25 12:04:44 +00:00
Daniel Lundén
69586e7bdf 8322996: BoxLockNode creation fails with assert(reg < CHUNK_SIZE) failed: sanity
Reviewed-by: rcastanedalo, kvn
2024-01-29 09:14:26 +00:00
Joshua Cao
7263e25d9b 8322490: cleanup CastNode construction
Reviewed-by: chagedorn, phh
2023-12-22 21:08:45 +00:00
Daniel Lundén
9e48b90c7f 8310524: C2: record parser-generated LoadN nodes for IGVN
Reviewed-by: chagedorn, rcastanedalo, thartmann
2023-12-08 11:04:39 +00:00
Jorn Vernee
a5ccd3beaf 8267532: C2: Profile and prune untaken exception handlers
8310011: Arena with try-with-resources is slower than it should be

Reviewed-by: thartmann, vlivanov
2023-11-28 10:17:58 +00:00
Roberto Castañeda Lozano
ceff47b462 8315082: [REDO] Generational ZGC: Tests crash with assert(index == 0 || is_power_of_2(index))
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Reviewed-by: ayang, thartmann, kvn
2023-09-21 05:49:09 +00:00
Roland Westrelin
dac1727956 8308869: C2: use profile data in subtype checks when profile has more than one class
Co-authored-by: Fei Yang <fyang@openjdk.org>
Reviewed-by: vlivanov, thartmann
2023-09-08 07:48:05 +00:00
Christian Hagedorn
4b445753e6 8305637: Remove Opaque1 nodes for Parse Predicates and clean up useless predicate elimination
Reviewed-by: roland, kvn
2023-09-05 12:45:55 +00:00
Roberto Castañeda Lozano
1c3177eea7 8315029: [BACKOUT] Generational ZGC: Tests crash with assert(index == 0 || is_power_of_2(index))
Reviewed-by: chagedorn, mdoerr
2023-08-28 11:08:44 +00:00
Roberto Castañeda Lozano
002b594870 8312749: Generational ZGC: Tests crash with assert(index == 0 || is_power_of_2(index))
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Reviewed-by: thartmann, ayang, kvn
2023-08-25 07:18:34 +00:00
Dean Long
d0761c19d1 8312077: Fix signed integer overflow, final part
Reviewed-by: kvn, amitkumar
2023-07-24 20:40:08 +00:00
Xin Liu
d2e1159300 8311125: Remove unused parameter 'phase' in AllocateNode::Ideal_allocation
Reviewed-by: chagedorn, kvn
2023-07-01 07:25:26 +00:00
Emanuel Peter
1f1f604071 8302670: use-after-free related to PhaseIterGVN interaction with Unique_Node_List and Node_Stack
Co-authored-by: Justin King <jcking@openjdk.org>
Reviewed-by: thartmann, chagedorn, jcking
2023-05-30 07:14:50 +00:00
Roland Westrelin
199b1bf500 8308583: SIGSEGV in GraphKit::gen_checkcast
Reviewed-by: thartmann, kvn, never
2023-05-26 07:03:35 +00:00