Mon, Nov 23
The tests should be in llvm-project/llvm/test/Transforms/OpenMP.
Sat, Nov 21
On the first look, you should at least clang-format this as it is not very readable right now.
Thu, Oct 29
Oh, and on the change itself: I'm not familiar enough with the attributor framework to judge the implementation, but the described reasoning (being able to make deductions from indirect calls) is sound.
Oct 20 2020
Commited in rGfbfb1c790982.
Oct 15 2020
Switch to opt-in approach. Intrinsic class now has the same meaning as bofore.
To get default attributes we now use DefaultAttrsIntrinsic.
Oct 14 2020
I have been trying to update my patch by following the steps on:
However, I always end up loading nothing.
Oct 13 2020
Only move the declaration
Oct 12 2020
Oct 2 2020
@nikic do you have a preference on any of the suggested names?
Oct 1 2020
opt-out of few more intrinsics
add comment for DefaultIntrinsic class
update clang tests
Sep 30 2020
I find the naming here confusing: Looking at this patch my expectation was that DefaultIntrinsic is used for intrinsics with default attributes, based on the name. Took me a while to understand it's actually the other way around. Shouldn't the Intrinsic <-> DefaultIntrinsic naming be inverted?
Opt-out of default attributes for llvm.coro.* intrinsics.
Actually coro intrinsics had default attributes, completelly missed that. Sorry for the confusion.
I'll update the patch shortly.
We probably shouldn't be messing with the attributes on llvm.coro.* intrinsics. The rules for transforms around coroutine intrinsics aren't completely settled (see also https://reviews.llvm.org/D87817), but at least some of them can run arbitrary code.
Sep 29 2020
precommit (local) coro test changes with update_test_checks
Adding @rjmccall as a reviewer as I'm unsure about some coroutine changes that appeared after rebase.
Its been more than a month now. Are there any additional concern about this?
group default properties together
Sep 28 2020
Sep 22 2020
Switched to D88096.
Now I see where the problem was. Thanks for taking a look.
Sep 19 2020
I think you should split this in two patches. One that introduces the IR attribite and one for attributor deduction.
Sep 9 2020
Sorry for the delay.
Looks like parallel_deletion.ll needs to be updated as well.
Looks same as the failures before. I may be able to do a windows build next week and try to see what is going on.
Sep 7 2020
Actually windows tests passed, I was looking at the wrong place.
I remember this being windows only issue. I was able to always reproduce it on windows, but never had the chance to look into it.
Sep 3 2020
Aug 31 2020
Aug 30 2020
Aug 29 2020
Aug 28 2020
Rebasing after recent changes to AANoUndef
Aug 26 2020
Don't skip ;\n comments
Sorry for the delay on this.
Are you going to move the AAIsDead query to the update?
Thanks for the explanation. Since the patch is not small and it is a WIP, can you add some more information about the failing tests? Maybe some specific examples?
Aug 25 2020
LGTM, one minor note. The test will be part of the module slice patch, I'm fairly certain this cannot be tested right now but it makes sense.
Aug 24 2020
What should be the next step here? There was no response on the RFC update.
Does the fix for the performance issue seem ok?
Aug 22 2020
Aug 21 2020
This is interesting, I thought you couldn't change the IR outside of the current SCC.
We can't delete functions outside of the SCC, the rest should be fine.
Aug 20 2020
After this patch, llvm-tblgen in debug mode is 10x slower:
Before:$ time bin/llvm-tblgen -gen-global-isel -I ../llvm/test/TableGen/../../include -I ..//llvm/test/TableGen/Common -optimize-match-table=true ../llvm/test/TableGen/GlobalISelEmitter.td -o /tmp/test.cpp real 0m1.238s user 0m0.970s sys 0m0.274s
After:$ time bin/llvm-tblgen -gen-global-isel -I ../llvm/test/TableGen/../../include -I ..//llvm/test/TableGen/Common -optimize-match-table=true ../llvm/test/TableGen/GlobalISelEmitter.td -o /tmp/test.cpp real 0m11.671s user 0m11.607s sys 0m0.067s
Thanks for reporting this.
Numbers are similar in the release mode as well. The problem was that we go through all IntrProperties for every Intrinsic in search for ones that are default. However that can be done only once.
fix slowdown issue
Aug 19 2020
Aug 18 2020
Maybe the commit message could be a bit more descriptive?
Aug 17 2020
update affected tests.
add comment for DisableDefaultAttributes flag.
Can we move forward with this approach?
update gc intrinsics to DefaultIntrinsic
Aug 16 2020
Add DefaultIntrinsic class with default attributes disabled.
- Remove hasTrackedValue()