[llvm] [mlir] [clang] [flang] [mlir][complex] Prevent underflow in complex.abs (PR #79786)

2024-01-29 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer approved this pull request. https://github.com/llvm/llvm-project/pull/79786 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[mlir] [compiler-rt] [clang-tools-extra] [clang] [llvm] [mlir][bufferization] Fix SimplifyClones with dealloc before cloneOp (PR #79098)

2024-01-25 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer closed https://github.com/llvm/llvm-project/pull/79098 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [clang] [flang] [mlir] [libc] [llvm] [compiler-rt] [MLIR] Setting MemorySpace During Bufferization + Fixes (PR #78484)

2024-01-22 Thread Matthias Springer via cfe-commits
@@ -351,6 +354,16 @@ struct BufferizationOptions { /// used. UnknownTypeConverterFn unknownTypeConverterFn = nullptr; + // Use during type conversion to determine the memory space for memref based + // on the originanl tensor type + GetMemorySpaceFn getMemorySpaceFn =

[flang] [mlir] [llvm] [clang] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #77328)

2024-01-10 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,161 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partialIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [flang] [llvm] [clang] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #77328)

2024-01-10 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,161 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partialIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [flang] [llvm] [clang] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #77328)

2024-01-10 Thread Matthias Springer via cfe-commits
matthias-springer wrote: Can you re-open the old PR and force-push the contents of this PR to the old PR? Ideally, we'd keep using the old PR, so that we don't loose the review comments. https://github.com/llvm/llvm-project/pull/77328 ___

[llvm] [lld] [lldb] [mlir] [clang] [libc] [clang-tools-extra] [compiler-rt] [libcxx] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[lldb] [clang-tools-extra] [compiler-rt] [mlir] [libcxx] [clang] [libc] [lld] [llvm] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) matthias-springer wrote: typo: partiaIteration

[clang-tools-extra] [lldb] [libcxx] [libc] [compiler-rt] [clang] [llvm] [mlir] [lld] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[libcxx] [libc] [lldb] [clang-tools-extra] [llvm] [mlir] [compiler-rt] [lld] [clang] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [clang-tools-extra] [lld] [lldb] [clang] [libcxx] [llvm] [compiler-rt] [libc] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -189,16 +188,17 @@ LogicalResult scf::canonicalizeMinMaxOpInLoop(RewriterBase , /// * Inside the peeled loop: min(step, ub - iv) == step /// * Inside the partial iteration: min(step, ub - iv) == ub - iv /// -/// Returns `success` if the given operation was replaced by a

[clang] [lld] [compiler-rt] [lldb] [libcxx] [clang-tools-extra] [mlir] [libc] [llvm] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -0,0 +1,46 @@ +// RUN: mlir-opt %s -scf-for-loop-continuous-peeling=convert-single-iter-loops-to-if=true -split-input-file | FileCheck %s + +#map = affine_map<(d0, d1)[s0] -> (s0, d0 - d1)> +func.func @foo(%ub: index) -> index { + %c0 = arith.constant 0 : index + %step =

[mlir] [libc] [clang-tools-extra] [libcxx] [clang] [llvm] [lld] [compiler-rt] [lldb] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[llvm] [libc] [lldb] [mlir] [libcxx] [clang] [clang-tools-extra] [compiler-rt] [lld] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [clang-tools-extra] [libcxx] [lld] [libc] [clang] [lldb] [llvm] [compiler-rt] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [llvm] [libc] [libcxx] [clang-tools-extra] [clang] [compiler-rt] [lldb] [lld] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -0,0 +1,46 @@ +// RUN: mlir-opt %s -scf-for-loop-continuous-peeling=convert-single-iter-loops-to-if=true -split-input-file | FileCheck %s + +#map = affine_map<(d0, d1)[s0] -> (s0, d0 - d1)> +func.func @foo(%ub: index) -> index { + %c0 = arith.constant 0 : index + %step =

[libcxx] [mlir] [lldb] [llvm] [compiler-rt] [clang] [libc] [clang-tools-extra] [lld] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[clang-tools-extra] [libc] [mlir] [clang] [lld] [lldb] [compiler-rt] [libcxx] [llvm] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-08 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,167 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[clang] [lld] [libcxx] [lldb] [mlir] [clang-tools-extra] [compiler-rt] [libc] [llvm] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,165 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[mlir] [libcxx] [lldb] [libc] [clang] [clang-tools-extra] [llvm] [lld] [compiler-rt] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
@@ -81,6 +81,47 @@ void naivelyFuseParallelOps(Region ); LogicalResult peelForLoopAndSimplifyBounds(RewriterBase , ForOp forOp, scf::ForOp ); +/// Rewrite a for loop with bounds/step that potentially do not divide the +/// iteration

[lld] [llvm] [clang] [lldb] [mlir] [compiler-rt] [clang-tools-extra] [libcxx] [libc] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
@@ -206,6 +206,34 @@ transform::LoopPeelOp::applyToOne(transform::TransformRewriter , return DiagnosedSilenceableFailure::success(); } +//===-===// +// LoopContinuousPeelOp

[lld] [libc] [compiler-rt] [libcxx] [llvm] [clang] [mlir] [clang-tools-extra] [lldb] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
@@ -147,6 +147,43 @@ def LoopPeelOp : Op { + let description = [{ +Transforms the loop into a chain of loops, with step sizes that are +powers of two and decrease exponetially across subsequent loops. matthias-springer wrote: typo

[lld] [llvm] [clang-tools-extra] [lldb] [clang] [mlir] [libcxx] [libc] [compiler-rt] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
@@ -105,6 +106,165 @@ static void specializeForLoopForUnrolling(ForOp op) { op.erase(); } +/// Create a new for loop for the remaining iterations (partiaIteration) +/// after a for loop has been peeled. This is followed by correcting the +/// loop bounds for both loops

[compiler-rt] [lld] [lldb] [libc] [llvm] [clang-tools-extra] [libcxx] [clang] [mlir] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer commented: Sorry, I dropped the ball on this review. Here a few more small comments, I'm going to do another more thorough review. https://github.com/llvm/llvm-project/pull/71555 ___ cfe-commits mailing list

[libc] [compiler-rt] [lld] [clang-tools-extra] [libcxx] [llvm] [mlir] [lldb] [clang] [MLIR][LLVM] Add Continuous Loop Peeling transform to SCF (PR #71555)

2024-01-05 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer edited https://github.com/llvm/llvm-project/pull/71555 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[mlir] [clang] [llvm] Fix unsigned typos (PR #76670)

2024-01-01 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer approved this pull request. https://github.com/llvm/llvm-project/pull/76670 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[flang] [clang-tools-extra] [llvm] [libcxx] [libc] [lld] [lldb] [clang] [compiler-rt] [libunwind] Fix clang to recognize new C23 modifiers %w and %wf when printing (PR #71771)

2023-12-01 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/71771 Sorry, this diff is unavailable. ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [MLIR][scf.parallel] Don't allow a tile size of 0 (PR #68762)

2023-10-22 Thread Matthias Springer via cfe-commits
@@ -0,0 +1,8 @@ +// RUN: mlir-opt %s -pass-pipeline='builtin.module(func.func(scf-parallel-loop-tiling{parallel-loop-tile-sizes=0,0}))' -split-input-file -verify-diagnostics + +// XFAIL: * matthias-springer wrote: I didn't know that. Sounds good!

[clang-tools-extra] [InstCombine] Simplify the pattern `a ne/eq (zext/sext (a ne/eq c))` (PR #65852)

2023-10-06 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/65852 >From d9d8bcbb98e8f5aecb9733329389d61a489bd731 Mon Sep 17 00:00:00 2001 From: Yingwei Zheng Date: Sat, 9 Sep 2023 23:07:29 +0800 Subject: [PATCH 01/10] [InstCombine] Simplify the pattern `a ne/eq (zext

[clang] [InstCombine] Simplify the pattern `a ne/eq (zext/sext (a ne/eq c))` (PR #65852)

2023-10-06 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/65852 >From d9d8bcbb98e8f5aecb9733329389d61a489bd731 Mon Sep 17 00:00:00 2001 From: Yingwei Zheng Date: Sat, 9 Sep 2023 23:07:29 +0800 Subject: [PATCH 01/10] [InstCombine] Simplify the pattern `a ne/eq (zext

[clang] [mlir][sparse] refine sparse fusion with empty tensors materialization (PR #66563)

2023-09-18 Thread Matthias Springer via cfe-commits
https://github.com/matthias-springer approved this pull request. https://github.com/llvm/llvm-project/pull/66563 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits