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 (168 w, 2 d)

Recent Activity

Tue, Feb 19

uabelho committed rG2d6bb13443d8: [RegAllocGreedy] Take last chance recoloring into account in split and assign (authored by uabelho).
[RegAllocGreedy] Take last chance recoloring into account in split and assign
Tue, Feb 19, 11:14 PM
uabelho committed rL354439: [RegAllocGreedy] Take last chance recoloring into account in split and assign.
[RegAllocGreedy] Take last chance recoloring into account in split and assign
Tue, Feb 19, 11:14 PM
uabelho closed D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.
Tue, Feb 19, 11:14 PM · Restricted Project
uabelho added a comment to D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.

Thanks!

Tue, Feb 19, 11:13 PM · Restricted Project
uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

I do see the point of ensuring the sanity of StackProtector, and I'm not opposed to patching that up (as you have done here in this patch); however, I do see benefit in preventing the dead code from reaching the StackProtector in the first place. I'm not sure how others feel.

Tue, Feb 19, 6:01 AM

Mon, Feb 18

uabelho added a comment to D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..

Hi!

Nice to see this fix get in because we've seen the need for such a change for our out-of-tree target as well.

However, we've added a FixedRegisters argument to tryAssign and trySplit too.
It was a while since we did that change locally but would it make sense to push that into trunk too?

Mon, Feb 18, 11:39 PM · Restricted Project
uabelho created D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.
Mon, Feb 18, 11:38 PM · Restricted Project
uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Ping!

Mon, Feb 18, 6:46 AM

Thu, Feb 14

uabelho added a comment to D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..

Nice to see this fix get in because we've seen the need for such a change for our out-of-tree target as well.

Thu, Feb 14, 12:47 AM · Restricted Project

Wed, Feb 13

uabelho added a comment to D58215: Refine ArgPromotion metadata handling.

Thanks for fixing!

Wed, Feb 13, 11:51 PM · Restricted Project
uabelho added a watcher for debug-info: uabelho.
Wed, Feb 13, 6:19 AM

Wed, Feb 6

uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Hi @uabelho

The test case in your patch definitely causes a problem, but that's because the -start-before/-stop-after is used. If I run that same test through llc, the UnreachableBlockElim pass kicks-in and drops the dead code.
I took a look at the code in your Janurary 24th comment. I was unable to get the same dead block to surface, but most likely I had the wrong flag set. How did you build the sample in that comment?

Wed, Feb 6, 11:03 PM
uabelho updated the diff for D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Managed to drop the new testcase when I rebased >.<

Wed, Feb 6, 4:52 AM
uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Is this ok or is it better to go down the CGP route instead? If so, can we really guarantee that all dead code is always removed when we get to StackProtector so we don't end up with this problem anyway?

Wed, Feb 6, 4:47 AM
uabelho updated the diff for D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Rebased.

Wed, Feb 6, 4:44 AM
uabelho added a comment to D57221: [LoopSimplifyCFG] Change logic of dead loops removal to avoid hitting asserts.

