Page MenuHomePhabricator

uabelho (Mikael Holmén)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 3 2015, 1:10 AM (268 w, 3 d)

Recent Activity

Fri, Jan 22

uabelho added a comment to D95217: [LoopVectorize] Fix VPRecipeBuilder::createEdgeMask to correctly generate the mask.

That was my epic typo, sorry. It should have been select i1 false, i1 poison, i1 false because the buggy case was encoding the path that visits cond.false.

Great, then I'm slightly less puzzled :) Thanks!

Fri, Jan 22, 3:31 AM · Restricted Project
uabelho added a comment to D95217: [LoopVectorize] Fix VPRecipeBuilder::createEdgeMask to correctly generate the mask.

Thanks for fixing this!
I don't know this code at all, but I'm puzzled by this sentence in the summary:

The path for.body -> cond.false -> cond.end should be taken when 'select i1 true, i1 poison, i1 false' holds

Fri, Jan 22, 3:06 AM · Restricted Project

Thu, Jan 21

uabelho committed rG2b4716d6dff1: [MC] Use std::make_tuple to make some toolchains happy again (authored by uabelho).
[MC] Use std::make_tuple to make some toolchains happy again
Thu, Jan 21, 5:13 AM
uabelho added a comment to rG8871a4b4cab8: [Constant] Update ConstantVector::get to return poison if all input elems are….

I wrote a PR about this:
https://bugs.llvm.org/show_bug.cgi?id=48832

Thu, Jan 21, 1:13 AM
uabelho added a comment to rG8871a4b4cab8: [Constant] Update ConstantVector::get to return poison if all input elems are….

I've been able to reproduce the problem I see for an in-tree architecture.
So with

opt -mtriple=s390x-unknown-linux -mcpu=z13 -loop-vectorize -S -o - bbi-51947.ll

I get

store <4 x i32> poison, <4 x i32>* %6, align 1

but before this patch I got

store <4 x i32> zeroinitializer, <4 x i32>* %6, align 1

The input is

%arrayt = type [64 x i32]
Thu, Jan 21, 1:06 AM

Wed, Jan 20

uabelho added a comment to rG8871a4b4cab8: [Constant] Update ConstantVector::get to return poison if all input elems are….

I'm not sure what happens yet, but with this patch I'm seeing a miscompile.
Diffs start occuring after the loop vectorizer. Previously we got this store

store <4 x i32> zeroinitializer, <4 x i32>* %8, align 1, !dbg !16

but now we instead get this:

store <4 x i32> poison, <4 x i32>* %8, align 1, !dbg !16

Are you aware of any problems?

Wed, Jan 20, 9:14 AM
uabelho committed rG2aeaaf841b58: [GlobalISel] Add missing operand update when copy is required (authored by ehjogab).
[GlobalISel] Add missing operand update when copy is required
Wed, Jan 20, 1:34 AM
uabelho closed D91244: [GlobalISel] Add missing operand update when copy is required.
Wed, Jan 20, 1:34 AM · Restricted Project
uabelho added a comment to D91244: [GlobalISel] Add missing operand update when copy is required.

I'll submit this for @ehjogab in a little bit.

Wed, Jan 20, 1:12 AM · Restricted Project

Thu, Jan 7

uabelho added a comment to rG2d07414ee5f7: [SimplifyCFG] Teach simplifyUnreachable() to preserve DomTree.
Thu, Jan 7, 4:25 AM

Tue, Jan 5

uabelho added a comment to rG2d07414ee5f7: [SimplifyCFG] Teach simplifyUnreachable() to preserve DomTree.

I see a failed assertion with this patch if I run

opt -o /dev/null bbi-51466.ll -simplifycfg

on the input

Tue, Jan 5, 2:40 AM
uabelho added a comment to D93945: [GlobalISel][TableGen] Fix ConstrainOperandRC bug.

I pushed this for @ehjogab

Tue, Jan 5, 12:39 AM · Restricted Project
uabelho committed rG3c1d015edc75: [GlobalISel][TableGen] Fix ConstrainOperandRC bug (authored by ehjogab).
[GlobalISel][TableGen] Fix ConstrainOperandRC bug
Tue, Jan 5, 12:38 AM
uabelho closed D93945: [GlobalISel][TableGen] Fix ConstrainOperandRC bug.
Tue, Jan 5, 12:38 AM · Restricted Project

