[llvm-branch-commits] [llvm] [InlineCost] Simplify extractvalue across callsite (PR #145054)

2025-06-23 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler reopened https://github.com/llvm/llvm-project/pull/145054 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [InlineCost] Simplify extractvalue across callsite (PR #145054)

2025-06-23 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler closed https://github.com/llvm/llvm-project/pull/145054 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [InlineCost] Simplify extractvalue across callsite (PR #145054)

2025-06-23 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/145054 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [InlineCost] Simplify extractvalue across callsite (PR #145054)

2025-06-23 Thread Tobias Stadler via llvm-branch-commits
tobias-stadler wrote: Oops, x86 has lower cost than AArch64. Thanks! https://github.com/llvm/llvm-project/pull/145054 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-

[llvm-branch-commits] [llvm] [InlineCost] Simplify extractvalue across callsite (PR #145054)

2025-06-23 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/145054 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [Remarks] Auto-detect remark parser format (PR #144554)

2025-06-17 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/144554 >From a428e237fcc52830549144bf3afdcddb29742b0d Mon Sep 17 00:00:00 2001 From: Tobias Stadler Date: Mon, 16 Jun 2025 15:32:15 +0100 Subject: [PATCH 1/2] [Remarks] Auto-detect remark parser format Add rema

[llvm-branch-commits] [llvm] [Remarks] Auto-detect remark parser format (PR #144554)

2025-06-17 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/144554 Add remark format 'Auto', which performs automatic detection of the remark format using the magic numbers at the beginning of the remarks files. The RemarkLinker already did something similar, so we stre

[llvm-branch-commits] [llvm] [GlobalISel] Fix miscompile when narrowing vector load/stores to non-byte-sized types (PR #136739)

2025-04-23 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/136739 >From e88a6e177837b478b4dc20def1b59f193b950965 Mon Sep 17 00:00:00 2001 From: Tobias Stadler Date: Wed, 9 Apr 2025 13:32:02 +0100 Subject: [PATCH 1/2] [GlobalISel] Fix miscompile when narrowing vector lo

[llvm-branch-commits] [llvm] [GlobalISel] Fix miscompile when narrowing vector load/stores to non-byte-sized types (PR #136739)

2025-04-22 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/136739 LegalizerHelper::reduceLoadStoreWidth does not work for non-byte-sized types, because this would require (un)packing of bits across byte boundaries. Precommit tests: #134904 >From e88a6e177837b478b4dc20

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-16 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102167 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-16 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102167 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-15 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-15 Thread Tobias Stadler via llvm-branch-commits
@@ -45,61 +45,190 @@ cl::OptionCategory GICombinerOptionCategory( ); } // end namespace llvm -/// This class acts as the glue the joins the CombinerHelper to the overall +/// This class acts as the glue that joins the CombinerHelper to the overall /// Combine algorithm. The C

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-14 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-14 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-12 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-12 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [GlobalISel] Don't remove from unfinalized GISelWorkList (PR #102158)

2024-08-11 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler updated https://github.com/llvm/llvm-project/pull/102158 >From 1f5757a4c3989755623d66c43575c858dcb13f75 Mon Sep 17 00:00:00 2001 From: Tobias Stadler Date: Tue, 6 Aug 2024 17:13:59 +0200 Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20change

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
tobias-stadler wrote: > Is this a fundamental issue of the combiner or do we have to revisit the > situation when the combiner becomes slowly more powerful? This is a fundamental issue of combiner-style algorithms. Fixed-point iteration just burns too much compile-time for no good reason. Both

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102167 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102163 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler edited https://github.com/llvm/llvm-project/pull/102167 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
@@ -33,8 +33,7 @@ define noundef i1 @logger(i32 noundef %logLevel, ptr %ea, ptr %pll) { ; CHECK-GI-NEXT:b.hi .LBB1_2 ; CHECK-GI-NEXT: // %bb.1: // %land.rhs ; CHECK-GI-NEXT:ldr x8, [x1] -; CHECK-GI-NEXT:ldrb w8, [x8] -; CHECK-GI-NEXT:and w0, w8, #0x1 +; CHECK-

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
@@ -88,7 +95,8 @@ body: | %cmp2:_(s32) = G_ICMP intpred(sge), %cmp_lhs(s64), %add $w0 = COPY %cmp2(s32) -RET_ReallyLR implicit $w0 +$w1 = COPY %cmp1(s32) tobias-stadler wrote: cmp1 was dead in the input IR, but according to the com

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
@@ -9,6 +9,8 @@ body: | bb.1: ; CHECK-LABEL: name: crash_fn ; CHECK: [[C:%[0-9]+]]:_(p0) = G_CONSTANT i64 0 +; CHECK-NEXT: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 0 +; CHECK-NEXT: [[C2:%[0-9]+]]:_(s1) = G_CONSTANT i1 false tobias-st

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
@@ -257,10 +257,10 @@ define i32 @udiv_div_by_180(i32 %x) ; ; GISEL-LABEL: udiv_div_by_180: ; GISEL: // %bb.0: -; GISEL-NEXT:uxtb w8, w0 -; GISEL-NEXT:mov w9, #5826 // =0x16c2 -; GISEL-NEXT:movk w9, #364, lsl #16 -; GISEL-NEXT:umull x8, w8, w9 +; GISEL-NEX

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
tobias-stadler wrote: CTMark O0: ``` Program compile_instructions size..text base-O0 patch-O0 diff base-O0patch-O0 diff 7zip/7zip-benchmark

[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/102167 Disable fixed-point iteration in all AArch64 Combiners after #102163. See inline comments for justification of test changes. ___ llvm-branch-commits mailing l

[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/102163 Continues the work for disabling fixed-point iteration in the Combiner (#94291). This introduces improved Observer-based heuristics in the GISel Combiner to retry combining defs/uses of modified instructi

[llvm-branch-commits] [GlobalISel] Don't remove from unfinalized GISelWorkList (PR #102158)

2024-08-06 Thread Tobias Stadler via llvm-branch-commits
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/102158 Remove a hack from GISelWorkList caused by the Combiner removing instructions from an unfinalized GISelWorkList during the DCE phase. This is in preparation for larger changes to the WorkListMaintainer.