User Details
- User Since
- Apr 9 2022, 9:22 PM (76 w, 4 d)
Aug 24 2023
Add conditional check to prevent the freezing of a load with freeze_bits metadata
Aug 21 2023
Aug 15 2023
@nikic Thanks for responding. I will get a "work in progress" patch up in the next three days.
Aug 11 2023
Ping
Aug 4 2023
Ping
Jul 28 2023
Refactor AMDGPUPromoteAlloca to use getInitialValueOfAllocation.
Jul 20 2023
Remove reliance on TLI objects where only alloca instructions are processed.
@nikic as per my GSoC project I am trying, under the guidance of @nlopes, a load attribute based approach to migrating uninitialized load to poison. The first attribute that I am working on is !freeze which effectively inserts a freeze poison if the load is uninitialized. Obviously this can only be done in
optimizations that allow instruction creation. In the future I am looking to add a load instruction parameter to getInitialValueOfAllocation to allow modification of the returned constant based on the allocation function/instruction and the presence of a load attribute.
Jul 19 2023
Jun 20 2023
Abandoning this patch as it will be superseded in functionality by D148216.
@jdoerfert thanks for the LGTM!
Regenerating test using D148216
Jun 16 2023
Jun 9 2023
Jun 2 2023
@goldstein.w.n thanks for taking the time to review.
Jun 1 2023
@goldstein.w.n thanks for the reply.
May 31 2023
@nikic this patch is for #54856, which originated from @erikdesjardins.
May 25 2023
May 20 2023
@goldstein.w.n thanks for taking the time to review.
Add foldPowerOf2AndShiftedMask(...) and call from InstCombinerImpl::foldAndOrOfICmps(...)
May 19 2023
Move tests from icmp-logical.ll to icmp-power2-and-icmp-shifted-mask.ll
May 18 2023
May 17 2023
Add postfix of "fail" to the names of tests that intentionally do not change
Add postfix of "fail" to the names of tests that intentionally do not change
Refactor scalar and vector tests to emit icmp from one location
Refactor scalar and vector tests to emit icmp from one location
May 14 2023
Resolving feedback items identified by @goldstein.w.n
Add undef based splat vector tests
Apr 7 2023
@RKSimon thanks for taking the time to review the patch!
@RKSimon thanks for taking the time to review the patch!
Apr 4 2023
Apr 3 2023
@RKSimon Thanks for taking the time to review!
Mar 31 2023
Rebase onto latest main.
Mar 29 2023
@RKSimon I added Alive2 examples exercising llvm::decomposeBitTestICmp using splat/mask vectors for all supported comparisons.
Mar 27 2023
Added Alive2 URLs to patch summary.
I have added Alive2 links to the summary as per @RKSimon request.
Mar 26 2023
Rebase onto latest main.
Rebase onto latest main.
Rebase to latest main.
Rebase onto latest main.
Rebase onto latest main.
Add comments to each non nullptr conditional.
Rebase to latest main.
Mar 23 2023
I am closing this ticket as we are working on alternative solutions to poison based load semantics.
I am closing this ticket as we are working on alternative solutions to poison based load semantics.
I am closing this ticket as we are working on alternative solutions to poison based load semantics.
Mar 13 2023
ping
Feb 20 2023
Update icmp-logical.ll test names as per recommendation in D143044
Remove sequential test names in favor of pattern details
Feb 1 2023
Fix no change test case updated in D143044
Fix vector of two elements test case
Add support for vectors:
Jan 9 2023
As per @RKSimon's feedback I have discovered a number of vector deficiencies in my implementation.
Jan 3 2023
The Discourse proposal is available: RFC Load Instruction: Uninitialized Memory Semantics
Dec 24 2022
As Nuno mentioned we are targeting the proposal for next week. I will update the ticket with the Discourse link once it becomes available.
Dec 6 2022
Updating D139378: [clang][CodeGen] Add noundef metadata to load instructions (preliminary 4 or 4)
Dec 5 2022
Updating D138983: [clang][CodeGen] Add noundef metadata to load instructions (preliminary 3 or 3)
Updating D134410: [clang][CodeGen] Add noundef metadata to load instructions (preliminary 1 or 3)
Nov 30 2022
Nov 29 2022
Updating D134410: [clang][CodeGen] Add noundef metadata to load instructions (preliminary 1 or 2)