211 Commits

Author SHA1 Message Date
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
Emanuel Peter
c856b3425a 8352587: C2 SuperWord: we must avoid Multiversioning for PeelMainPost loops
Reviewed-by: chagedorn, kvn
2025-03-25 16:08:57 +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
Christian Hagedorn
4867a4c89e 8351280: Mark Assertion Predicates useless instead of replacing them by a constant directly
Reviewed-by: epeter, roland
2025-03-10 12:09:16 +00:00
Emanuel Peter
e82031ec1a 8350756: C2 SuperWord Multiversioning: remove useless slow loop when the fast loop disappears
Reviewed-by: kvn, chagedorn
2025-03-06 06:48:42 +00:00
Roland Westrelin
939815fdcf 8347040: C2: assert(!loop->_body.contains(in)) failed
Reviewed-by: chagedorn, kvn
2025-02-27 16:47:31 +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
SendaoYan
04659a4073 8350197: [UBSAN] Node::dump_idx reported float-cast-overflow
Reviewed-by: chagedorn
2025-02-19 01:30:16 +00:00
Emanuel Peter
19399d271e 8348572: C2 compilation asserts due to unexpected irreducible loop
Reviewed-by: thartmann, kvn
2025-02-05 12:58:43 +00:00
Stefan Karlsson
c33c1cfe73 8347909: Automatic precompiled.hpp inclusion
Reviewed-by: lkorinth, erikj, dholmes, ihse
2025-01-21 10:21:24 +00:00
Theo Weidmann
f54e0bf267 8345766: C2 should emit macro nodes for ModF/ModD instead of calls during parsing
Reviewed-by: kvn, epeter
2025-01-21 09:15:18 +00:00
Emanuel Peter
f0af830f85 8335747: C2: fix overflow case for LoopLimit with constant inputs
Reviewed-by: kvn, qamai
2025-01-14 11:55:39 +00:00
Christian Hagedorn
ed0b555627 8344035: Replace predicate walking code in Loop Unswitching with a predicate visitor
Reviewed-by: roland, kvn
2025-01-13 08:09:08 +00:00
theoweidmannoracle
e88e793cfd 8343148: C2: Refactor uses of "PhaseValue::*con*() + PhaseIdealLoop::set_ctrl()" into separate method
Reviewed-by: kvn, chagedorn, thartmann
2024-12-11 07:52:06 +00:00
Daniel Skantz
480b508cf2 8345156: C2: Add bailouts next to a few asserts
Reviewed-by: kvn, epeter
2024-12-09 16:29:56 +00:00
Christian Hagedorn
c977ef7b45 8342047: Create Template Assertion Predicates with Halt nodes only instead of uncommon traps
Reviewed-by: epeter, thartmann
2024-11-14 07:13:19 +00:00
Thomas Stuefe
133f8f3186 8344014: Simplify TracePhase constructor
Reviewed-by: dlong, roland
2024-11-13 12:30:06 +00:00
Christian Hagedorn
a6c85daa1c 8342945: Replace predicate walking code in get_assertion_predicates() used for Loop Unswitching and cleaning useless Template Assertion Predicates with a predicate visitor
Reviewed-by: thartmann, roland, kvn
2024-11-07 07:05:20 +00:00
Christian Hagedorn
e389f82b1b 8343137: C2: VerifyLoopOptimizations fails with "Was reachable in only one"
Reviewed-by: thartmann, kvn
2024-10-29 08:07:22 +00:00
Christian Hagedorn
7131f053b0 8342043: Split Opaque4Node into OpaqueTemplateAssertionPredicateNode and OpaqueNotNullNode
Reviewed-by: kvn, roland
2024-10-23 08:00:42 +00:00
Kangcheng Xu
80ec552248 8328528: C2 should optimize long-typed parallel iv in an int counted loop
Reviewed-by: roland, chagedorn, thartmann
2024-10-21 14:57:31 +00:00
Christian Hagedorn
d61f56a300 8342287: C2 fails with "assert(is_IfTrue()) failed: invalid node class: IfFalse" due to Template Assertion Predicate with two UCTs
Reviewed-by: kvn, thartmann
2024-10-21 06:28:40 +00:00
Dean Long
c89f76c0b9 8332644: Improve graph optimizations
Co-authored-by: Martin Balao <mbalao@redhat.com>
Co-authored-by: Francisco Ferrari Bihurriet <fferrari@redhat.com>
Reviewed-by: epeter, ahgross, thartmann, rhalade, dlong, roland
2024-10-15 17:04:27 +05:30
Roland Westrelin
ecc77a5b4a 8336702: C2 compilation fails with "all memory state should have been processed" assert
Reviewed-by: thartmann, chagedorn
2024-10-09 14:57:37 +00:00
Christian Hagedorn
3fba1702cd 8340786: Introduce Predicate classes with predicate iterators and visitors for simplified walking
Reviewed-by: roland, thartmann
2024-10-09 11:42:22 +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
Christian Hagedorn
1dd60b62e3 8323688: C2: Fix UB of jlong overflow in PhaseIdealLoop::is_counted_loop()
Reviewed-by: thartmann, kvn
2024-09-24 06:47:20 +00:00
Roland Westrelin
e203df46fa 8338100: C2: assert(!n_loop->is_member(get_loop(lca))) failed: control must not be back in the loop
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Reviewed-by: chagedorn, thartmann
2024-09-05 15:51:27 +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
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
Roland Westrelin
0ddf54e222 8335709: C2: assert(!loop->is_member(get_loop(useblock))) failed: must be outside loop
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Reviewed-by: epeter, thartmann
2024-07-19 07:30:23 +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
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
Christian Hagedorn
48621ae193 8331168: Introduce PredicateEntryIterator to iterate through predicate entries
Reviewed-by: roland, kvn
2024-06-19 06:45:04 +00:00
Christian Hagedorn
1f9e62904c 8333434: IGV: Print loop node for PHASE_BEFORE/AFTER_CLOOPS
Reviewed-by: thartmann, rcastanedalo
2024-06-03 14:03:34 +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
Christian Hagedorn
4bbd972cbb 8305638: Renaming and small clean-ups around predicates
Reviewed-by: roland, epeter
2024-05-06 07:48:22 +00:00
Roland Westrelin
c615c18e9f 8330158: C2: Loop strip mining uses ABS with min int
Reviewed-by: shade, kvn, dlong, mbalao
2024-04-29 07:36:14 +00:00
Roland Westrelin
05854fd704 8329163: C2: possible overflow in PhaseIdealLoop::extract_long_range_checks()
Reviewed-by: chagedorn, kvn
2024-03-27 16:14:18 +00:00
Roland Westrelin
cb2a671359 8324121: SIGFPE in PhaseIdealLoop::extract_long_range_checks
Reviewed-by: kvn, chagedorn
2024-03-25 12:55:08 +00:00
Roland Westrelin
e1b0af29e4 8323972: C2 compilation fails with assert(!x->as_Loop()->is_loop_nest_inner_loop()) failed: loop was transformed
Reviewed-by: chagedorn, epeter
2024-03-19 07:56:53 +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
Joshua Cao
2546afe2aa 8325451: Missed elimination of assertion predicates
Reviewed-by: chagedorn, phh
2024-02-12 06:29:37 +00:00
Emanuel Peter
232d136885 8324890: C2 SuperWord: refactor out VLoop, make unrolling_analysis static, remove init/reset mechanism
Reviewed-by: kvn, roland
2024-02-10 14:19:01 +00:00
Emanuel Peter
85e320121e 8325159: C2 SuperWord: measure time for CITime
Reviewed-by: rcastanedalo, kvn
2024-02-05 06:53:51 +00:00
Christian Hagedorn
c1a568c9c4 8314307: Improve loop handling
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Co-authored-by: Roland Westrelin <rwestrel@redhat.com>
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Reviewed-by: mschoene, rhalade, thartmann, epeter
2024-01-16 05:55:56 +00:00
Roland Westrelin
129c4708b4 8311932: Suboptimal compiled code of nested loop over memory segment
Reviewed-by: thartmann, chagedorn
2023-11-17 07:54:10 +00:00
Emanuel Peter
83eb20651f 8318889: C2: add bailout after assert Bad graph detected in build_loop_late
Reviewed-by: shade, thartmann
2023-10-30 07:17:30 +00:00
Thomas Stuefe
31ef400f31 8318183: C2: VM may crash after hitting node limit
Reviewed-by: kvn, thartmann
2023-10-18 08:39:00 +00:00
Emanuel Peter
1ed9c76ec8 8309204: Obsolete DoReserveCopyInSuperWord
Reviewed-by: kvn, thartmann
2023-10-05 07:01:18 +00:00