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 (176 w, 4 d)

Recent Activity

Tue, Apr 16

uabelho added a comment to D60791: [CVP] Simplify umulo and smulo that cannot overflow.

I see crashed with this patch. E.g.

Tue, Apr 16, 11:15 PM · Restricted Project

Wed, Apr 10

uabelho committed rG58c080a3b12d: Add { } to silence compiler warning [NFC] (authored by uabelho).
Add { } to silence compiler warning [NFC]
Wed, Apr 10, 11:56 PM
uabelho committed rC358152: Add { } to silence compiler warning [NFC].
Add { } to silence compiler warning [NFC]
Wed, Apr 10, 11:56 PM
uabelho committed rL358152: Add { } to silence compiler warning [NFC].
Add { } to silence compiler warning [NFC]
Wed, Apr 10, 11:56 PM

Wed, Apr 3

uabelho added a comment to D59936: SimplifyCFG SinkCommonCodeFromPredecessors: Also sink function calls without used results (PR41259).

When looking at some code changes for my out-of-tree target with this commit I noticed a change that I thought I'd ask if you think
is good or not.

With this change we now seem to sink e.g. calls to @llvm.lifetime.end? It returns void, and thus has 0 uses, and as far as I understand
such calls were not sinked before? Is this on purpose and is that good? In general I guess it's good to do lifetime.end at soon as possible?

(And I suppose there are also a whole bunch of other intrinsics that also return void that can be sinked now, I've no idea if that
can cause problems somewhere?)

It's not on purpose in the sense that I was targeting the lifetime intrinsics, but it's showing my change working as intended.

For the lifetime intrinsics, I don't think this really matters. As you say, it's good to do lifetime.end as soon as possible, so sinking them in general doesn't make sense, but I also don't think this matters much here because they can't be sunk very far, i.e. I don't see how this sinking could actually extend the lifetime.

Wed, Apr 3, 1:35 AM · Restricted Project
uabelho added a comment to D59936: SimplifyCFG SinkCommonCodeFromPredecessors: Also sink function calls without used results (PR41259).

When looking at some code changes for my out-of-tree target with this commit I noticed a change that I thought I'd ask if you think
is good or not.

Wed, Apr 3, 12:56 AM · Restricted Project

Tue, Apr 2

uabelho committed rG4ec931714dec: Fix compiler warning, remove extra ";" [NFC] (authored by uabelho).
Fix compiler warning, remove extra ";" [NFC]
Tue, Apr 2, 3:03 AM
uabelho committed rL357461: Fix compiler warning, remove extra ";" [NFC].
Fix compiler warning, remove extra ";" [NFC]
Tue, Apr 2, 3:03 AM
uabelho committed rC357461: Fix compiler warning, remove extra ";" [NFC].
Fix compiler warning, remove extra ";" [NFC]
Tue, Apr 2, 3:03 AM
uabelho added a comment to D59528: [clang-tidy] Expand modular headers for PPCallbacks.

I noticed that with this commit I get a whole bunch (~40) of warnings like the below when compiling with gcc 7.4:

[10/16] Building CXX object tools/clang/tools/extra/clang-tidy/utils/CMakeFiles/clangTidyUtils.dir/HeaderGuard.cpp.o
In file included from ../tools/clang/tools/extra/clang-tidy/utils/HeaderGuard.h:12:0,
                 from ../tools/clang/tools/extra/clang-tidy/utils/HeaderGuard.cpp:9:
