112 Commits

Author SHA1 Message Date
Aleksey Shipilev
4f283f188c 8373820: C2: Robust Node::uncast_helper infinite loop check
Reviewed-by: qamai, chagedorn
2025-12-18 09:43:28 +00:00
Benoît Maillard
3949b0f23c 8371674: C2 fails with Missed optimization opportunity in PhaseIterGVN for MoveL2D
Reviewed-by: epeter, chagedorn
2025-11-19 15:40:57 +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
75e37b06c3 8370332: C2 SuperWord: SIGSEGV because PhaseIdealLoop::split_thru_phi left dead nodes in loop _body
Reviewed-by: chagedorn, roland
2025-11-04 07:39:11 +00:00
Daniel Lundén
39211e7fac 8369569: Rename methods in regmask.hpp to conform with HotSpot coding style
Reviewed-by: aseoane, rcastanedalo, epeter
2025-10-20 07:49:01 +00:00
Daniel Lundén
faf6df5462 8325467: Support methods with many arguments in C2
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Reviewed-by: rcastanedalo, kvn, epeter
2025-09-24 15:02:40 +00:00
erifan
45cc515f45 8354242: VectorAPI: combine vector not operation with compare
Reviewed-by: epeter, jbhateja, xgong
2025-09-17 07:32:19 +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
Tobias Hartmann
ed39e17e34 8359200: Memory corruption in MStack::push
Reviewed-by: shade, kvn
2025-06-13 07:45:18 +00:00
Roland Westrelin
62d155e8c3 8355230: Crash in fuzzer tests: assert(n != nullptr) failed: must not be null
Reviewed-by: thartmann, epeter
2025-05-20 14:18:41 +00:00
Roberto Castañeda Lozano
def907ab89 8354520: IGV: dump contextual information
Reviewed-by: epeter, dfenacci
2025-05-06 08:16:09 +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
fabf67c376 8354625: Compile::igv_print_graph_to_network doesn't use its second parameter
Reviewed-by: rcastanedalo, thartmann
2025-04-17 07:21:34 +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
Saranya Natarajan
8f64ccc01b 8350485: C2: factor out common code in Node::grow() and Node::out_grow()
Reviewed-by: thartmann, rcastanedalo
2025-03-19 09:59:15 +00:00
Christian Hagedorn
e57b272506 8350578: Refactor useless Parse and Template Assertion Predicate elimination code by using a PredicateVisitor
Reviewed-by: epeter, kvn, roland
2025-03-19 07:41:07 +00:00
Emanuel Peter
4cf63160ad 8351414: C2: MergeStores must happen after RangeCheck smearing
Reviewed-by: chagedorn, qamai
2025-03-11 07:10:31 +00:00
Marc Chevalier
4109c73a78 8349523: Unused runtime calls to drem/frem should be removed
Reviewed-by: thartmann, kvn, chagedorn
2025-03-03 09:32:54 +00:00
SendaoYan
04659a4073 8350197: [UBSAN] Node::dump_idx reported float-cast-overflow
Reviewed-by: chagedorn
2025-02-19 01:30:16 +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
Theo Weidmann
96fefed37f 8319850: PrintInlining should print which methods are late inlines
Reviewed-by: chagedorn, kvn, jsjolen, dlong
2025-01-29 15:14:40 +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
Tobias Holenstein
b9c6ce900b 8344122: IGV: Extend c2 IdealGraphPrinter to send subgraphs to IGV
Reviewed-by: chagedorn, epeter, rcastanedalo
2024-11-18 09:36:08 +00:00
Aleksey Shipilev
a5ad974bec 8343056: C2: Micro-optimize Node lists grow
Reviewed-by: kvn, redestad
2024-10-28 12:11:51 +00:00
Christian Hagedorn
7131f053b0 8342043: Split Opaque4Node into OpaqueTemplateAssertionPredicateNode and OpaqueNotNullNode
Reviewed-by: kvn, roland
2024-10-23 08:00:42 +00:00
Qizheng Xing
965dd1acd0 8333334: C2: Make result of Node::dominates more precise to enhance scalar replacement
Reviewed-by: chagedorn, kvn, thartmann
2024-08-23 09:30:47 +00:00
Tobias Hartmann
657c0bddf9 8336999: Verification for resource area allocated data structures in C2
Reviewed-by: chagedorn, kvn
2024-07-29 05:31:10 +00:00
Kim Barrett
388fcf03c0 8336349: Fix more simple -Wzero-as-null-pointer-constant warnings in C2 code
Reviewed-by: kvn, shade
2024-07-15 16:00:00 +00:00
Christian Hagedorn
2edb6d9813 8330386: Replace Opaque4Node of Initialized Assertion Predicate with new OpaqueInitializedAssertionPredicateNode
Reviewed-by: kvn, roland
2024-05-28 08:12:36 +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
Jasmine Karthikeyan
b9927aa3a4 8329194: Cleanup Type::cmp definition and usage
Reviewed-by: dfenacci, chagedorn, qamai
2024-04-25 13:13:25 +00:00
Cesar Soares Lucas
31ee5108e0 8241503: C2: Share MacroAssembler between mach nodes during code emission
Reviewed-by: kvn, mdoerr, amitkumar, lucy
2024-04-11 15:44:49 +00:00
Magnus Ihse Bursie
09d4936657 8252136: Several methods in hotspot are missing "static"
Reviewed-by: coleenp, stefank, kvn, kbarrett
2024-02-14 16:29:58 +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
Dean Long
d0761c19d1 8312077: Fix signed integer overflow, final part
Reviewed-by: kvn, amitkumar
2023-07-24 20:40:08 +00:00
Emanuel Peter
9057b35033 8306922: IR verification fails because IR dump is chopped up
Reviewed-by: chagedorn, thartmann
2023-06-26 06:11:32 +00:00
Christian Hagedorn
19c8c30d1c 8305634: Renaming predicates, simple cleanups, and adding summary about current predicates
Reviewed-by: epeter, thartmann, roland
2023-05-16 13:30:07 +00:00
Dean Long
7fcb0fdcd4 8307139: Fix signed integer overflow in compiler code, part 1
Reviewed-by: thartmann, rcastanedalo, kvn
2023-05-11 18:06:43 +00:00
Roberto Castañeda Lozano
1be80a4445 8287087: C2: perform SLP reduction analysis on-demand
Reviewed-by: epeter, jbhateja, thartmann
2023-04-27 09:39:53 +00:00
Kirill A. Korinsky
7551529854 8305995: Footprint regression from JDK-8224957
Reviewed-by: kvn, thartmann
2023-04-17 12:22:26 +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
Justin King
2e3cea01da 8302594: use-after-free in Node::destruct
Reviewed-by: kvn, thartmann
2023-02-16 14:14:46 +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
Xue-Lei Andrew Fan
e80b5ea448 8299635: Hotspot update for deprecated sprintf in Xcode 14
Reviewed-by: dholmes, mikael
2023-01-25 15:42:53 +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
Damon Fenacci
ec95991470 8298736: Revisit usages of log10 in compiler code
Reviewed-by: thartmann, chagedorn, epeter
2022-12-19 08:47:04 +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