Commit graph

96 commits

Author SHA1 Message Date
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
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
theoweidmannoracle
d381d581bf 8332268: C2: Add missing optimizations for UDivI/L and UModI/L and unify the shared logic with the signed nodes
Reviewed-by: chagedorn, thartmann, epeter, qamai
2024-12-11 14:30:59 +00:00
Aleksey Shipilev
f3b4350e0f 8345219: C2: x86_64 should not go to interpreter stubs for NaNs handling
Reviewed-by: epeter, kvn
2024-12-04 16:37:38 +00:00
Jatin Bhateja
29c57e8b34 8342677: Add IR validation tests for newly added saturated vector add / sub operations
Reviewed-by: epeter
2024-12-02 16:55:33 +00:00
Roberto Castañeda Lozano
ec13364cda 8343067: C2: revisit constant-offset AddP chains after successful input idealizations
Reviewed-by: kvn, vlivanov
2024-11-11 10:05:15 +00:00
Roland Westrelin
57c3bb6091 8343068: C2: CastX2P Ideal transformation not always applied
Reviewed-by: kvn, thartmann
2024-11-06 14:47:14 +00:00
Quan Anh Mai
7276a1bec0 8341784: Refactor TypeVect to use a BasicType instead of a const Type*
Reviewed-by: kvn, jkarthikeyan
2024-10-11 15:28:15 +00:00
Roberto Castañeda Lozano
0b467e902d 8334060: Implementation of Late Barrier Expansion for G1
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Siyao Liu <siyao.l.liu@oracle.com>
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Co-authored-by: Amit Kumar <amitkumar@openjdk.org>
Co-authored-by: Martin Doerr <mdoerr@openjdk.org>
Co-authored-by: Feilong Jiang <fjiang@openjdk.org>
Co-authored-by: Sergey Nazarkin <snazarki@openjdk.org>
Reviewed-by: kvn, tschatzl, fyang, ayang, kbarrett
2024-10-03 08:36:33 +00:00
Kangcheng Xu
10050a7239 8332442: C2: refactor Mod cases in Compile::final_graph_reshaping_main_switch()
Reviewed-by: roland, chagedorn, jkarthikeyan
2024-09-17 07:19:02 +00:00
Andrew Dinn
b88ff9c986 8339849: Enumerate opto and C1 stubs, generate enums, names, fields and generator calls
Reviewed-by: kvn
2024-09-13 06:43:38 +00:00
Jasmine Karthikeyan
6f8714ee19 8336860: x86: Change integer src operand for CMoveL of 0 and 1 to long
Reviewed-by: epeter, chagedorn, shade, qamai, jbhateja
2024-09-04 13:44:24 +00:00
Kangcheng Xu
1383fec417 8327381: Refactor type-improving transformations in BoolNode::Ideal to BoolNode::Value
Reviewed-by: chagedorn, thartmann, jkarthikeyan, epeter
2024-08-29 05:34:08 +00:00
Fei Gao
2c9185eb81 8321308: AArch64: Fix matching predication for cbz/cbnz
Reviewed-by: fyang, adinn, aph
2024-06-12 13:29:45 +00:00
Damon Fenacci
0c934ff4e2 8325520: Vector loads and stores with indices and masks incorrectly compiled
Reviewed-by: epeter, thartmann
2024-05-24 13:39:17 +00:00
Hamlin Li
675fbe699e 8331993: Add counting leading/trailing zero tests for Integer
Reviewed-by: chagedorn
2024-05-10 13:57:55 +00:00
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
Galder Zamarreño
c439c8c73c 8323429: Missing C2 optimization for FP min/max when both inputs are same
Reviewed-by: roland, chagedorn
2024-04-24 08:20:49 +00:00
Roberto Castañeda Lozano
57ebd045ea 8330153: C2: dump barrier information for all Mach nodes
Reviewed-by: kvn, thartmann
2024-04-23 04:18:23 +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
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
Zhiqiang Zang
8569227473 8322589: Add Ideal transformation: (~a) & (~b) => ~(a | b)
Reviewed-by: thartmann, epeter
2024-01-10 07:31:56 +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
Eric Liu
50f41d6370 8309893: Integrate ReplicateB/S/I/L/F/D nodes to Replicate node
Reviewed-by: jbhateja, epeter, fgao
2023-11-13 02:19:52 +00:00
Christian Hagedorn
dd9eab15c8 8310886: C2 SuperWord: Two nodes should be isomorphic if they are loop invariant but pinned at different nodes outside the loop
Reviewed-by: kvn, epeter
2023-11-09 09:31:54 +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
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
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
Gui Cao
e7adbdb1f1 8311923: TestIRMatching.java fails on RISC-V
Reviewed-by: fyang
2023-07-19 13:14:03 +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
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
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
changpeng1997
f600d0369a 8307795: AArch64: Optimize VectorMask.truecount() on Neon
Reviewed-by: aph, eliu
2023-05-30 12:45:33 +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
Stefan Karlsson
d20034b09c 8307058: Implementation of Generational ZGC
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Axel Boldt-Christmas <aboldtch@openjdk.org>
Co-authored-by: Per Liden <pliden@openjdk.org>
Co-authored-by: Stefan Johansson <sjohanss@openjdk.org>
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Co-authored-by: Erik Helin <ehelin@openjdk.org>
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Co-authored-by: Nils Eliasson <neliasso@openjdk.org>
Co-authored-by: Martin Doerr <mdoerr@openjdk.org>
Co-authored-by: Leslie Zhai <lzhai@openjdk.org>
Co-authored-by: Fei Yang <fyang@openjdk.org>
Co-authored-by: Yadong Wang <yadongwang@openjdk.org>
Reviewed-by: eosterlund, aboldtch, rcastanedalo
2023-05-11 13:59:37 +00:00
changpeng1997
0dca573ca5 8301739: AArch64: Add optimized rules for vector compare with immediate for SVE
Reviewed-by: aph, eliu
2023-05-06 07:20:20 +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
Emanuel Peter
cc894d849a 8303466: C2: failed: malformed control flow. Limit type made precise with MaxL/MinL
Reviewed-by: roland, kvn, chagedorn, thartmann
2023-04-26 05:42:26 +00:00
Emanuel Peter
83a924a100 8304042: C2 SuperWord: schedule must remove packs with cyclic dependencies
Reviewed-by: kvn, thartmann
2023-04-05 04:52:11 +00:00
Bhavana Kilambi
de1c12ed63 8301012: [vectorapi]: Intrinsify CompressBitsV/ExpandBitsV and add the AArch64 SVE backend implementation
Co-authored-by: Xiaohong Gong <xgong@openjdk.org>
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: ngasson, eliu, thartmann
2023-03-27 08:50:05 +00:00
Emanuel Peter
01e6920581 8298935: fix independence bug in create_pack logic in SuperWord::find_adjacent_refs
Reviewed-by: kvn, jbhateja
2023-03-15 14:02:45 +00:00
Daniel Skantz
d20bde29f2 8294715: Add IR checks to the reduction vectorization tests
Reviewed-by: rcastanedalo, epeter
2023-03-13 07:33:46 +00:00
changpeng1997
d23a8bfb14 8297753: AArch64: Add optimized rules for vector compare with zero on NEON
Reviewed-by: aph
2023-03-03 12:11:10 +00:00
Pengfei Li
715b509f3d 8298632: [TESTBUG] Add IR checks in jtreg vectorization tests
Reviewed-by: kvn, jbhateja
2023-01-19 01:05:58 +00:00
Jesper Wilhelmsson
5393dc9a48 Merge 2023-01-07 02:05:59 +00:00
Bhavana Kilambi
136f5db03d 8299528: IR test: TestEor3AArch64.java fails on aarch64
Reviewed-by: thartmann, chagedorn
2023-01-06 10:04:04 +00:00
Quan Anh Mai
3dfadeebd0 8292289: [vectorapi] Improve the implementation of VectorTestNode
Reviewed-by: xgong, kvn
2022-12-08 20:25:20 +00:00