- User Since
- Mar 5 2020, 1:46 PM (58 w, 23 h)
Mon, Apr 12
Interesting. Do we have near term plans for adding the Attributor to the default pass pipeline ?
Mar 13 2021
Mar 11 2021
Mar 10 2021
Feb 28 2021
The fix here only works if the run lines are ordered in a specific way.
I don't think there are any trivial solutions to this problem.
Split cb_range.ll into two files cb_range_enabled.ll and cb_range_disabled.ll.
This is needed because the combination of prefixes we use triggers a edge case with the
dict.keys() gives a dict_keys object which isn't a list. [:] doesn't work on it.
Feb 1 2021
A real example that doesn't work.
Jan 28 2021
Rebase. Changes in the test run lines.
Aug 30 2020
Aug 27 2020
Aug 26 2020
Thank you for creating this. I was thinking of something like this rather than having multiple flags.
In D86587 I iterate on functions multiple times and I delete AAs early after manifesting them.
(Manifest happens multiple times).
I think most of the state change should happen in the ::run function.
Split unrelated changes to another patch
Handle attibutes that are created after function delete.
I think rather than creating a new api function, it would be more robust if we had a flag as member of the attributor.
It would be similar to SeedingPeriod flag that I have added.
Aug 25 2020
Thank you I will update the commit message.
I only updated the allow_list.ll. This brakes many tests and in some cases cause invalid IR (assertion gets trigered for a tail call).
Aug 21 2020
Thank you, I was about to commit this.
did a git pull and it just finished compiling.
Aug 20 2020
This is interesting, I thought you couldn't change the IR outside of the current SCC.
Was this intended to go on top of D86081 ?
- Add negative test.
- Fix clang-tidy error.
- Make seed allow list only enabled for debug builds (assertions turned on).
Aug 18 2020
I think the logic is correct, other people might want to check too.
Maybe we want to add more comments, it doesn't seem obvious what's happening here.
Aug 17 2020
Hi can you try this on top of D86081
Aug 16 2020
Aug 3 2020
Aug 1 2020
Jul 30 2020
Jul 29 2020
add auto context injection.
Jul 28 2020
Some Attributes that have CBContext doesn't seem to be querying the CB specific attributes.
I will update this once I have a solution.
remove unused header.
add unit test.
fix bug (😄)
Jul 27 2020
Manually requesting review, since the Phabricator wasn't able to built this. From what I can see it was missing the parent revision with the last build.
Pre-merge checks should be ok now.
add range contents as test.
Jul 25 2020
Jul 24 2020
add missing code.
remove unneeded definies.
Jul 23 2020
Jul 20 2020
Memory usage for this patch:
comand: $LLVM_BIN/opt -S -attributor-cgscc test-suit/CTMark/SPASS/clause.ll
calls to allocation functions: 78794 (82506/s) temporary memory allocations: 3942 (4127/s) peak heap memory consumption: 2.58MB peak RSS (including heaptrack overhead): 355.73MB total memory leaked: 140.33KB
calls to allocation functions: 78802 (86977/s) temporary memory allocations: 3942 (4350/s) peak heap memory consumption: 2.59MB peak RSS (including heaptrack overhead): 356.60MB total memory leaked: 140.33KB
calls to allocation functions: 8 (-163/s) temporary memory allocations: 0 (0/s) peak heap memory consumption: 8.26KB peak RSS (including heaptrack overhead): 0B total memory leaked: 0B
Interesting, there doesn't seem to be much of a difference.
Jul 19 2020
fix wording. use pointer_iterator instead of for loop.
Jul 18 2020
add missing documentation.
improve formating and readability.
rename command line option
fix run lines (there was a mistake in the earlier revision).
Add test combinations.
improve code readability.
Jul 17 2020
Jul 16 2020
add attributor-enable-call-site-specific=false as a test.
fix the run lines.
Jul 15 2020
merge with D83299
add positive and negative tests.
Jul 14 2020
merged with D83744
Jul 13 2020
D83744 uses this and has tests.
Hi @bbn when will commit this ?
Jul 12 2020
Jul 11 2020
- Better comments.
- Remove unneeded lines from the test.