Commit Graph

339 Commits

Author SHA1 Message Date
Joshua Cao
1d06170758 8300148: Consider using a StoreStore barrier instead of Release barrier on ctor exit
Reviewed-by: shade, kvn, dlong
2024-04-24 17:06:45 +00:00
Emanuel Peter
3ccb64c021 8318446: C2: optimize stores into primitive arrays by combining values into larger store
Reviewed-by: kvn, thartmann
2024-04-24 06:44:14 +00:00
Jasmine Karthikeyan
438e64310d 8329531: compiler/c2/irTests/TestIfMinMax.java fails with IRViolationException: There were one or multiple IR rule failures.
Reviewed-by: epeter, dfenacci
2024-04-24 05:22:51 +00:00
Evgeny Nikitin
5394f57f00 8330621: Make 5 compiler tests use ProcessTools.executeProcess
Reviewed-by: chagedorn, stefank, thartmann
2024-04-22 07:41:06 +00:00
Roland Westrelin
9445047d05 8330163: C2: improve CMoveNode::Value() when condition is always true or false
Reviewed-by: chagedorn, kvn
2024-04-17 10:48:35 +00:00
Roman Kennke
2e925f263d 8329726: Use non-short forward jumps in lightweight locking
Reviewed-by: shade, kvn, aboldtch
2024-04-09 14:50:41 +00:00
Jatin Bhateja
fbc1e6661e 8328181: C2: assert(MaxVectorSize >= 32) failed: vector length should be >= 32
Reviewed-by: kvn, vlivanov
2024-04-09 01:37:38 +00:00
Cesar Soares Lucas
a887fd2144 8316991: Reduce nullable allocation merges
Reviewed-by: kvn, vlivanov
2024-04-08 23:13:38 +00:00
Fei Yang
16b842af8e 8329355: Test compiler/c2/irTests/TestIfMinMax.java fails on RISC-V
Reviewed-by: jkarthikeyan, thartmann, chagedorn
2024-04-03 07:39:24 +00:00
Jasmine Karthikeyan
9f920b9bbf 8324655: Identify integer minimum and maximum patterns created with if statements
Reviewed-by: epeter, qamai
2024-03-25 06:23:11 +00:00
Roland Westrelin
053ff76e14 8308660: C2 compilation hits 'node must be dead' assert
Reviewed-by: chagedorn, kvn
2024-03-19 07:57:53 +00:00
Emanuel Peter
98f0b86641 8319690: [AArch64] C2 compilation hits offset_ok_for_immed: assert "c2 compiler bug"
Co-authored-by: Fei Gao <fgao@openjdk.org>
Reviewed-by: aph, kvn, gli
2024-03-05 13:37:08 +00:00
Cesar Soares Lucas
7cd25ed605 8322854: Incorrect rematerialization of scalar replaced objects in C2
Reviewed-by: kvn, thartmann
2024-02-13 13:50:59 +00:00
Emanuel Peter
8d9ad97c29 8324641: [IR Framework] Add Setup method to provide custom arguments and set fields
Reviewed-by: chagedorn, thartmann
2024-02-09 05:30:20 +00:00
Daniel Lundén
4abb10eb0b 8317349: Randomize order of macro node expansion in C2
Reviewed-by: chagedorn, rcastanedalo, thartmann
2024-02-07 10:01:35 +00:00
Daniel Lundén
4da28b40f0 8291809: Convert compiler/c2/cr7200264/TestSSE2IntVect.java to IR verification test
Reviewed-by: rcastanedalo, epeter, chagedorn
2024-02-05 10:53:38 +00:00
Cesar Soares Lucas
76afa02dab 8322572: AllocationMergesTests.java fails with "IRViolationException: There were one or multiple IR rule failures."
Reviewed-by: kvn, thartmann
2024-01-22 08:22:33 +00:00
Christian Hagedorn
6997bfc68d 8323154: C2: assert(cmp != nullptr && cmp->Opcode() == Op_Cmp(bt)) failed: no exit test
Reviewed-by: roland, thartmann, qamai
2024-01-19 15:49:02 +00:00
Jorn Vernee
2fd775f69c 8323651: compiler/c2/irTests/TestPrunedExHandler.java fails with -XX:+DeoptimizeALot
Reviewed-by: alanb, kvn
2024-01-16 13:25:49 +00:00
Emanuel Peter
45c65e6b1a 8323577: C2 SuperWord: remove AlignVector restrictions on IR tests added in JDK-8305055
Reviewed-by: rcastanedalo, chagedorn
2024-01-15 10:41:05 +00:00
Zhiqiang Zang
1515bd7c9d 8322077: Add Ideal transformation: (~a) | (~b) => ~(a & b)
Reviewed-by: thartmann, epeter
2024-01-15 06:48:00 +00:00
Zhiqiang Zang
8569227473 8322589: Add Ideal transformation: (~a) & (~b) => ~(a | b)
Reviewed-by: thartmann, epeter
2024-01-10 07:31:56 +00:00
Boris Ulasevich
52a6c37558 8322858: compiler/c2/aarch64/TestFarJump.java fails on AArch64 due to unexpected PrintAssembly output
Reviewed-by: aph, thartmann
2024-01-09 10:33:52 +00:00
Emanuel Peter
827c71dac9 8310190: C2 SuperWord: AlignVector is broken, generates misaligned packs
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Reviewed-by: kvn, chagedorn
2024-01-08 16:10:21 +00:00
Stefan Karlsson
cbe329b90a 8321713: Harmonize executeTestJvm with create[Limited]TestJavaProcessBuilder
Reviewed-by: lkorinth, lmesnik
2024-01-03 08:53:01 +00:00
Daniel Lundén
d632d743e0 8321820: TestLoadNIdeal fails on 32-bit because -XX:+UseCompressedOops is not recognized
Reviewed-by: rcastanedalo, chagedorn, shade
2023-12-14 09:29:34 +00:00
Tobias Hartmann
c8ad7b7f84 8321974: Crash in ciKlass::is_subtype_of because TypeAryPtr::_klass is not initialized
Reviewed-by: roland, kvn
2023-12-14 07:23:21 +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
Christian Hagedorn
ecd335d8f4 8321107: Add more test cases for JDK-8319372
Reviewed-by: roland, kvn
2023-12-01 07:44:09 +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
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
Jasmine Karthikeyan
4977922a3f 8320330: Improve implementation of RShift Value
Reviewed-by: thartmann, chagedorn
2023-11-27 14:44:08 +00:00
Cesar Soares Lucas
3544d2dd86 8319784: VM crash during heap dump after JDK-8287061
Reviewed-by: kvn, thartmann, shade
2023-11-21 07:20:28 +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
Quan Anh Mai
1e687b4529 8316719: C2 compilation still fails with "bad AD file"
Reviewed-by: chagedorn, thartmann
2023-11-08 10:47:00 +00:00
Jasmine Karthikeyan
2a76ad975c 8318683: compiler/c2/irTests/TestPhiDuplicatedConversion.java "Failed IR Rules (2) of Methods (2)"
Reviewed-by: thartmann, kvn
2023-11-01 06:12:55 +00:00
Leo Korinth
d52a995f35 8315097: Rename createJavaProcessBuilder
Reviewed-by: lmesnik, dholmes, rriggs, stefank
2023-10-27 08:47:26 +00:00
Hamlin Li
9e98ee6726 8318735: RISC-V: Enable related hotspot tests run on riscv
Reviewed-by: fyang, luhenry
2023-10-25 15:37:42 +00:00
Jasmine Karthikeyan
a03767cf88 8318049: C2: assert(!failure) failed: Missed optimization opportunity in PhaseIterGVN
Reviewed-by: epeter, thartmann
2023-10-20 10:44:58 +00:00
Jasmine Karthikeyan
36993aea9a 8316918: Optimize conversions duplicated across phi nodes
Reviewed-by: thartmann, kvn
2023-10-16 12:52:01 +00:00
Roland Westrelin
b0d6c8472f 8316396: Endless loop in C2 compilation triggered by AddNode::IdealIL
Reviewed-by: thartmann, kvn
2023-10-04 12:06:31 +00:00
Jorn Vernee
68f69417c7 8314452: Explicitly indicate inlining success/failure in PrintInlining
Reviewed-by: kvn, shade, thartmann
2023-09-09 10:32:23 +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
Tobias Hotz
aba89f20bf 8312213: Remove unnecessary TEST instructions on x86 when flags reg will already be set
Reviewed-by: jvernee, dlong
2023-09-05 22:08:20 +00:00
Quan Anh Mai
969fcdb0de 8314191: C2 compilation fails with "bad AD file"
Reviewed-by: thartmann, chagedorn
2023-09-05 16:15:54 +00:00
Christian Hagedorn
2dc930de12 8314997: Missing optimization opportunities due to missing try_clean_mem_phi() calls
Reviewed-by: roland, kvn, thartmann
2023-09-04 06:53:19 +00:00
Quan Anh Mai
837cf85f7d 8312547: Max/Min nodes Value implementation could be improved
Reviewed-by: thartmann, kvn
2023-08-25 17:48:27 +00:00
Cesar Soares Lucas
02ef859f79 8313689: C2: compiler/c2/irTests/scalarReplacement/AllocationMergesTests.java fails intermittently with -XX:-TieredCompilation
Reviewed-by: kvn, thartmann
2023-08-22 07:58:51 +00:00
Emanuel Peter
d46f0fb318 8313720: C2 SuperWord: wrong result with -XX:+UseVectorCmov -XX:+UseCMoveUnconditionally
Reviewed-by: chagedorn, thartmann
2023-08-16 07:15:43 +00:00
Emanuel Peter
a02d65efcc 8310308: IR Framework: check for type and size of vector nodes
Reviewed-by: chagedorn, thartmann
2023-08-15 10:08:51 +00:00
Fei Gao
37c6b23f5b 8308340: C2: Idealize Fma nodes
Reviewed-by: kvn, epeter
2023-08-15 01:04:22 +00:00
Ashutosh Mehra
7ba8c69a2c 8312596: Null pointer access in Compile::TracePhase::~TracePhase after JDK-8311976
Reviewed-by: chagedorn, dlong, shade
2023-08-01 19:26:45 +00:00
Cesar Soares Lucas
a53345ad03 8287061: Support for rematerializing scalar replaced objects participating in allocation merges
Reviewed-by: kvn, vlivanov
2023-07-17 23:01:35 +00:00
Matthias Baesken
25cbe85d6f 8310550: Adjust references to rt.jar
Reviewed-by: erikj, clanger
2023-07-07 06:57:23 +00:00
Roland Westrelin
be64d3ac3c 8310299: C2: 8275201 broke constant folding of array store check in some cases
Reviewed-by: thartmann, kvn
2023-06-29 07:41:04 +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
Quan Anh Mai
947f14977a 8308444: LoadStoreNode::result_not_used() is too conservative
Reviewed-by: kvn, thartmann
2023-06-15 16:00:18 +00:00
Vladimir Kozlov
0038491abd 8309978: [x64] Fix useless padding
Reviewed-by: chagedorn, thartmann, shade
2023-06-15 15:32:45 +00:00
Tobias Holenstein
f5cbe53fdd 8027711: Unify wildcarding syntax for CompileCommand and CompileOnly
Reviewed-by: kvn, thartmann, chagedorn
2023-06-12 07:39:23 +00:00
Roberto Castañeda Lozano
3fa776d66a 8302673: [SuperWord] MaxReduction and MinReduction should vectorize for int
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: epeter, kvn
2023-06-05 07:08:33 +00:00
Emanuel Peter
22a9a86be0 8309268: C2: "assert(in_bb(n)) failed: must be" after JDK-8306302
Reviewed-by: rcastanedalo, kvn, thartmann
2023-06-05 06:43:13 +00:00
Jasmine Karthikeyan
fb0b1f0c23 8051725: Improve expansion of Conv2B nodes in the middle-end
Reviewed-by: thartmann, qamai, sviswanathan
2023-05-30 14:11:12 +00:00
Emanuel Peter
beb75e651f 8306302: C2 Superword fix: use VectorMaskCmp and VectorBlend instead of CMoveVF/D
Reviewed-by: fgao, jbhateja
2023-05-24 07:00:27 +00:00
Ningsheng Jian
33d9a85730 8307572: AArch64: Vector registers are clobbered by some macroassemblers
Reviewed-by: aph, adinn
2023-05-12 02:05:18 +00:00
Roland Westrelin
ccf91f881c 8306933: C2: "assert(false) failed: infinite loop" failure
Reviewed-by: chagedorn, thartmann
2023-05-03 11:14:53 +00:00
Afshin Zafari
84df74ca39 8305079: Remove finalize() from compiler/c2/Test719030
Reviewed-by: thartmann, coleenp
2023-04-28 06:32:25 +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
Ramkumar Sunderbabu
4900517479 8306636: Disable compiler/c2/Test6905845.java with -XX:TieredStopAtLevel=3
Reviewed-by: kvn
2023-04-24 02:19:10 +00:00
Roland Westrelin
8ecb5dfa34 8305781: compiler/c2/irTests/TestVectorizationMultiInvar.java failed with "IRViolationException: There were one or multiple IR rule failures."
Reviewed-by: thartmann, kvn
2023-04-18 08:54:55 +00:00
Roland Westrelin
6b2a86a65e 8300257: C2: vectorization fails on some simple Memory Segment loops
Reviewed-by: kvn, thartmann
2023-04-07 12:51:44 +00:00
Fei Gao
dea9db2d0a 8305055: IR check fails on some aarch64 platforms
Reviewed-by: epeter, thartmann
2023-03-31 09:15:24 +00:00
Christian Hagedorn
c466cdf973 8299546: C2: MulLNode::mul_ring() wrongly returns bottom type due to casting errors with large numbers
Reviewed-by: iveresov, kvn, qamai
2023-03-14 14:57:47 +00:00
Jasmine K
8e41bf222f 8303238: Create generalizations for existing LShift ideal transforms
Reviewed-by: redestad, thartmann
2023-03-13 11:10:42 +00:00
Roland Westrelin
dc523a58a6 8300258: C2: vectorization fails on simple ByteBuffer loop
Co-authored-by: Emanuel Peter <epeter@openjdk.org>
Reviewed-by: epeter, kvn
2023-03-09 08:00:24 +00:00
Tobias Hartmann
94eda53d98 8201516: DebugNonSafepoints generates incorrect information
Reviewed-by: kvn, roland
2023-03-07 06:59:23 +00:00
Roland Westrelin
6b07243f56 8301630: C2: 8297933 broke type speculation in some cases
Reviewed-by: chagedorn, thartmann
2023-03-01 09:36:22 +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
2a8ae2ff1c 8300256: C2: vectorization is sometimes skipped on loops where it would succeed
Reviewed-by: kvn, thartmann
2023-02-01 09:48:54 +00:00
Damon Fenacci
e1893976d5 8296403: [TESTBUG] IR test runner methods in TestLongRangeChecks.java invoke wrong test methods
Reviewed-by: thartmann, chagedorn, jiefu
2023-01-20 08:16:28 +00:00
Emanuel Peter
6fea233e22 8299960: Speed up test/hotspot/jtreg/compiler/c2/irTests/TestVectorizeURShiftSubword.java
Reviewed-by: thartmann, chagedorn, fgao
2023-01-16 09:17:31 +00:00
Yi Yang
0459159537 8288204: GVN Crash: assert() failed: correct memory chain
Reviewed-by: kvn, thartmann
2022-12-26 02:16:06 +00:00
Roland Westrelin
88bfe4d3bf 8297724: Loop strip mining prevents some empty loops from being eliminated
Reviewed-by: kvn, thartmann
2022-12-21 14:46:57 +00:00
Christian Hagedorn
5e678f7500 8298824: C2 crash: assert(is_Bool()) failed: invalid node class: ConI
Reviewed-by: roland, kvn, thartmann
2022-12-19 07:10:12 +00:00
Gui Cao
33d955ad6e 8298345: Fix another two C2 IR matching tests for RISC-V
Reviewed-by: fyang, dzhang, fjiang
2022-12-09 12:43:47 +00:00
Yi Yang
acf96c64b7 8290432: C2 compilation fails with assert(node->_last_del == _last) failed: must have deleted the edge just produced
Reviewed-by: kvn, thartmann, chagedorn
2022-12-07 03:08:07 +00:00
Fei Gao
4458de95f8 8297172: Fix some issues of auto-vectorization of Long.bitCount/numberOfTrailingZeros/numberOfLeadingZeros()
Reviewed-by: kvn, thartmann
2022-12-06 09:35:27 +00:00
Aleksey Shipilev
eab0ada3a1 8296545: C2 Blackholes should allow load optimizations
Reviewed-by: kvn, vlivanov
2022-12-05 12:00:30 +00:00
Feilong Jiang
227364d592 8297953: Fix several C2 IR matching tests for RISC-V
Reviewed-by: fyang, chagedorn
2022-12-02 12:48:42 +00:00
Zhiqiang Zang
fd910f77bc 8297384: Add IR tests for existing idealizations of arithmetic nodes
Reviewed-by: chagedorn
2022-11-25 08:17:44 +00:00
Tobias Hartmann
502fa3eeea 8296912: C2: CreateExNode::Identity fails with assert(i < _max) failed: oob: i=1, _max=1
Reviewed-by: chagedorn, kvn
2022-11-17 07:39:57 +00:00
Bhavana Kilambi
b49bdaeade 8294816: C2: Math.min/max vectorization miscompilation
Reviewed-by: thartmann, ngasson
2022-11-04 17:22:54 +00:00
Christian Hagedorn
f829b5a73f 8280378: [IR Framework] Support IR matching for different compile phases
Reviewed-by: kvn, rcastanedalo
2022-11-01 15:41:09 +00:00
Jie Fu
754bd53137 8296030: compiler/c2/irTests/TestVectorizeTypeConversion.java fails with release VMs after JDK-8291781
Reviewed-by: chagedorn
2022-10-28 12:46:32 +00:00
SuperCoder79
cf5546b3ac 8291336: Add ideal rule to convert floating point multiply by 2 into addition
Reviewed-by: qamai, thartmann, chagedorn
2022-10-28 10:04:38 +00:00
Fei Gao
4b89fce083 8291781: assert(!is_visited) failed: visit only once with -XX:+SuperWordRTDepCheck
Reviewed-by: thartmann
2022-10-28 07:27:02 +00:00
Igor Veresov
58a7141a0d 8295066: Folding of loads is broken in C2 after JDK-8242115
Reviewed-by: kvn, thartmann
2022-10-26 20:45:26 +00:00
Magnus Ihse Bursie
d5a1521fde 8295470: Update openjdk.java.net => openjdk.org URLs in test code
Reviewed-by: michaelm, prr, darcy
2022-10-20 10:33:18 +00:00
Fei Gao
490fcd0c25 8293833: Error mixing types with -XX:+UseCMoveUnconditionally -XX:+UseVectorCmov
Reviewed-by: chagedorn, kvn
2022-10-18 02:00:53 +00:00
Zhiqiang Zang
5dd851d872 8281453: New optimization: convert ~x into -1-x when ~x is used in an arithmetic expression
Reviewed-by: kvn
2022-10-06 22:15:20 +00:00
Vladimir Ivanov
c7ab1caafb 8294609: C2: Improve inlining of methods with unloaded signature classes
Reviewed-by: kvn, dlong
2022-09-30 23:30:45 +00:00