../tools/clang/tools/extra/clang-tidy/utils/../ClangTidy.h:161:16: warning: 'virtual void clang::tidy::ClangTidyCheck::registerPPCallbacks(const clang::SourceManager&, clang::Preprocessor*, clang::Preprocessor*)' was hidden [-Woverloaded-virtual]
   virtual void registerPPCallbacks(const SourceManager &SM, Preprocessor *PP,
                ^~~~~~~~~~~~~~~~~~~
In file included from ../tools/clang/tools/extra/clang-tidy/utils/HeaderGuard.cpp:9:0:
../tools/clang/tools/extra/clang-tidy/utils/HeaderGuard.h:35:8: warning:   by 'virtual void clang::tidy::utils::HeaderGuardCheck::registerPPCallbacks(clang::CompilerInstance&)' [-Woverloaded-virtual]
   void registerPPCallbacks(CompilerInstance &Compiler) override;
        ^~~~~~~~~~~~~~~~~~~
Tue, Apr 2, 1:53 AM · Restricted Project, Restricted Project, Restricted Project

Mon, Apr 1

uabelho committed rG150a7ec2dc04: [InstCombine] Handle vector gep with scalar argument in… (authored by uabelho).
[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 7:10 AM
uabelho committed rL357389: [InstCombine] Handle vector gep with scalar argument in….
[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 7:10 AM
uabelho closed D60058: [InstCombine] Handle vector gep with scalar argument in evaluateInDifferentElementOrder.
Mon, Apr 1, 7:10 AM · Restricted Project
uabelho committed rG3e527cd823a4: Revert "[InstCombine] Handle vector gep with scalar argument in… (authored by uabelho).
Revert "[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 7:07 AM
uabelho committed rL357387: Revert "[InstCombine] Handle vector gep with scalar argument in….
Revert "[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 7:05 AM
uabelho committed rGd66a47f90a78: [InstCombine] Handle vector gep with scalar argument in… (authored by uabelho).
[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 6:48 AM
uabelho committed rL357385: [InstCombine] Handle vector gep with scalar argument in….
[InstCombine] Handle vector gep with scalar argument in…
Mon, Apr 1, 6:47 AM
uabelho updated the diff for D60058: [InstCombine] Handle vector gep with scalar argument in evaluateInDifferentElementOrder.
Mon, Apr 1, 6:45 AM · Restricted Project
uabelho updated the diff for D60058: [InstCombine] Handle vector gep with scalar argument in evaluateInDifferentElementOrder.
Mon, Apr 1, 6:37 AM · Restricted Project
uabelho added a comment to D60058: [InstCombine] Handle vector gep with scalar argument in evaluateInDifferentElementOrder.

Great! I'll update the test and submit in a little bit.

Mon, Apr 1, 6:20 AM · Restricted Project
uabelho created D60058: [InstCombine] Handle vector gep with scalar argument in evaluateInDifferentElementOrder.
Mon, Apr 1, 2:27 AM · Restricted Project

Mar 21 2019

uabelho committed rG5b1754f93d84: Silence warning about unused variable in builds without asserts [NFC] (authored by uabelho).
Silence warning about unused variable in builds without asserts [NFC]
Mar 21 2019, 12:56 AM
uabelho committed rL356648: Silence warning about unused variable in builds without asserts [NFC].
Silence warning about unused variable in builds without asserts [NFC]
Mar 21 2019, 12:56 AM

Mar 15 2019

uabelho committed rG339daae806b2: [CodeGenPrepare] avoid crashing from replacing a phi twice (authored by uabelho).
[CodeGenPrepare] avoid crashing from replacing a phi twice
Mar 15 2019, 6:51 AM
uabelho committed rL356260: [CodeGenPrepare] avoid crashing from replacing a phi twice.
[CodeGenPrepare] avoid crashing from replacing a phi twice
Mar 15 2019, 6:50 AM
uabelho closed D59358: [CodeGenPrepare] avoid crashing from replacing a phi twice.
Mar 15 2019, 6:50 AM · Restricted Project
uabelho added a comment to D59358: [CodeGenPrepare] avoid crashing from replacing a phi twice.

I'll push this for JesperAntonsson in a bit since he's having some environment issues.

Mar 15 2019, 6:44 AM · Restricted Project

Mar 14 2019

uabelho committed rGf5fe2974cfd2: Remove unused variable to silence compiler warning [NFC] (authored by uabelho).
Remove unused variable to silence compiler warning [NFC]
Mar 14 2019, 7:21 AM
uabelho committed rL356152: Remove unused variable to silence compiler warning [NFC].
Remove unused variable to silence compiler warning [NFC]
Mar 14 2019, 7:21 AM
uabelho committed rC356152: Remove unused variable to silence compiler warning [NFC].
Remove unused variable to silence compiler warning [NFC]
Mar 14 2019, 7:21 AM

Feb 26 2019

uabelho added a comment to D58626: [DAG] Fix constant store folding to handle non-byte sizes..

Added a few nits about too long lines.

Feb 26 2019, 2:09 AM · Restricted Project
uabelho added a comment to D58626: [DAG] Fix constant store folding to handle non-byte sizes..

Nice! I ran a new bunch of llvm-stress tests with this patch and now I don't see the crashes anymore.
Please push.

Feb 26 2019, 1:19 AM · Restricted Project

Feb 19 2019

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
Feb 19 2019, 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
Feb 19 2019, 11:14 PM
uabelho closed D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.
Feb 19 2019, 11:14 PM · Restricted Project
uabelho added a comment to D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.

Thanks!

Feb 19 2019, 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.

Feb 19 2019, 6:01 AM

Feb 18 2019

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?

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

Ping!

Feb 18 2019, 6:46 AM

Feb 14 2019

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.

Feb 14 2019, 12:47 AM · Restricted Project

Feb 13 2019

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

Thanks for fixing!

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

Feb 6 2019

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?

Feb 6 2019, 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 >.<

Feb 6 2019, 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?

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

Rebased.

Feb 6 2019, 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? :)

Feb 6 2019, 4:08 AM · Restricted Project

Jan 31 2019

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

Thanks!

Jan 31 2019, 11:01 PM · Restricted Project

Jan 30 2019

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.

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

Jan 29 2019

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

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

Jan 28 2019

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

Jan 25 2019

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.

Jan 25 2019, 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!

Jan 25 2019, 2:12 AM · Restricted Project

Jan 24 2019

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?).

Jan 24 2019, 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.

Jan 24 2019, 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.

Jan 24 2019, 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?

Jan 24 2019, 5:26 AM
uabelho created D57149: [StackProtector] Skip analysing dead users in HasAddressTaken, PR40436.
Jan 24 2019, 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