Aside from refactoring that we can make as follow-up if needed (yet I don't really think it does), does it look OK? :)

Wed, Feb 6, 4:08 AM · Restricted Project

Thu, Jan 31

Herald added a project to D57491: [DAGCombine] Avoid CombineZExtLogicopShiftLoad if there is free ZEXT: Restricted Project.

Thanks!

Thu, Jan 31, 11:01 PM · Restricted Project

Wed, Jan 30

uabelho added a comment to D57444: [DebugInfo] LLVM ERROR: Broken function found, while removing Debug Intrinsics.

The fix makes sense to me but please let others have an opinion too.

Wed, Jan 30, 4:28 AM · Restricted Project, debug-info
uabelho added inline comments to D57221: [LoopSimplifyCFG] Change logic of dead loops removal to avoid hitting asserts.
Wed, Jan 30, 12:08 AM · Restricted Project

Tue, Jan 29

uabelho added a comment to D57128: Add --unwindlib=[libgcc|compiler-rt] to parallel --rtlib=.

We're having issues with this as well, we don't have any libunwind so this change causes
/usr/bin/ld: cannot find -lunwind

Tue, Jan 29, 6:31 AM
uabelho added inline comments to D57221: [LoopSimplifyCFG] Change logic of dead loops removal to avoid hitting asserts.
Tue, Jan 29, 3:44 AM · Restricted Project

Mon, Jan 28

uabelho committed rL352456: Remove unused variable to silence compiler warning.
Remove unused variable to silence compiler warning
Mon, Jan 28, 10:53 PM
uabelho committed rC352456: Remove unused variable to silence compiler warning.
Remove unused variable to silence compiler warning
Mon, Jan 28, 10:53 PM
uabelho committed rL352455: Fix compiler warning when using clang 3.6.0.
Fix compiler warning when using clang 3.6.0
Mon, Jan 28, 10:52 PM
uabelho added inline comments to D54438: [analyzer] Reimplement dependencies between checkers.
Mon, Jan 28, 5:50 AM
uabelho added inline comments to D54438: [analyzer] Reimplement dependencies between checkers.
Mon, Jan 28, 5:22 AM

Fri, Jan 25

uabelho resigned from D57163: [DebugInfo][DAG] PR40427: Avoid accidentally re-ordering DBG_VALUEs due to assumptions about inst creation.

I don't know this code at all.

Fri, Jan 25, 3:41 AM
uabelho added a comment to D57221: [LoopSimplifyCFG] Change logic of dead loops removal to avoid hitting asserts.

It solves the problem I saw, thanks!

Fri, Jan 25, 2:12 AM · Restricted Project

Thu, Jan 24

uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.
In D57149#1369777, @rnk wrote:

An alternative way to handle this would be to remove unreachable code. I'm surprised unreachable code reaches this pass in a normal pipeline. I thought CGP removed it in normal operation, even at O0. However, removing unreachable code might invalidate the domtree (unless our utility for that updates it?).

Thu, Jan 24, 10:30 PM
uabelho updated the diff for D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Fixed typo, reformulated a piece of a comment.

Thu, Jan 24, 10:23 PM
uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Not sure who should review this, I added the three last persons that I think did non-NFC changes to StackProtector.cpp.

Thu, Jan 24, 5:26 AM
uabelho added a comment to D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.

Is this a proper way of solving the problem? Is it ok to require DT?

Thu, Jan 24, 5:26 AM
uabelho created D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.
Thu, Jan 24, 5:24 AM

Jan 22 2019

uabelho added a comment to D57018: Fix lvm::is_trivially_copyable portability issues.

@uabelho top-of-tree should be fine now.

Jan 22 2019, 10:08 PM
uabelho added a comment to D57018: Fix lvm::is_trivially_copyable portability issues.

Just saw build-bots failed the same way

Jan 22 2019, 6:09 AM
uabelho added a comment to D57018: Fix lvm::is_trivially_copyable portability issues.

We've been having issues with std::is_trivially_copyable too, and it seems not even this patch solves the problems for us.

Jan 22 2019, 6:09 AM

Jan 2 2019

uabelho resigned from D56144: [LoopSimplifyCFG] Form LCSSA when a parent loop becomes a sibling.

The problem I saw goes away with this patch and I haven't seen any new failures with the limited testing I've done on the patch. Thanks!
I don't know this code though, so I don't know if this is the way the problem should be solved.

Jan 2 2019, 2:36 AM

Dec 12 2018

uabelho added a comment to D55519: Reuse code from CGDebugInfo::getOrCreateFile() when creating the file for the DICompileUnit.

Great, thanks!

Dec 12 2018, 12:30 AM · debug-info

Dec 11 2018

uabelho committed rL348913: Fix compiler warning about unused variable [NFC].
Fix compiler warning about unused variable [NFC]
Dec 11 2018, 10:38 PM

Dec 10 2018

uabelho added a comment to D55519: Reuse code from CGDebugInfo::getOrCreateFile() when creating the file for the DICompileUnit.

If I change what I think is two typos, then the patch compiles for me and solves the issue I had.

Dec 10 2018, 10:48 PM · debug-info
uabelho added a comment to D55085: Avoid emitting redundant or unusable directories in DIFile metadata entries.

Hi,
A late question about this change. I notice that this change sometimes gives me additional DIFiles in the clang output compared to before.
E.g. if I have a file

Dec 10 2018, 4:00 AM · debug-info

Dec 6 2018

uabelho added a comment to D55357: [LoopSimplifyCFG] Do not deal with loops with irreducible CFG inside.

I don't know this code but at least it makes the reproducer I had compile succesfully now. Thanks!

Dec 6 2018, 3:18 AM

Dec 5 2018

uabelho committed rCTE348357: Fix compilation error when using clang 3.6.0.
Fix compilation error when using clang 3.6.0
Dec 5 2018, 3:32 AM
uabelho committed rL348357: Fix compilation error when using clang 3.6.0.
Fix compilation error when using clang 3.6.0
Dec 5 2018, 3:32 AM

Nov 30 2018

uabelho committed rC347987: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Nov 30 2018, 5:41 AM
uabelho committed rL347987: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Nov 30 2018, 5:41 AM

Nov 23 2018

uabelho added a comment to D54849: [LoopSimplifyCFG] Fix corner case with duplicating successors.

I've verifed that it solves the problem I reported. I've done a little bit of testing with the patch and didn't see anything obviously broken yet at least.

Nov 23 2018, 3:59 AM

Nov 21 2018

uabelho added a comment to D54695: [PM] Port Scalarizer to the new pass manager..

I submitted this for markus since he doesn't have commit access yet.

Nov 21 2018, 6:06 AM
uabelho committed rL347392: [PM] Port Scalarizer to the new pass manager..
[PM] Port Scalarizer to the new pass manager.
Nov 21 2018, 6:03 AM
uabelho closed D54695: [PM] Port Scalarizer to the new pass manager..
Nov 21 2018, 6:03 AM

Nov 15 2018

uabelho committed rC346950: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Nov 15 2018, 5:04 AM
uabelho committed rL346950: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Nov 15 2018, 5:04 AM

Nov 7 2018

uabelho added a comment to D53651: [clangd] Use thread pool for background indexing..

I've got a post-review comment about the use of SCHED_IDLE vs the needed gcc version.

Nov 7 2018, 1:32 AM

Oct 17 2018

uabelho committed rL344725: Add a emitUnaryFloatFnCall version that fetches the function name from TLI.
Add a emitUnaryFloatFnCall version that fetches the function name from TLI
Oct 17 2018, 11:30 PM
uabelho closed D53370: Add a emitUnaryFloatFnCall version that fetches the function name from TLI.
Oct 17 2018, 11:30 PM
uabelho added a comment to D53370: Add a emitUnaryFloatFnCall version that fetches the function name from TLI.

LGTM.

It looks like you didn't touch LibCallSimplifier::optimizeLog, but I guess that's not necessary (it probably shouldn't be using emitUnaryFloatFnCall anyway).

Oct 17 2018, 11:30 PM
uabelho committed rL344724: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Oct 17 2018, 11:02 PM
uabelho committed rCTE344724: Fix warning about unused variable [NFC].
Fix warning about unused variable [NFC]
Oct 17 2018, 11:02 PM
uabelho added a comment to D53370: Add a emitUnaryFloatFnCall version that fetches the function name from TLI.

Was it something like this you had in mind Eli?

Oct 17 2018, 6:13 AM
uabelho added inline comments to D49273: [InstCombine] Expand the simplification of pow() into exp2().
Oct 17 2018, 6:10 AM
uabelho created D53370: Add a emitUnaryFloatFnCall version that fetches the function name from TLI.
Oct 17 2018, 6:08 AM

Oct 16 2018

uabelho added inline comments to D49273: [InstCombine] Expand the simplification of pow() into exp2().
Oct 16 2018, 11:50 PM

Oct 15 2018

uabelho added a comment to D49273: [InstCombine] Expand the simplification of pow() into exp2().

Hi,
A late comment about a problem I've noticed with this change.

Oct 15 2018, 11:09 PM

Oct 2 2018

uabelho accepted D52540: Fix an ordering bug in the scalarizer..

We are using the Scalarizer in our out-of-tree target and I've run some tests with the patch without problems so I think it's ok.
Please wait a day before submitting though in case someone who really knows this code objects, but if not I think it's ok to push.

Oct 2 2018, 11:41 PM
uabelho committed rCTE343661: Fix compilation warning by removing unused variable [NFC].
Fix compilation warning by removing unused variable [NFC]
Oct 2 2018, 10:43 PM
uabelho committed rL343661: Fix compilation warning by removing unused variable [NFC].
Fix compilation warning by removing unused variable [NFC]
Oct 2 2018, 10:42 PM

Sep 27 2018

uabelho added a comment to D52540: Fix an ordering bug in the scalarizer..

Should I incorporate the test case from the bugzilla into this commit? Given that its a slightly different failure case that is also fixed by my change, seems like its worth ensuring it doesn't accidentally regress again.

Sep 27 2018, 6:31 AM
uabelho added a comment to D51028: [BranchFolder] Drop kill flags if they aren't present in all merged instructions.

Ping?

Sep 27 2018, 6:23 AM
uabelho added a comment to D52540: Fix an ordering bug in the scalarizer..

Is this the same problem as described in https://bugs.llvm.org/show_bug.cgi?id=28911 ?

I wasn't seeing the exact same failure as that bug describes - it was failing in Scalarizer::finish in the test included.

But I did pull the example from the bugzilla and tested it and it no longer crashes with my scalarizer fix.

Sep 27 2018, 5:51 AM
uabelho updated subscribers of D52540: Fix an ordering bug in the scalarizer..
Sep 27 2018, 4:47 AM
uabelho added a comment to D52540: Fix an ordering bug in the scalarizer..

Is this the same problem as described in https://bugs.llvm.org/show_bug.cgi?id=28911 ?

Sep 27 2018, 4:42 AM

Sep 25 2018

uabelho committed rL343071: Silence compiler warning about unused variable introduced in r343018.
Silence compiler warning about unused variable introduced in r343018
Sep 25 2018, 11:21 PM

Sep 24 2018

uabelho committed rL342944: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.
Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness
Sep 24 2018, 11:14 PM
uabelho closed D52410: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.
Sep 24 2018, 11:14 PM
uabelho added a comment to D52410: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.

Alright, I'll commit this as is in a little bit then. Thanks!

Sep 24 2018, 11:08 PM
uabelho added a comment to D52410: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.

An instruction just needs to def one or the other and the live out would be vcc, since it needs to visit the super register

Sep 24 2018, 7:20 AM
uabelho added a comment to D52410: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.

I would like to create a testcase exposing that we actually fix a bug when we use regsOverlap() instead of MCSubRegIterator, but then I think I need help.

Sep 24 2018, 7:20 AM
uabelho added inline comments to D51348: CodeGen: Make computeRegisterLiveness consider successors.
Sep 24 2018, 7:20 AM
uabelho created D52410: Use TRI->regsOverlap() in MachineBasicBlock::computeRegisterLiveness.
Sep 24 2018, 7:20 AM

Sep 21 2018

uabelho added inline comments to D51348: CodeGen: Make computeRegisterLiveness consider successors.
Sep 21 2018, 4:44 AM

Sep 17 2018

uabelho added inline comments to D51348: CodeGen: Make computeRegisterLiveness consider successors.
Sep 17 2018, 10:41 PM
uabelho added a comment to D51348: CodeGen: Make computeRegisterLiveness consider successors.

I have a post-review question about this change.

Sep 17 2018, 4:26 AM

Sep 13 2018

uabelho added inline comments to D51849: [RegisterCoalescer] Avoid "Use not jointly dominated by defs" in removePartialRedundancy.
Sep 13 2018, 2:23 AM

Sep 7 2018

uabelho added a comment to D51028: [BranchFolder] Drop kill flags if they aren't present in all merged instructions.

Ping

Sep 7 2018, 5:21 AM

Sep 6 2018

uabelho added a comment to D51770: [IndVars] Set Changed when we delete dead instructions. PR38855.

I'm not sure if I'm allowed to LGTM this but it does look good to me and it solves PR38855 so thumbs up.

Sep 6 2018, 11:24 PM

Aug 28 2018

uabelho committed rL340820: [CloneFunction] Constant fold terminators before checking single predecessor.
[CloneFunction] Constant fold terminators before checking single predecessor
Aug 28 2018, 5:41 AM
uabelho closed D51280: [CloneFunction] Constant fold terminators before checking single predecessor.
Aug 28 2018, 5:41 AM
uabelho added inline comments to D51280: [CloneFunction] Constant fold terminators before checking single predecessor.
Aug 28 2018, 5:17 AM
uabelho updated the diff for D51280: [CloneFunction] Constant fold terminators before checking single predecessor.

Update testcase

Aug 28 2018, 5:15 AM

Aug 27 2018

uabelho resigned from D51286: [IndVars] Fix usage of SCEVExpander to not mess with SCEVConstant. PR38674.

This indeed solves the problem I reported in PR38674 but I don't know IndVarSimplify enough to say if this is the right solution or not.

Aug 27 2018, 2:15 AM

Aug 26 2018

uabelho created D51280: [CloneFunction] Constant fold terminators before checking single predecessor.
Aug 26 2018, 11:37 PM

Aug 23 2018

uabelho added inline comments to rC340524: Removed unused variable [NFC].
Aug 23 2018, 6:21 AM
uabelho committed rL340531: Change dyn_cast<CXXMethodDecl>(FD) to isa<CXXMethodDecl>(FD) [NFC].
Change dyn_cast<CXXMethodDecl>(FD) to isa<CXXMethodDecl>(FD) [NFC]
Aug 23 2018, 6:19 AM
uabelho committed rC340531: Change dyn_cast<CXXMethodDecl>(FD) to isa<CXXMethodDecl>(FD) [NFC].
Change dyn_cast<CXXMethodDecl>(FD) to isa<CXXMethodDecl>(FD) [NFC]
Aug 23 2018, 6:19 AM
uabelho committed rL340524: Removed unused variable [NFC].
Removed unused variable [NFC]
Aug 23 2018, 4:00 AM
uabelho committed rC340524: Removed unused variable [NFC].
Removed unused variable [NFC]
Aug 23 2018, 4:00 AM

Aug 21 2018

uabelho added a comment to D51028: [BranchFolder] Drop kill flags if they aren't present in all merged instructions.

Found the problem when testing my out of tree target, but it's exposed also with the attached testcase.

Aug 21 2018, 1:38 AM
uabelho created D51028: [BranchFolder] Drop kill flags if they aren't present in all merged instructions.
Aug 21 2018, 1:37 AM
uabelho committed rC340251: Removed unused variable [NFC].
Removed unused variable [NFC]
Aug 21 2018, 12:23 AM
uabelho committed rL340251: Removed unused variable [NFC].
Removed unused variable [NFC]
Aug 21 2018, 12:23 AM