[llvm-branch-commits] [clang][CodeGen] Remove SimplifyCFGPass preceding RemoveTrapsPass (PR #84852)

2024-03-11 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Vitaly Buka (vitalybuka) Changes There is no performance difference after switching to `llvm.experimental.hot`. --- Full diff: https://github.com/llvm/llvm-project/pull/84852.diff 1 Files Affected: - (modified) clang/lib/CodeGen/Backen

[llvm-branch-commits] Rename `remove-traps` to `lower-builtin-hot` (PR #84853)

2024-03-11 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-transforms Author: Vitaly Buka (vitalybuka) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/84853.diff 8 Files Affected: - (modified) clang/lib/CodeGen/BackendUtil.cpp (+7-6) - (renamed) clang/test/CodeGen/lower-builtin-hot.c

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka edited https://github.com/llvm/llvm-project/pull/84850 ___ 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] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka edited https://github.com/llvm/llvm-project/pull/84850 ___ 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] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka edited https://github.com/llvm/llvm-project/pull/84850 ___ 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] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka edited https://github.com/llvm/llvm-project/pull/84851 ___ 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] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Jon Roelofs via llvm-branch-commits
@@ -56,7 +56,14 @@ using namespace CodeGen; // Experiment to make sanitizers easier to debug static llvm::cl::opt ClSanitizeDebugDeoptimization( "ubsan-unique-traps", llvm::cl::Optional, -llvm::cl::desc("Deoptimize traps for UBSAN so there is 1 trap per check"), +ll

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Jon Roelofs via llvm-branch-commits
jroelofs wrote: Neat idea! https://github.com/llvm/llvm-project/pull/84850 ___ 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] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
@@ -56,7 +56,14 @@ using namespace CodeGen; // Experiment to make sanitizers easier to debug static llvm::cl::opt ClSanitizeDebugDeoptimization( "ubsan-unique-traps", llvm::cl::Optional, -llvm::cl::desc("Deoptimize traps for UBSAN so there is 1 trap per check"), +ll

[llvm-branch-commits] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
@@ -56,7 +56,14 @@ using namespace CodeGen; // Experiment to make sanitizers easier to debug static llvm::cl::opt ClSanitizeDebugDeoptimization( "ubsan-unique-traps", llvm::cl::Optional, -llvm::cl::desc("Deoptimize traps for UBSAN so there is 1 trap per check"), +ll

[llvm-branch-commits] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka converted_to_draft https://github.com/llvm/llvm-project/pull/84851 ___ 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] [InstCombiner] Remove unused `llvm.experimental.hot()` (PR #84851)

2024-03-11 Thread Jon Roelofs via llvm-branch-commits
@@ -56,7 +56,14 @@ using namespace CodeGen; // Experiment to make sanitizers easier to debug static llvm::cl::opt ClSanitizeDebugDeoptimization( "ubsan-unique-traps", llvm::cl::Optional, -llvm::cl::desc("Deoptimize traps for UBSAN so there is 1 trap per check"), +ll

[llvm-branch-commits] [lld] [llvm] Backport fixes for ARM64EC import libraries (PR #84590)

2024-03-11 Thread Daniel Paoliello via llvm-branch-commits
dpaoliello wrote: > So your use-case is basically equivalent to using llvm-dlltool, except not > using the text parser? Yep. > If this is actually enough to make Rust targets usable, then I guess we could > consider it, but the fixes aren't structured in a way to make it obvious this > won't

[llvm-branch-commits] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka created https://github.com/llvm/llvm-project/pull/84858 Intrinsic introduced with #84850. Using intrinsic improves performance by 3% comparing to removing traps (on "test-suite/MultiSource/Benchmarks" with PGO+ThinLTO). The pass will be renamed with #84852.

[llvm-branch-commits] [clang][CodeGen] Remove SimplifyCFGPass preceding RemoveTrapsPass (PR #84852)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka updated https://github.com/llvm/llvm-project/pull/84852 ___ 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] [clang][CodeGen] Remove SimplifyCFGPass preceding RemoveTrapsPass (PR #84852)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka updated https://github.com/llvm/llvm-project/pull/84852 ___ 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] Rename `remove-traps` to `lower-builtin-hot` (PR #84853)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka updated https://github.com/llvm/llvm-project/pull/84853 ___ 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] Rename `remove-traps` to `lower-builtin-hot` (PR #84853)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka updated https://github.com/llvm/llvm-project/pull/84853 ___ 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] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Vitaly Buka (vitalybuka) Changes Intrinsic introduced with #84850. Using intrinsic improves performance by 3% comparing to removing traps (on "test-suite/MultiSource/Benchmarks" with PGO+ThinLTO). The pass will be renamed with #84852. --

[llvm-branch-commits] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread Vitaly Buka via llvm-branch-commits
https://github.com/vitalybuka edited https://github.com/llvm/llvm-project/pull/84858 ___ 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] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread Jon Roelofs via llvm-branch-commits
@@ -3805,6 +3812,12 @@ void CodeGenFunction::EmitTrapCheck(llvm::Value *Checked, SanitizerHandler CheckHandlerID) { llvm::BasicBlock *Cont = createBasicBlock("cont"); + if (ClSanitizeExpHot) { +Checked = +Builder.CreateOr(Chec

[llvm-branch-commits] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread Jon Roelofs via llvm-branch-commits
@@ -3805,6 +3812,12 @@ void CodeGenFunction::EmitTrapCheck(llvm::Value *Checked, SanitizerHandler CheckHandlerID) { llvm::BasicBlock *Cont = createBasicBlock("cont"); + if (ClSanitizeExpHot) { +Checked = +Builder.CreateOr(Chec

[llvm-branch-commits] [compiler-rt] release/18.x: Unbreak *tf builtins for hexfloat (#82208) (PR #82904)

2024-03-11 Thread Alexander Richardson via llvm-branch-commits
https://github.com/arichardson approved this pull request. https://github.com/llvm/llvm-project/pull/82904 ___ 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] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Kirill Stoimenov via llvm-branch-commits
https://github.com/kstoimenov approved this pull request. https://github.com/llvm/llvm-project/pull/84850 ___ 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] Rename `remove-traps` to `lower-builtin-hot` (PR #84853)

2024-03-11 Thread Kirill Stoimenov via llvm-branch-commits
https://github.com/kstoimenov approved this pull request. https://github.com/llvm/llvm-project/pull/84853 ___ 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] [clang] release/18.x: [Clang][LoongArch] Fix wrong return value type of __iocsrrd_h (#84100) (PR #84715)

2024-03-11 Thread Lu Weining via llvm-branch-commits
https://github.com/SixWeining approved this pull request. https://github.com/llvm/llvm-project/pull/84715 ___ 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] [clang][ubsan] Switch UBSAN optimization to `llvm.experimental.hot` (PR #84858)

2024-03-11 Thread Kirill Stoimenov via llvm-branch-commits
https://github.com/kstoimenov approved this pull request. https://github.com/llvm/llvm-project/pull/84858 ___ 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] [clang][CodeGen] Remove SimplifyCFGPass preceding RemoveTrapsPass (PR #84852)

2024-03-11 Thread Arthur Eubanks via llvm-branch-commits
https://github.com/aeubanks approved this pull request. https://github.com/llvm/llvm-project/pull/84852 ___ 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] [mlir] [mlir][Transforms] Support `replaceAllUsesWith` in dialect conversion (PR #84725)

2024-03-11 Thread Mehdi Amini via llvm-branch-commits
@@ -751,6 +731,44 @@ class UnresolvedMaterializationRewrite : public OperationRewrite { /// The original output type. This is only used for argument conversions. Type origOutputType; }; + +/// A value rewrite. +class ValueRewrite : public IRRewrite { +public: + /// Return

[llvm-branch-commits] [mlir] [mlir][Transforms] Support `replaceAllUsesWith` in dialect conversion (PR #84725)

2024-03-11 Thread Matthias Springer via llvm-branch-commits
@@ -751,6 +731,44 @@ class UnresolvedMaterializationRewrite : public OperationRewrite { /// The original output type. This is only used for argument conversions. Type origOutputType; }; + +/// A value rewrite. +class ValueRewrite : public IRRewrite { +public: + /// Return

[llvm-branch-commits] [mlir] [mlir][Transforms][NFC] Make `rewriterImpl` private in `IRRewrite` (PR #84865)

2024-03-11 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer created https://github.com/llvm/llvm-project/pull/84865 This commit makes `rewriterImpl` private in `IRRewrite`. This ensures that only the conversion value mapping and the dialect conversion configuration can be accessed from an IR rewrite object. >From

[llvm-branch-commits] [mlir] [mlir][Transforms][NFC] Make `rewriterImpl` private in `IRRewrite` (PR #84865)

2024-03-11 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-mlir @llvm/pr-subscribers-mlir-core Author: Matthias Springer (matthias-springer) Changes This commit makes `rewriterImpl` private in `IRRewrite`. This ensures that only the conversion value mapping and the dialect conversion configuration can be acces

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Matt Arsenault via llvm-branch-commits
@@ -7276,6 +7276,12 @@ void SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, setValue(&I, getValue(I.getArgOperand(0))); return; + case Intrinsic::experimental_hot: +// Default lowering to false. It's intended to be lowered as soon as profile +// i

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Arthur Eubanks via llvm-branch-commits
@@ -7276,6 +7276,12 @@ void SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, setValue(&I, getValue(I.getArgOperand(0))); return; + case Intrinsic::experimental_hot: +// Default lowering to false. It's intended to be lowered as soon as profile +// i

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Arthur Eubanks via llvm-branch-commits
aeubanks wrote: +1, this is a cool addition! https://github.com/llvm/llvm-project/pull/84850 ___ 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] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Matt Arsenault via llvm-branch-commits
@@ -7276,6 +7276,12 @@ void SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, setValue(&I, getValue(I.getArgOperand(0))); return; + case Intrinsic::experimental_hot: +// Default lowering to false. It's intended to be lowered as soon as profile +// i

[llvm-branch-commits] [IR] Introduce `llvm.experimental.hot()` (PR #84850)

2024-03-11 Thread Arthur Eubanks via llvm-branch-commits
@@ -7276,6 +7276,12 @@ void SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, setValue(&I, getValue(I.getArgOperand(0))); return; + case Intrinsic::experimental_hot: +// Default lowering to false. It's intended to be lowered as soon as profile +// i

[llvm-branch-commits] [llvm] [X86] Add missing subvector_subreg_lowering for BF16 (#83720) (PR #83834)

2024-03-11 Thread Phoebe Wang via llvm-branch-commits
https://github.com/phoebewang updated https://github.com/llvm/llvm-project/pull/83834 >From 6d03789303fe3d5c84406df29353ddf63199eb08 Mon Sep 17 00:00:00 2001 From: Phoebe Wang Date: Mon, 4 Mar 2024 18:09:41 +0800 Subject: [PATCH] [X86] Add missing subvector_subreg_lowering for BF16 (#83720) --

[llvm-branch-commits] [llvm] release/18.x: [X86] Add missing subvector_subreg_lowering for BF16 (#83720) (PR #84491)

2024-03-11 Thread Phoebe Wang via llvm-branch-commits
phoebewang wrote: Please review this patch instead https://github.com/llvm/llvm-project/pull/83834 https://github.com/llvm/llvm-project/pull/84491 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/ma

<    1   2