[llvm-branch-commits] [llvm] [ConstraintElim] Simplify `usub_with_overflow` when A uge B (PR #135785)

2025-05-15 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: Could you add an Alive2 proof showing this transform is valid given the precondition for completeness? https://github.com/llvm/llvm-project/pull/135785 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.

[llvm-branch-commits] [llvm] release/20.x: [BasicAA] Gracefully handle large LocationSize (#138528) (PR #138681)

2025-05-07 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks! https://github.com/llvm/llvm-project/pull/138681 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm

[llvm-branch-commits] [llvm] [ObjC] Support objc_claimAutoreleasedReturnValue (PR #138696)

2025-05-06 Thread Florian Hahn via llvm-branch-commits
@@ -160,10 +160,7 @@ static bool lowerObjCCall(Function &F, const char *NewFn, auto *CB = cast(U.getUser()); if (CB->getCalledFunction() != &F) { - objcarc::ARCInstKind Kind = objcarc::getAttachedARCFunctionKind(CB); - (void)Kind; - assert((Kind == objca

[llvm-branch-commits] [llvm] [ObjC] Support objc_claimAutoreleasedReturnValue (PR #138696)

2025-05-06 Thread Florian Hahn via llvm-branch-commits
@@ -9545,7 +9545,9 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI, // Do what the frontend tells us: if the rvmarker module flag is present, // emit the marker. Always emit the call regardless. // Tell the pseudo expansion using an additional boolean op.

[llvm-branch-commits] [llvm] [ObjC] Support objc_claimAutoreleasedReturnValue (PR #138696)

2025-05-06 Thread Florian Hahn via llvm-branch-commits
@@ -9545,7 +9545,9 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI, // Do what the frontend tells us: if the rvmarker module flag is present, // emit the marker. Always emit the call regardless. // Tell the pseudo expansion using an additional boolean op.

[llvm-branch-commits] [llvm] [LoopVectorizer] Bundle partial reductions inside VPMulAccumulateReductionRecipe (PR #136173)

2025-04-29 Thread Florian Hahn via llvm-branch-commits
@@ -2432,12 +2437,40 @@ static void tryToCreateAbstractReductionRecipe(VPReductionRecipe *Red, Red->replaceAllUsesWith(AbstractR); } +/// This function tries to create an abstract recipe from a partial reduction to +/// hide its mul and extends from cost estimation. +stati

[llvm-branch-commits] [llvm] release/20.x: [GlobalOpt] Do not promote malloc if there are atomic loads/stores (#137158) (PR #137179)

2025-04-26 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/137179 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] release/20.x: [LV] Fix crash when building partial reductions using types that aren't known scale factors (#136680) (PR #136863)

2025-04-26 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: Should be good to include, assuming the test failures are just missed test updates https://github.com/llvm/llvm-project/pull/136863 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lis

[llvm-branch-commits] [llvm] [ConstraintElim] Add `noundef` to several testcases (NFC) (PR #135799)

2025-04-20 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: Just checking why this was closed? https://github.com/llvm/llvm-project/pull/135799 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-

[llvm-branch-commits] [llvm] [LV] Disable epilogue vectorization for FindLastIV if start is poison. (PR #135666)

2025-04-15 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/135666 >From e21b3211d2129e3e0110bcaa75ab0b451397ef42 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Mon, 14 Apr 2025 17:16:08 +0100 Subject: [PATCH 1/2] [LV] Add tests with FindLastIV and epilogue vectorization. Te

[llvm-branch-commits] [llvm] [LV] An attempt to cherry-pick the fix PR #132691 (cherry-pick from the main branch to the release/20.x branch) (PR #135231)

2025-04-14 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: I'm not sure if it is feasible to strip the fix down, as it depends quite a few refactoring patches. For 20.x, it might be best just not enable epilogue vectorization for FindLastIV: https://github.com/llvm/llvm-project/pull/135666 https://github.com/llvm/llvm-project/pull/135231

[llvm-branch-commits] [llvm] [LV] Disable epilogue vectorization for FindLastIV if start is poison. (PR #135666)

2025-04-14 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn created https://github.com/llvm/llvm-project/pull/135666 Back-porting properly freezing of the start value during epilogue vectorization (https://github.com/llvm/llvm-project/commit/2bdc1a1337692a5743658ba6b680e5d914e684a4) is non-trivial. For the 20.x release, just di

[llvm-branch-commits] [llvm] llvm-reduce: Change function return types if function is not called (PR #134035)

2025-04-08 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/134035 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] llvm-reduce: Change function return types if function is not called (PR #134035)

2025-04-08 Thread Florian Hahn via llvm-branch-commits
@@ -55,8 +57,10 @@ static void rewriteFuncWithReturnType(Function &OldF, Value *NewRetValue) { BasicBlock::iterator NewValIt = NewRetI ? NewRetI->getIterator() : EntryBB.end(); + Type *OldRetTy = OldFuncTy->getReturnType(); + // Hack up any return values in other

[llvm-branch-commits] [llvm] llvm-reduce: Change function return types if function is not called (PR #134035)

2025-04-08 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/134035 ___ 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] SeparateConstOffsetFromGEP: Avoid looking at constant uses (PR #134685)

2025-04-07 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM ,thanks! https://github.com/llvm/llvm-project/pull/134685 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm

[llvm-branch-commits] [llvm] SCEVExpander: Don't look at uses of constants (PR #134691)

2025-04-07 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/134691 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] llvm-reduce: Fix losing fast math flags when removing arguments (PR #133408)

2025-03-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/133408 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] llvm-reduce: Filter function based on uses before removing arguments (PR #133412)

2025-03-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/133412 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] release/20.x: [LV][VPlan] Prevent calculate cost for skiped instructions in precomputeCosts(). (#127966) (PR #128879)

2025-03-01 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn milestoned https://github.com/llvm/llvm-project/pull/128879 ___ 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] release/20.x: [LAA] Consider accessed addrspace when mapping underlying obj to access. (#129087) (PR #129317)

2025-02-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/129317 ___ 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] release/20.x: [LAA] Consider accessed addrspace when mapping underlying obj to access. (#129087) (PR #129317)

2025-02-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn created https://github.com/llvm/llvm-project/pull/129317 Backport 275baedfde9dcd344bc4f11f552b046a69a4bf3f In some cases, it is possible for the same underlying object to be accessed via pointers to different address spaces. This could lead to pointers from different

[llvm-branch-commits] [llvm] release/20.x: [LAA] Consider accessed addrspace when mapping underlying obj to access. (#129087) (PR #129317)

2025-02-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn milestoned https://github.com/llvm/llvm-project/pull/129317 ___ 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] release/20.x: [LV][VPlan] Prevent calculate cost for skiped instructions in precomputeCosts(). (#127966) (PR #128694)

2025-02-26 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: I created https://github.com/llvm/llvm-project/pull/128879 with a test update https://github.com/llvm/llvm-project/pull/128694 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/l

[llvm-branch-commits] [llvm] release/20.x: [LV][VPlan] Prevent calculate cost for skiped instructions in precomputeCosts(). (#127966) (PR #128879)

2025-02-26 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/128879 >From 508d5e45a57affceeb87e69a99ebb65efde88478 Mon Sep 17 00:00:00 2001 From: Elvis Wang Date: Tue, 25 Feb 2025 11:09:09 +0800 Subject: [PATCH 1/2] [LV][VPlan] Prevent calculate cost for skiped instructions in pr

[llvm-branch-commits] [llvm] release/20.x: [LV][VPlan] Prevent calculate cost for skiped instructions in precomputeCosts(). (#127966) (PR #128879)

2025-02-26 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn created https://github.com/llvm/llvm-project/pull/128879 Backport https://github.com/llvm/llvm-project/commit/8009c1fd81ad0b6ac65724d2b134a92db48f8fbf >From 508d5e45a57affceeb87e69a99ebb65efde88478 Mon Sep 17 00:00:00 2001 From: Elvis Wang Date: Tue, 25 Feb 2025 11:0

[llvm-branch-commits] [llvm] release/20.x: [LV][VPlan] Prevent calculate cost for skiped instructions in precomputeCosts(). (#127966) (PR #128694)

2025-02-25 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. This fixes a potential crash with assertions enabled, would be good to pick to avoid assertions. https://github.com/llvm/llvm-project/pull/128694 ___ llvm-branch-commits mailing list llvm-branch-com

[llvm-branch-commits] [clang] release/20.x: [TBAA] Don't emit pointer-tbaa for void pointers. (#122116) (PR #125206)

2025-02-18 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Without the pointer-tbaa changes (which is new on by default in Clang 20), we would always generate `any pointer`. Without this fix, we will generate different tags for different `void` pointer depths. With this fix, we will generate `any pointer` again for `void` pointers. I th

[llvm-branch-commits] [llvm] release/20.x: [VPlan] Only skip expansion for SCEVUnknown if it isn't an instruction. (#125235) (PR #126718)

2025-02-11 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks although I am surprised the bot requested a review from myself. Maybe it should have asked @nikic as well, who reviewed the original PR? https://github.com/llvm/llvm-project/pull/126718 ___

[llvm-branch-commits] [llvm] release/20.x: [LoopVectorize] Fix cost model assert when vectorising calls (#125716) (PR #126209)

2025-02-07 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/126209 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi

[llvm-branch-commits] [llvm] release/20.x: [LoopVectorize] Fix cost model assert when vectorising calls (#125716) (PR #126209)

2025-02-07 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Can you push the commit to this PR? Otherwise it would probably be better to start a new PR with both commits (can use `/cherry-pick commit1 commit2` to include multiple commits automatically https://github.com/llvm/llvm-project/pull/126209

[llvm-branch-commits] [llvm] release/19.x: [Matrix] Skip already fused instructions before trying to fuse multiply. (PR #118020)

2025-01-10 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn closed https://github.com/llvm/llvm-project/pull/118020 ___ 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] [Vectorizer] fix GEPs incorrectly marked as "inbounds" (PR #120730)

2024-12-20 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/120730 ___ 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] [Vectorizer] fix GEPs incorrectly marked as "inbounds" (PR #120730)

2024-12-20 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: To clarify, this is only an issue, if we are folding the tail, as then we may compute an address that we don't in the original scalar loop, so may not be inbounds? If we don't fold the tail, it should be fine to keep the `inbounds` flag? https://github.com/

[llvm-branch-commits] [llvm] [Vectorizer] fix GEPs incorrectly marked as "inbounds" (PR #120730)

2024-12-20 Thread Florian Hahn via llvm-branch-commits
@@ -1986,10 +1986,10 @@ void VPReverseVectorPointerRecipe::execute(VPTransformState &State) { // LastLane = 1 - RunTimeVF Value *LastLane = Builder.CreateSub(ConstantInt::get(IndexTy, 1), RunTimeVF); Value *Ptr = State.get(getOperand(0), VPLane(0)); - Value *ResultPtr =

[llvm-branch-commits] [llvm] [Vectorizer] fix GEPs incorrectly marked as "inbounds" (PR #120730)

2024-12-20 Thread Florian Hahn via llvm-branch-commits
@@ -1986,10 +1986,12 @@ void VPReverseVectorPointerRecipe::execute(VPTransformState &State) { // LastLane = 1 - RunTimeVF Value *LastLane = Builder.CreateSub(ConstantInt::get(IndexTy, 1), RunTimeVF); Value *Ptr = State.get(getOperand(0), VPLane(0)); - Value *ResultPtr =

[llvm-branch-commits] [clang] [compiler-rt] [llvm] [TySan] Fix struct access with different bases (PR #108385)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Sorry I didn't mean to close this PR, looks like it happened automatically once I deleted the `users/fhahn/tysan-a-type-sanitizer-runtime-library` branch :( https://github.com/llvm/llvm-project/pull/108385 ___ llvm-branch-commits mailing

[llvm-branch-commits] [clang] [compiler-rt] [llvm] [TySan] Improved compatability for tests (PR #96507)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Sorry I didn't mean to close this PR, looks like it happened automatically once I deleted the `users/fhahn/tysan-a-type-sanitizer-runtime-library` branch :( https://github.com/llvm/llvm-project/pull/96507 ___ llvm-branch-commits mailing

[llvm-branch-commits] [clang] [compiler-rt] [llvm] [TySan] Fixed false positive when accessing offset member variables (PR #95387)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Sorry I didn't mean to close this PR, looks like it happened automatically once I deleted the `users/fhahn/tysan-a-type-sanitizer-runtime-library` branch :( https://github.com/llvm/llvm-project/pull/95387 ___ llvm-branch-commits mailing

[llvm-branch-commits] [clang] [compiler-rt] [llvm] [TySan] Fix struct access with different bases (PR #108385)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn closed https://github.com/llvm/llvm-project/pull/108385 ___ 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] [compiler-rt] [llvm] [TySan] Improved compatability for tests (PR #96507)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn closed https://github.com/llvm/llvm-project/pull/96507 ___ 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] [compiler-rt] [llvm] [TySan] Fixed false positive when accessing offset member variables (PR #95387)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn closed https://github.com/llvm/llvm-project/pull/95387 ___ 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] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: +import pi

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: +import pi

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,347 @@ +//===-- tysan.cpp -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: +import pi

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: +import pi

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: +import pi

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex fhahn wrote: Removed the conditiona

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,161 @@ +# -*- Python -*- + +import os +import platform +import re + +import lit.formats + +# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +# it's not available. +try: +import shlex + +sh_quote = shlex.quote +except: --

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/8] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [llvm] release/19.x: [Matrix] Skip already fused instructions before trying to fuse multiply. (PR #118020)

2024-12-17 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: @anemet or @francisvm , but at this point it may not be worth trying to pick this https://github.com/llvm/llvm-project/pull/118020 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mail

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-16 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,344 @@ +//===-- tysan.cpp -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-16 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,344 @@ +//===-- tysan.cpp -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-16 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,344 @@ +//===-- tysan.cpp -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-16 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/7] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-16 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: ping :) https://github.com/llvm/llvm-project/pull/76261 ___ 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] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Test failures on linux should be fixed now, they were due to debug paths using full paths on Linux and in one case a C++ struct type wasnt' de-mangled on Linux https://github.com/llvm/llvm-project/pull/76261 ___ llvm-branch-commits mailin

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/6] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/5] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/4] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: The Clang and LLVM parts are now ready to land, with just the compiler-rt bits pending approval. There are a few test failures on Linux which don't fail on macOS, will look at them today probably https://github.com/llvm/llvm-project/pull/76261

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-12 Thread Florian Hahn via llvm-branch-commits
@@ -0,0 +1,79 @@ +//===-- tysan.h -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-12-10 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 524eb555b0473bd93401297c5deba77f4dbd83fe Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH 1/2] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CM

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-12-10 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From be6f7598cc936c5d7fff722fdee50bd254a64396 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/7] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [clang] [llvm] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-12-06 Thread Florian Hahn via llvm-branch-commits
@@ -1441,8 +1441,10 @@ collectSanitizerRuntimes(const ToolChain &TC, const ArgList &Args, if (SanArgs.needsScudoRt()) { SharedRuntimes.push_back("scudo_standalone"); } -if (SanArgs.needsTsanRt()) +if (SanArgs.needsTsanRt() && SanArgs.linkRuntimes()) -

[llvm-branch-commits] [clang] [llvm] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-12-06 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/76260 ___ 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] [llvm] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-12-06 Thread Florian Hahn via llvm-branch-commits
@@ -1441,8 +1441,10 @@ collectSanitizerRuntimes(const ToolChain &TC, const ArgList &Args, if (SanArgs.needsScudoRt()) { SharedRuntimes.push_back("scudo_standalone"); } -if (SanArgs.needsTsanRt()) +if (SanArgs.needsTsanRt() && SanArgs.linkRuntimes())

[llvm-branch-commits] [clang] [llvm] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-12-06 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: > LGTM with comments addressed. (I haven't looked carefully at the non-clang > parts; this is just approval for the clang changes.) Thanks! Any chance you would be able to help with the review of the LLVM side as well? https://github.com/llvm/llvm-project/p

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
@@ -5740,7 +5740,8 @@ void CodeGenModule::EmitGlobalVarDefinition(const VarDecl *D, if (NeedsGlobalCtor || NeedsGlobalDtor) EmitCXXGlobalVarDeclInitFunc(D, GV, NeedsGlobalCtor); - SanitizerMD->reportGlobal(GV, *D, NeedsGlobalCtor); + SanitizerMD->reportGlobalToASan(GV

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From ab8d005600b99fb62d991bc63c58136576429385 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/5] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn commented: Thanks, as this depends on LLVM & compiler-rt patches, so it should only be merged once those other PRs are also approved. Motivation for the sanitizer is enabling `-fpointer-tbaa` by default (https://github.com/llvm/llvm-project/pull/117244) https://github

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
@@ -1027,6 +1027,10 @@ Sanitizers `_. See that link for examples. +- Introduced an experimental Type Sanitizer, activated by using the + -fsanitize=type flag. This sanitizer detects violations of C/C++ type-based

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/76260 ___ 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] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
@@ -102,6 +102,7 @@ FEATURE(numerical_stability_sanitizer, LangOpts.Sanitize.has(SanitizerKind::Nume FEATURE(memory_sanitizer, LangOpts.Sanitize.hasOneOf(SanitizerKind::Memory | SanitizerKind::KernelMemory)) +FEATURE(type_sanitizer, L

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
@@ -6630,7 +6631,8 @@ CodeGenModule::GetAddrOfConstantStringFromLiteral(const StringLiteral *S, if (Entry) *Entry = GV; - SanitizerMD->reportGlobal(GV, S->getStrTokenLoc(0), ""); + SanitizerMD->reportGlobalToASan(GV, S->getStrTokenLoc(0), ""); + // FIXME: Should we a

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From ab8d005600b99fb62d991bc63c58136576429385 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/4] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: The latest version also includes a new test case `compiler-rt/test/tysan/constexpr-subobject.cpp` which had a false positive (IIUC the code should have no strict aliasing violation) + a fix https://github.com/llvm/llvm-project/pull/76261 ___

[llvm-branch-commits] [clang] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 8e6e62d0dee48a696afd0c7d53d74eaccef97b5e Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 22 Nov 2024 15:01:41 + Subject: [PATCH] [TySan] A Type Sanitizer (Runtime Library) --- clang/runtime/CMakeL

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: > The clang changes are ok, but this needs some level of documentation/release > notes, which I don't see in the clang release. As this is a part of a larger > feature, do we intend to push that later? > > Also, the clang-format suggestion makes sense. Sorry for the long delay! A

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From ab8d005600b99fb62d991bc63c58136576429385 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/3] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From ab8d005600b99fb62d991bc63c58136576429385 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/2] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [compiler-rt] [TySan] Fix struct access with different bases (PR #108385)

2024-11-22 Thread Florian Hahn via llvm-branch-commits
fhahn wrote: Thanks for putting up the patch! I just rebased the patches, hopefully we can get them in soon so it is easier to submit bug-fixes iteratively. I noticed that with this patch, I am seeing segfaults when running `llvm-min-tblgen` when built with `-fsanitize=type`, but I wasn't ab

[llvm-branch-commits] [llvm] release/19.x: [ConstraintElim] Bail out on non-dedicated exits when adding exiting conditions (#116627) (PR #117137)

2024-11-21 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM to cherry pick, thanks! https://github.com/llvm/llvm-project/pull/117137 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/l

[llvm-branch-commits] [llvm] [SCEV] Add option to request use-specific SCEV for a GEP expr (WIP). (PR #91964)

2024-10-10 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/91964 >From fc6e2c85ff5dfdbae304cf05368d139096a6bd1f Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Sun, 12 May 2024 09:57:54 +0100 Subject: [PATCH] [SCEV] Add option to request use-specific SCEV for a GEP expr (WIP).

[llvm-branch-commits] [llvm] release/19.x: [IndVars] Check if WideInc available before trying to use it (PR #106892)

2024-09-03 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM looks like a safe cherry-pick https://github.com/llvm/llvm-project/pull/106892 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/list

[llvm-branch-commits] [llvm] [InstCombine] Don't look at ConstantData users (PR #103302)

2024-08-13 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn approved this pull request. LGTM, thanks for the fix https://github.com/llvm/llvm-project/pull/103302 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-

[llvm-branch-commits] [llvm] [LAA] Refine stride checks for SCEVs during dependence analysis. (#99… (PR #102201)

2024-08-06 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/102201 ___ 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] [LAA] Refine stride checks for SCEVs during dependence analysis. (#99… (PR #102201)

2024-08-06 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn milestoned https://github.com/llvm/llvm-project/pull/102201 ___ 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] [LAA] Refine stride checks for SCEVs during dependence analysis. (#99… (PR #102201)

2024-08-06 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn created https://github.com/llvm/llvm-project/pull/102201 …577) Update getDependenceDistanceStrideAndSize to reason about different combinations of strides directly and explicitly. Update getPtrStride to return 0 for invariant pointers. Then proceed by checking the st

[llvm-branch-commits] [llvm] [LV] Disable VPlan-based cost model for 19.x release. (PR #100097)

2024-07-23 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/100097 ___ 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] [LV] Disable VPlan-based cost model for 19.x release. (PR #100097)

2024-07-23 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn created https://github.com/llvm/llvm-project/pull/100097 As discussed in https://github.com/llvm/llvm-project/pull/92555 flip the default for the option added in https://github.com/llvm/llvm-project/pull/99536 to true. This restores the original behavior for the relea

[llvm-branch-commits] [llvm] [LV] Disable VPlan-based cost model for 19.x release. (PR #100097)

2024-07-23 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn milestoned https://github.com/llvm/llvm-project/pull/100097 ___ 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] [compiler-rt] [TySan] A Type Sanitizer (Runtime Library) (PR #76261)

2024-06-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76261 >From 733b3ed3f7441453889157834e0a5b6c288bf976 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 27 Jun 2024 15:48:05 +0100 Subject: [PATCH] [tysan] Add runtime support --- clang/runtime/CMakeLists.txt

[llvm-branch-commits] [clang] [TySan] A Type Sanitizer (Clang) (PR #76260)

2024-06-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/76260 >From f45d4dc65537f3664472c873062fbda2a9bed984 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Thu, 18 Apr 2024 23:01:03 +0100 Subject: [PATCH 1/2] [TySan] A Type Sanitizer (Clang) --- clang/include/clang/Basic/

[llvm-branch-commits] [compiler-rt] [TySan] Fixed false positive when accessing offset member variables (PR #95387)

2024-06-27 Thread Florian Hahn via llvm-branch-commits
@@ -221,7 +221,17 @@ __tysan_check(void *addr, int size, tysan_type_descriptor *td, int flags) { OldTDPtr -= i; OldTD = *OldTDPtr; -if (!isAliasingLegal(td, OldTD)) +tysan_type_descriptor *InternalMember = OldTD; fhahn wrote: Could you add a

[llvm-branch-commits] [llvm] [LAA] Use SCEVUse to add extra NUW flags to pointer bounds. (WIP) (PR #91962)

2024-06-25 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn updated https://github.com/llvm/llvm-project/pull/91962 >From 9a8305b0041586627b3c3c8a1dc954306767cadc Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Wed, 1 May 2024 11:03:42 +0100 Subject: [PATCH 1/3] [SCEV,LAA] Add tests to make sure scoped SCEVs don't impact other

[llvm-branch-commits] [llvm] [LAA] Use PSE::getSymbolicMaxBackedgeTakenCount. (PR #93499)

2024-05-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn reopened https://github.com/llvm/llvm-project/pull/93499 ___ 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] [LAA] Use PSE::getSymbolicMaxBackedgeTakenCount. (PR #93499)

2024-05-28 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn closed https://github.com/llvm/llvm-project/pull/93499 ___ 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] [LAA] Use PSE::getSymbolicMaxBackedgeTakenCount. (PR #93499)

2024-05-27 Thread Florian Hahn via llvm-branch-commits
https://github.com/fhahn edited https://github.com/llvm/llvm-project/pull/93499 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

  1   2   3   4   >