Mon, Jan 4

uabelho added a comment to rGb21840751278: [ValueTracking] Handle more non-trivial conditions in isKnownNonZero().

Hi @nikic,

I've seen a miscompile for my OOT target with this patch. Unfortunately I haven't gone to the bottom with it yet (and I don't think I will until after new years), so I'm not sure what the problem is exactly, but I think that AA comes to the conclusion that a read and a write to the exact same location doesn't alias, and then things go wrong. Are you aware of any problems?

@uableho: Our problem seem to be related to a bad DominatorTree (exposed by this patch). If I do

@@ -2178,8 +2186,14 @@ static bool isKnownNonNullFromDominatingCondition(const Value *V,
           BasicBlock *NonNullSuccessor =
               BI->getSuccessor(NonNullIfTrue ? 0 : 1);
           BasicBlockEdge Edge(BI->getParent(), NonNullSuccessor);
-          if (Edge.isSingleEdge() && DT->dominates(Edge, CtxI->getParent()))
+          DominatorTree DT2(*NonNullSuccessor->getParent());
+          if (Edge.isSingleEdge() && DT2.dominates(Edge, CtxI->getParent())) {

to force a recalculation of DT then the miscompile is gone. Ouch, that could be a much bigger problem than I expected here. I haven't had time to figure out why the DT is incorrect (I assume that since this is deep down in the backend when doing misched the DomTree (on IR level) should just be preserved by the PM, or recalculated when swapping functions, but I don't really know the details).

Mon, Jan 4, 4:41 AM

Wed, Dec 30

uabelho added inline comments to D91927: [X86] Add x86_amx type for intel AMX..
Wed, Dec 30, 6:48 AM · Restricted Project, Restricted Project
uabelho added a comment to rGb21840751278: [ValueTracking] Handle more non-trivial conditions in isKnownNonZero().

I've seen a miscompile for my OOT target with this patch. Unfortunately I haven't gone to the bottom with it yet (and I don't think I will until after new years), so I'm not sure what the problem is exactly, but I think that AA comes to the conclusion that a read and a write to the exact same location doesn't alias, and then things go wrong. Are you aware of any problems?

Wed, Dec 30, 6:30 AM
uabelho added inline comments to D91927: [X86] Add x86_amx type for intel AMX..
Wed, Dec 30, 6:11 AM · Restricted Project, Restricted Project

Tue, Dec 29

uabelho added a comment to rGd4ccef38d0bb: [InstCombine] 'hoist xor-by-constant from xor-by-value': ignore constantexprs.

Thank you for the reproducer!

Hi,

I'm still

Hm, have you previously already posted the original reproducer and i missed it?

Oh, no I haven't but I saw someone else reporting a hang a think, and saw this fix and then just noticed this fix didn't solve my hang.
Sorry for the confusion.

Np. Fixed in 374ef57f1379d3d3bbe5bfb19f1d2ea7e79b6db9.

Tue, Dec 29, 5:54 AM
uabelho added a comment to rGd4ccef38d0bb: [InstCombine] 'hoist xor-by-constant from xor-by-value': ignore constantexprs.

Hi,

I'm still

Hm, have you previously already posted the original reproducer and i missed it?

Tue, Dec 29, 3:07 AM
uabelho added a comment to rGd4ccef38d0bb: [InstCombine] 'hoist xor-by-constant from xor-by-value': ignore constantexprs.

I'm still seeing a case where instcombine hangs after d9ebaeeb468 "[InstCombine] Hoist xor-by-constant from xor-by-value", even with this fix.

Tue, Dec 29, 2:11 AM

Mon, Dec 28

uabelho added a comment to D92726: Teach isKnownNonEqual how to recurse through invertable multiplies.
Mon, Dec 28, 10:30 PM · Restricted Project
uabelho added a comment to D92726: Teach isKnownNonEqual how to recurse through invertable multiplies.

The following starts failing with this commit:

opt -S -o /dev/null bbi-51071.ll -early-cse

With bbi-51071.ll being

@f.a = external global i16, align 1
Mon, Dec 28, 9:10 AM · Restricted Project
uabelho added a comment to D93685: [MIRPrinter] Fix incorrect output of unnamed stack names.

I submitted this for @ehjogab

Mon, Dec 28, 9:04 AM · Restricted Project
uabelho committed rGb9a7c89d4322: [MIRPrinter] Fix incorrect output of unnamed stack names (authored by ehjogab).
[MIRPrinter] Fix incorrect output of unnamed stack names
Mon, Dec 28, 9:02 AM
uabelho closed D93685: [MIRPrinter] Fix incorrect output of unnamed stack names.
Mon, Dec 28, 9:02 AM · Restricted Project
uabelho added a comment to D91520: [MachO] Fix enum-int mismatch warning.

I submitted this for @ehjogab

Mon, Dec 28, 8:40 AM · Restricted Project
uabelho committed rG496fb70b141c: [MachO] Fix enum-int mismatch warning (authored by ehjogab).
[MachO] Fix enum-int mismatch warning
Mon, Dec 28, 8:40 AM
uabelho closed D91520: [MachO] Fix enum-int mismatch warning.
Mon, Dec 28, 8:40 AM · Restricted Project

Dec 10 2020

uabelho added a comment to D82005: [InstCombine] Replace selects with Phis.

This should handle the test shown: 4f051fe

Dec 10 2020, 10:53 PM · Restricted Project
uabelho added a comment to D82005: [InstCombine] Replace selects with Phis.

We've noticed a crash that started occuring with this patch.
Running

Dec 10 2020, 3:53 AM · Restricted Project

Nov 30 2020

uabelho added a comment to D92270: [ConstantFold] Fold more operations to poison.

Should langref also be updated to describe this? Or does it already?
I just found this
"An instruction that depends on a poison value, produces a poison value itself."
here
http://llvm.org/docs/LangRef.html#poison-values

I think "Values other than phi nodes and select instructions depend on their operands." was supposed to say that. :)

Nov 30 2020, 6:09 AM · Restricted Project, Restricted Project
uabelho added a comment to D92270: [ConstantFold] Fold more operations to poison.

Hi,

It seems it is related to two optimizations:
(1) select i1 x, true, y -> or i1 x, y
(2) or i1 x, poison -> poison

Semantically, the first one is broken. It needs to freeze y. But, it will introduce a lot of freeze instructions. The clang patches that introduce noundef to function arguments is still ongoing.
Another workaround is to weaken (2) to or i1 x, poison -> x. This fixes the miscompilation; I'll push a commit that does this.

Nov 30 2020, 5:27 AM · Restricted Project, Restricted Project
uabelho added a comment to D92270: [ConstantFold] Fold more operations to poison.

I'm seeing a miscompile with this patch. I'm not very good at the semantic differences between undef and poison so I don't know really where it goes wrong.

Nov 30 2020, 4:25 AM · Restricted Project, Restricted Project

Nov 26 2020

uabelho added a comment to D54749: Saturating float to int casts..

Another little ping.

Nov 26 2020, 12:32 AM · Restricted Project

Nov 23 2020

uabelho added a comment to D90829: [GlobalISel][TableGen] Fix seg fault for zero instruction.

I submitted this for @ehjogab

Nov 23 2020, 10:50 PM · Restricted Project
uabelho committed rG5e9e335a2470: [GlobalISel][TableGen] Fix seg fault for zero instruction (authored by ehjogab).
[GlobalISel][TableGen] Fix seg fault for zero instruction
Nov 23 2020, 10:49 PM
uabelho closed D90829: [GlobalISel][TableGen] Fix seg fault for zero instruction.
Nov 23 2020, 10:49 PM · Restricted Project
uabelho committed rG410c150abb20: [test] Update PR reference in testcase [NFC] (authored by uabelho).
[test] Update PR reference in testcase [NFC]
Nov 23 2020, 6:13 AM
uabelho committed rGfaf848ac3218: [Inline] Fix in handling of ptrtoint in InlineCost (authored by uabelho).
[Inline] Fix in handling of ptrtoint in InlineCost
Nov 23 2020, 5:34 AM
uabelho closed D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 23 2020, 5:34 AM · Restricted Project
uabelho added a comment to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.

LGTM

Nov 23 2020, 4:18 AM · Restricted Project

Nov 19 2020

uabelho added a comment to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.

Thanks for looking into this!

Should places where we use ConstantOffsetPtrs to determine if instructions may be simplified, like CallAnalyzer::visitCmpInst, be also adjusted? Or does the ContantExpr::getICmp call take care of different-sized constant ints?

I don't know. When I debugged PR49890 I just realized that the size mismatch was introduced with the ptrtoint, so I tried doing something about that instead of trying to handle it at every use of ConstantOffsetPtrs. And then I realized that fix seems to have fixed PR38500 as well.

I think it would be good to understand that, as part of this patch, as changing that may have performance implications.

Nov 19 2020, 6:42 AM · Restricted Project
uabelho added inline comments to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 19 2020, 6:29 AM · Restricted Project
uabelho updated the diff for D90610: [Inline] Fix in handling of ptrtoint in InlineCost.

Do the easiest fix.

Nov 19 2020, 6:22 AM · Restricted Project

Nov 18 2020

uabelho added a comment to D91383: [BasicAA] Make alias GEP positive offset handling symmetric.

@uabelho Thanks for the report! I have reverted the assert in https://github.com/llvm/llvm-project/commit/85ccdcaa502ee2c478f2d0ba2b1e217117b69032. We'll have to fix this asymmetric in phi-phi aliasing before re-enabling it.

Nov 18 2020, 9:58 PM · Restricted Project

Nov 17 2020

uabelho added a comment to D91383: [BasicAA] Make alias GEP positive offset handling symmetric.

The following hits an assertion with this patch. If I run

opt -S -o - aa.ll -aa-eval
Nov 17 2020, 11:46 PM · Restricted Project
uabelho added a comment to D88735: [SLP] Also try to vectorize incoming values of PHIs ..

Thanks!

Nov 17 2020, 10:38 PM · Restricted Project

Nov 16 2020

uabelho added inline comments to D91059: [LoopVectorizer] NFCI: Calculate register usage based on TLI.getTypeLegalizationCost..
Nov 16 2020, 11:50 PM · Restricted Project
uabelho added a comment to D88735: [SLP] Also try to vectorize incoming values of PHIs ..

Hi!
This seems to fail if one of the predecessors to the PHI block is dead and contain weird stuff e.g. like this:

define void @foo() {
bb.0:
  br label %bb.1
Nov 16 2020, 4:48 AM · Restricted Project

Nov 12 2020

uabelho added inline comments to D91046: [CGSCC][Inliner] Handle new non-trivial edges in updateCGAndAnalysisManagerForPass.
Nov 12 2020, 10:16 PM · Restricted Project
uabelho added a comment to D91083: [AsmPrinter] fix -disable-debug-info option.

Thanks! The problem I saw is fixed with this patch.

Nov 12 2020, 12:45 AM · Restricted Project

Nov 11 2020

uabelho added a comment to D91059: [LoopVectorizer] NFCI: Calculate register usage based on TLI.getTypeLegalizationCost..

I hit an assertion with this patch:
opt: ../lib/IR/Type.cpp:620: static llvm::FixedVectorType *llvm::FixedVectorType::get(llvm::Type *, unsigned int): Assertion `isValidElementType(ElementType) && "Element type of a VectorType must " "be an integer, floating point, or " "pointer type."' failed.

Nov 11 2020, 6:22 AM · Restricted Project

Nov 4 2020

uabelho added a comment to D87163: [DSE] Switch to MemorySSA-backed DSE by default..

Hi!

I found a new problem after this was turned on again in 51ff04567b2f.

Nov 4 2020, 6:13 AM · Restricted Project, Restricted Project
uabelho added a comment to D87163: [DSE] Switch to MemorySSA-backed DSE by default..

I found a new problem after this was turned on again in 51ff04567b2f.
With

opt -S -o - bbi-49235.ll -memoryssa -gvn -dse -verify-memoryssa

I hit

opt: ../lib/Analysis/MemorySSA.cpp:2063: void llvm::MemorySSA::verifyOrderingDominationAndDefUses(llvm::Function &) const: Assertion `&*ALI == *AAI && "Not the same accesses in the same order"' failed.

with bbi-49235.ll being

define void @k() {
entry:
  %tobool = icmp ne i16 1, 0
  %0 = xor i1 %tobool, true
  call void @llvm.assume(i1 %0)
  call void @f()
  ret void
}
Nov 4 2020, 5:58 AM · Restricted Project, Restricted Project
uabelho added a comment to D74158: make the AsmPrinterHandler array public.

Bah, I meant to post my comment in https://reviews.llvm.org/D89613. I did now.

Nov 4 2020, 4:44 AM · Restricted Project
uabelho added a comment to D89613: make the AsmPrinterHandler array public.

Is this commit supposed to change the output from llc?

Nov 4 2020, 4:44 AM · Restricted Project
uabelho added a comment to D74158: make the AsmPrinterHandler array public.

Is this commit supposed to change the output from llc?

Nov 4 2020, 4:42 AM · Restricted Project

Nov 3 2020

uabelho added inline comments to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 3 2020, 5:44 AM · Restricted Project
uabelho added a comment to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.

Thanks for looking into this!

Should places where we use ConstantOffsetPtrs to determine if instructions may be simplified, like CallAnalyzer::visitCmpInst, be also adjusted? Or does the ContantExpr::getICmp call take care of different-sized constant ints?

Nov 3 2020, 12:10 AM · Restricted Project
uabelho added inline comments to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 3 2020, 12:07 AM · Restricted Project
uabelho updated the diff for D90610: [Inline] Fix in handling of ptrtoint in InlineCost.

Changed names of the testcase functions and changed to zext in visitPtrToInt.

Nov 3 2020, 12:04 AM · Restricted Project

Nov 2 2020

uabelho added inline comments to D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 2 2020, 7:19 AM · Restricted Project
uabelho requested review of D90610: [Inline] Fix in handling of ptrtoint in InlineCost.
Nov 2 2020, 7:17 AM · Restricted Project

Oct 28 2020

uabelho added a comment to D87528: Enable '#pragma STDC FENV_ACCESS' in frontend.

We got similar problems for our downstream target. We worked around that by bailing out early in PragmaSTDC_FENV_ACCESSHandler::HandlePragma for our target but perhaps one could check hasStrictFP() instead and ignore the pragma if that is false?

Oct 28 2020, 12:13 AM · Restricted Project

Oct 26 2020

uabelho added a comment to D54749: Saturating float to int casts..

Are there any outstanding issues left or is this perhaps good enough to be submitted?

Oct 26 2020, 11:40 PM · Restricted Project

Oct 23 2020

uabelho added a comment to D89978: Fix SROA with a PHI mergig values from a same block.

I don't know what the best fix is, but I've verified that this patch solves the problem I saw and I haven't seen anything weird pop up with the patch in some limited testing I've done with it.
Thanks!

Oct 23 2020, 1:52 AM · Restricted Project

Oct 22 2020

uabelho added a comment to D79218: Process gep (phi ptr1, ptr2) in SROA.

https://bugs.llvm.org/show_bug.cgi?id=47945 started happening with this patch.

Oct 22 2020, 8:09 AM · Restricted Project

Oct 16 2020

uabelho committed rGe5e4653255ff: Remove dead variable to silence compiler warning [NFC] (authored by uabelho).
Remove dead variable to silence compiler warning [NFC]
Oct 16 2020, 12:36 AM

Oct 14 2020

uabelho added inline comments to D86078: [AArch64] Improved lowering for saturating float to int..
Oct 14 2020, 12:39 AM · Restricted Project

Oct 13 2020

uabelho added a comment to D88806: [SCEV] Model ptrtoint(SCEVUnknown) cast not as unknown, but as zext/trunc/self of SCEVUnknown.

Perfect, thank you. That's the test case i was missing. Will fix in a moment.

Fixed in rG7324616660fc0995fa8c166e3c392361222d5dbc, thank you for the reproducer!

Oct 13 2020, 4:35 AM · Restricted Project
uabelho added a comment to D88806: [SCEV] Model ptrtoint(SCEVUnknown) cast not as unknown, but as zext/trunc/self of SCEVUnknown.

I got my share of doom too, even after the fix.
So

opt -S -o - bbi-48445.ll -indvars

crashes with

opt: ../lib/IR/Constants.cpp:1896: static llvm::Constant *llvm::ConstantExpr::getZExt(llvm::Constant *, llvm::Type *, bool): Assertion `C->getType()->isIntOrIntVectorTy() && "ZEXt operand must be integral"' failed.

for the following input:

Oct 13 2020, 1:04 AM · Restricted Project

Oct 7 2020

uabelho added a comment to D88167: [LoopDeletion] Forget loop before setting values to undef.

I just wrote
https://bugs.llvm.org/show_bug.cgi?id=47753
about a failure that starts occuring with this patch.

Oct 7 2020, 5:14 AM · Restricted Project

Oct 6 2020

uabelho accepted D88876: [AMDGPU] Fix gcc warnings.

Thanks!

Oct 6 2020, 1:54 AM · Restricted Project
uabelho added inline comments to D86270: [AMDGPU] Use tablegen for argument indices.
Oct 6 2020, 12:00 AM · Restricted Project

Oct 5 2020

uabelho added a comment to D88487: [TableGen][GlobalISel] add handling of nested *_SUBREG.

I submitted for ehjogab.

Oct 5 2020, 1:53 AM · Restricted Project
uabelho committed rG64b879ae2a8a: [TableGen][GlobalISel] add handling of nested *_SUBREG (authored by ehjogab).
[TableGen][GlobalISel] add handling of nested *_SUBREG
Oct 5 2020, 1:53 AM
uabelho closed D88487: [TableGen][GlobalISel] add handling of nested *_SUBREG.
Oct 5 2020, 1:52 AM · Restricted Project

Oct 1 2020

uabelho added a comment to D88454: [CMake] Use -isystem flag to access libc++ headers.

Hi!
I don't understand why, but with this commit I start seeing several warnings like this when compiling builtins:

Oct 1 2020, 9:29 PM · Restricted Project, Restricted Project

Sep 30 2020

uabelho added a comment to D86511: [GlobalISel] Fix incorrect setting of ValNo when splitting.

I submited this for ehjogab

Sep 30 2020, 7:11 AM · Restricted Project
uabelho committed rG43d239d0fadb: [GlobalISel] Fix incorrect setting of ValNo when splitting (authored by ehjogab).
[GlobalISel] Fix incorrect setting of ValNo when splitting
Sep 30 2020, 7:09 AM
uabelho closed D86511: [GlobalISel] Fix incorrect setting of ValNo when splitting.
Sep 30 2020, 7:09 AM · Restricted Project

Sep 24 2020

uabelho committed rGa1217620a87f: [unittests] Use std::make_tuple to make some toolchains happy again (authored by uabelho).
[unittests] Use std::make_tuple to make some toolchains happy again
Sep 24 2020, 2:26 AM

Sep 18 2020

uabelho added a comment to D87149: [InstCombine] erase instructions leading up to unreachable.

We've run into a case where instcombine crashes with this patch:

opt -o /dev/null bbi-47401.ll -instcombine

on

@c = external global i16*, align 1
Sep 18 2020, 12:32 AM · Restricted Project

Sep 17 2020

uabelho committed rGbb037c2a7625: [ConstraintSystem] Remove local variable that is set but not read [NFC] (authored by uabelho).
[ConstraintSystem] Remove local variable that is set but not read [NFC]
Sep 17 2020, 5:29 AM

Sep 14 2020

uabelho added a comment to D87163: [DSE] Switch to MemorySSA-backed DSE by default..

Hi,

I'm seeing what I think is a miscompile with this:

Thanks for the reproducer. We have to be more careful around pointers that may reference multiple locations in memory. I pushed f715d81c9df3 which limits elimination to stores that only reference a single location (or are in the same BB). The check is conservative and can be improved in the future, but the impact on the number of stores eliminated seems very low in practice. It would be great if you could check if that fixes the original reproducer.

Great! I'll check and get back during the day.

Sep 14 2020, 5:52 AM · Restricted Project, Restricted Project
uabelho added a comment to D87163: [DSE] Switch to MemorySSA-backed DSE by default..

Hi,

I'm seeing what I think is a miscompile with this:

Thanks for the reproducer. We have to be more careful around pointers that may reference multiple locations in memory. I pushed f715d81c9df3 which limits elimination to stores that only reference a single location (or are in the same BB). The check is conservative and can be improved in the future, but the impact on the number of stores eliminated seems very low in practice. It would be great if you could check if that fixes the original reproducer.

Sep 14 2020, 4:50 AM · Restricted Project, Restricted Project
uabelho added a comment to D86689: [DAGCombine] Don't delete the node if it has uses immediately.

I wrote https://bugs.llvm.org/show_bug.cgi?id=47517 about a crash that starts happening with this patch.

Sep 14 2020, 4:20 AM · Restricted Project
uabelho added a comment to D87163: [DSE] Switch to MemorySSA-backed DSE by default..

I'm seeing what I think is a miscompile with this:

opt -S -dse -o - dse.ll

on

Sep 14 2020, 12:18 AM · Restricted Project, Restricted Project

Sep 7 2020

uabelho committed rGea795304ec07: [PowerPC] Add parentheses to silence gcc warning (authored by uabelho).
[PowerPC] Add parentheses to silence gcc warning
Sep 7 2020, 11:41 PM

Sep 4 2020

uabelho added a comment to D86534: [GVN] Preserve MemorySSA if it is available..

The following crashes for me with this patch
opt -memoryssa -gvn -early-cse-memssa -S -o - foo.ll

Sep 4 2020, 3:44 AM · Restricted Project

Sep 3 2020

uabelho added inline comments to D86589: (Expensive) Check for Loop, SCC and Region pass return status.
Sep 3 2020, 9:37 AM · Restricted Project
uabelho added inline comments to D86589: (Expensive) Check for Loop, SCC and Region pass return status.
Sep 3 2020, 3:03 AM · Restricted Project

Sep 2 2020

uabelho added a comment to D86839: [CMake] Remove -Wl,-allow-shlib-undefined which was added in rL221530.

We ran into problems with this commit.

Sep 2 2020, 5:36 AM · Restricted Project
uabelho added inline comments to D86738: AMDGPU/GlobalISel: Implement computeKnownBits for groupstaticsize.
Sep 2 2020, 2:42 AM · Restricted Project

Sep 1 2020

uabelho added a comment to D85971: [IndVarSimplify] Fix Modified status for removal of overflow intrinsics.

I wrote
https://bugs.llvm.org/show_bug.cgi?id=47381
about a similar problem also caused by the missing setting of Changed in SimplifyIndvar::eliminateOverflowIntrinsic.

Sep 1 2020, 4:21 AM · Restricted Project

Aug 28 2020

uabelho added a comment to D71538: [SCEVExpander] Preserve LCSSA directly..

We ran into a problem with this patch. I wrote https://bugs.llvm.org/show_bug.cgi?id=47343 about it.

Aug 28 2020, 4:12 AM · Restricted Project

Aug 26 2020

uabelho added a comment to D86547: [compiler-rt][builtins] Use c[tl]zsi macro instead of __builtin_c[tl]z.

We've run with changes like this for a long time to make the routines work for our out of tree target where int is also 16 bits so thumbs up from me even if I'm not sure I can formally LGTM it.

Aug 26 2020, 2:09 AM · Restricted Project

Aug 25 2020

uabelho committed rG1c39ffecd84a: [libunwind] Fix warning when building without frameheader cache (authored by uabelho).
[libunwind] Fix warning when building without frameheader cache
Aug 25 2020, 4:02 AM
uabelho committed rG59e1fbe55784: [PowerPC] Fix gcc warning [NFC] (authored by uabelho).
[PowerPC] Fix gcc warning [NFC]
Aug 25 2020, 4:02 AM