Page MenuHomePhabricator

atmnpatel (Atmn Patel)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 12 2020, 7:33 AM (33 w, 7 h)

Recent Activity

Today

atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Updated to include syntax modifications in the llvm/utils

Wed, Sep 30, 1:50 PM · Restricted Project
atmnpatel updated the diff for D88353: [BasicAA] Integrate MaxObjSize for NoAlias.

Fixed broken tests, think the changes make sense.

Wed, Sep 30, 1:11 PM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Fixed broken test.

Wed, Sep 30, 12:19 PM · Restricted Project
atmnpatel updated the diff for D88353: [BasicAA] Integrate MaxObjSize for NoAlias.

Added a specific basic-aa maxobjsize test.

Wed, Sep 30, 9:47 AM · Restricted Project

Yesterday

atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Updated commit message.

Tue, Sep 29, 6:46 PM · Restricted Project
atmnpatel retitled D87262: [Inliner] Handle `mustprogress` functions from [Inliner] Apply llvm.loop.mustprogress to callee loops if callee is `mustprogress` to [Inliner] Handle `mustprogress` functions.
Tue, Sep 29, 6:45 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Inliner changes now that the clang implementation in D86841 has changed. Can I remove the inliner nested loops and multiple loops tests now? They're not as relevant anymore.

Tue, Sep 29, 6:06 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Fixing buildkite build.

Tue, Sep 29, 4:24 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Rebasing.

Tue, Sep 29, 4:23 PM · Restricted Project
atmnpatel added inline comments to D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.
Tue, Sep 29, 4:19 PM · Restricted Project
atmnpatel updated the diff for D88464: [LangRef] Adds llvm.loop.mustprogress loop metadata.

buildkite fix.

Tue, Sep 29, 4:18 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Fixes.

Tue, Sep 29, 4:13 PM · Restricted Project
atmnpatel added inline comments to D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Tue, Sep 29, 4:13 PM · Restricted Project
atmnpatel updated the diff for D88464: [LangRef] Adds llvm.loop.mustprogress loop metadata.

Removed extra file.

Tue, Sep 29, 3:33 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

NFC fixes.

Tue, Sep 29, 2:12 PM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

changed stats trackers

Tue, Sep 29, 11:58 AM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Rebase

Tue, Sep 29, 11:49 AM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Fixes.

Tue, Sep 29, 11:25 AM · Restricted Project
atmnpatel retitled D87978: [Attributor] Adds deduction for the MaxObjSize Attribute from [WIP][Attributor] Adds deduction for the MaxObjSize Attribute to [Attributor] Adds deduction for the MaxObjSize Attribute.
Tue, Sep 29, 11:24 AM · Restricted Project

Mon, Sep 28

atmnpatel added a comment to D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Should there be some documentation about the new attribute?

Mon, Sep 28, 8:18 PM · Restricted Project
atmnpatel requested review of D88464: [LangRef] Adds llvm.loop.mustprogress loop metadata.
Mon, Sep 28, 7:43 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

fixes.

Mon, Sep 28, 7:17 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

more fixes.

Mon, Sep 28, 7:07 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

attempt 3

Mon, Sep 28, 1:17 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

attempt 2, ignore

Mon, Sep 28, 1:07 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

addressed nit.

Mon, Sep 28, 11:57 AM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

rebase.

Mon, Sep 28, 11:56 AM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

rebase

Mon, Sep 28, 11:54 AM · Restricted Project

Sun, Sep 27

atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

rebase to hopefully fix buildbot

Sun, Sep 27, 3:53 PM · Restricted Project
atmnpatel added inline comments to D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Sun, Sep 27, 3:25 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Fixes.

Sun, Sep 27, 3:24 PM · Restricted Project
atmnpatel updated the summary of D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Sun, Sep 27, 3:24 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

All language standards (minus gnu extensions) are now tested.

Sun, Sep 27, 3:20 PM · Restricted Project
atmnpatel added inline comments to D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.
Sun, Sep 27, 3:14 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Split them into pre and post forward progress requirement tests, now the difference is much easier to catch.

Sun, Sep 27, 3:13 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Fixes.

Sun, Sep 27, 3:12 PM · Restricted Project

Fri, Sep 25

atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Rebase.

Fri, Sep 25, 11:34 PM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Clang-tidy fix.

Fri, Sep 25, 11:22 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Rebase to fix buildkite failure.

Fri, Sep 25, 11:14 PM · Restricted Project
atmnpatel requested review of D88353: [BasicAA] Integrate MaxObjSize for NoAlias.
Fri, Sep 25, 11:03 PM · Restricted Project
atmnpatel updated the diff for D87975: [IR] MaxObjSize Attribute.

Defaults were wrong (0), switched default maxobjsize assumption (~uint64_t(0)).

Fri, Sep 25, 10:30 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Formatting changes.

Fri, Sep 25, 9:52 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Added LangRef definition, added missing test and corresponding logic.

Fri, Sep 25, 5:23 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Small renames.

Fri, Sep 25, 4:54 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Updated definition of hasMustProgress to also include willreturn as per the LangRef definition.

Fri, Sep 25, 4:49 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Removed unofficial link, I agree that an unofficial link isn't that much better than no link. Updated wording as well.

Fri, Sep 25, 4:43 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Addressed inline comments.

Fri, Sep 25, 4:32 PM · Restricted Project
atmnpatel abandoned D87180: [Inliner] Preserve maynotprogress function attribute.
Fri, Sep 25, 12:42 PM · Restricted Project
atmnpatel added a comment to D87180: [Inliner] Preserve maynotprogress function attribute.

Yep I wasn't entirely sure before but I am now.

Fri, Sep 25, 12:40 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Updated wrt nit.

Fri, Sep 25, 12:20 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Addressed comments, does this sound like an appropriate wording for the behavior wrt callees?

Fri, Sep 25, 12:03 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Updated wording.

Fri, Sep 25, 9:53 AM · Restricted Project

Wed, Sep 23

atmnpatel added a comment to D86233: [LangRef] Define mustprogress attribute.

Ping. Is this good to go?

Wed, Sep 23, 6:00 PM · Restricted Project

Tue, Sep 22

atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Decreased bloat in the OpenMP test modifications.

Tue, Sep 22, 10:15 PM · Restricted Project
atmnpatel updated the diff for D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.

Addresses inline comments (I think), and adds a test.

Tue, Sep 22, 10:03 PM · Restricted Project

Mon, Sep 21

atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Sorry, it slipped. Anything else?

Mon, Sep 21, 10:31 AM · Restricted Project

Sat, Sep 19

atmnpatel requested review of D87978: [Attributor] Adds deduction for the MaxObjSize Attribute.
Sat, Sep 19, 3:55 PM · Restricted Project
atmnpatel retitled D87975: [IR] MaxObjSize Attribute from [Attributor][WIP] MaxObjSize Attribute to [IR] MaxObjSize Attribute.
Sat, Sep 19, 3:48 PM · Restricted Project
atmnpatel updated the diff for D87975: [IR] MaxObjSize Attribute.

Sorry, updated accordingly.

Sat, Sep 19, 3:46 PM · Restricted Project
atmnpatel requested review of D87975: [IR] MaxObjSize Attribute.
Sat, Sep 19, 1:44 PM · Restricted Project

Mon, Sep 14

atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

No-op to fix buildbot failure to apply patch.

Mon, Sep 14, 4:48 PM · Restricted Project
atmnpatel updated the summary of D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Mon, Sep 14, 9:04 AM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Tests renamed.

Mon, Sep 14, 8:22 AM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Fixed failing test.

Mon, Sep 14, 7:11 AM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Rebase.

Mon, Sep 14, 5:37 AM · Restricted Project

Sun, Sep 13

atmnpatel retitled D87262: [Inliner] Handle `mustprogress` functions from [Inliner] Apply llvm.loop.mustprogress to caller loops to [Inliner] Apply llvm.loop.mustprogress to callee loops if callee is `mustprogress`.
Sun, Sep 13, 5:53 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Flipped directions, now it gives the callee loops llvm.loop.mustprogress if a mustprogress function is being inlined.

Sun, Sep 13, 5:52 PM · Restricted Project
atmnpatel retitled D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction from [clang] Add mayprogress and llvm.loop.mustprogress attribute deduction to [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.
Sun, Sep 13, 3:56 PM · Restricted Project
atmnpatel added a comment to D87180: [Inliner] Preserve maynotprogress function attribute.

On second thought, we don't need this for mustprogress. If the callee is` mustprogress`, the caller cannot become mustprogress as well without changing program behavior as a result of inlining.

Sun, Sep 13, 3:54 PM · Restricted Project
atmnpatel updated the diff for D87180: [Inliner] Preserve maynotprogress function attribute.

Renamed.

Sun, Sep 13, 3:48 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Added a helper for readibility, and some missed comment updates.

Sun, Sep 13, 3:40 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Updated to rely on the new mustprogress attrs.

Sun, Sep 13, 3:29 PM · Restricted Project
atmnpatel updated the summary of D86233: [LangRef] Define mustprogress attribute.
Sun, Sep 13, 1:02 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Flipped direction.

Sun, Sep 13, 1:00 PM · Restricted Project

Fri, Sep 11

atmnpatel retitled D85393: [IR] Adds mustprogress as a LLVM IR attribute from [IR] Adds mayprogress as a LLVM IR attribute to [IR] Adds mustprogress as a LLVM IR attribute.
Fri, Sep 11, 2:55 PM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Change direction.

Fri, Sep 11, 2:55 PM · Restricted Project
atmnpatel retitled D86233: [LangRef] Define mustprogress attribute from [LangRef] Define maynotprogress attribute to [LangRef] Define mustprogress attribute.
Fri, Sep 11, 2:45 PM · Restricted Project
atmnpatel updated the summary of D86233: [LangRef] Define mustprogress attribute.
Fri, Sep 11, 2:45 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Flipped directions and a rename.

Fri, Sep 11, 2:41 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

More tightly follows both the C and C++ standards. maynotprogress is only added to C functions when compiled with C11 or later.

Fri, Sep 11, 9:29 AM · Restricted Project

Tue, Sep 8

atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Updated the description based on conversations on the mailing lists.

Tue, Sep 8, 9:03 PM · Restricted Project
atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Added tests and changed the loop iteration method.

Tue, Sep 8, 7:24 PM · Restricted Project

Mon, Sep 7

atmnpatel updated the diff for D87262: [Inliner] Handle `mustprogress` functions.

Rebase.

Mon, Sep 7, 6:57 PM · Restricted Project
atmnpatel requested review of D87262: [Inliner] Handle `mustprogress` functions.
Mon, Sep 7, 6:53 PM · Restricted Project

Fri, Sep 4

atmnpatel requested review of D87180: [Inliner] Preserve maynotprogress function attribute.
Fri, Sep 4, 10:12 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Renames.

Fri, Sep 4, 11:33 AM · Restricted Project
atmnpatel updated the summary of D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Fri, Sep 4, 11:33 AM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

Renamed mayprogress to maynotprogress.

Fri, Sep 4, 11:03 AM · Restricted Project
atmnpatel updated the diff for D85393: [IR] Adds mustprogress as a LLVM IR attribute.

Renamed to maynotprogress.

Fri, Sep 4, 10:50 AM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Renamed to maynotprogress.

Fri, Sep 4, 10:30 AM · Restricted Project
atmnpatel retitled D86233: [LangRef] Define mustprogress attribute from [LangRef] Define mayprogress attribute to [LangRef] Define maynotprogress attribute.
Fri, Sep 4, 10:29 AM · Restricted Project
atmnpatel updated the summary of D86233: [LangRef] Define mustprogress attribute.
Fri, Sep 4, 9:47 AM · Restricted Project

Thu, Sep 3

atmnpatel retitled D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction from [clang] Add noprogress attribute deduction for infinite loops to [clang] Add mayprogress and llvm.loop.mustprogress attribute deduction.
Thu, Sep 3, 10:00 PM · Restricted Project
atmnpatel retitled D85393: [IR] Adds mustprogress as a LLVM IR attribute from [WIP] [IR] Adding noprogress as a LLVM IR attribute to [IR] Adds mayprogress as a LLVM IR attribute.
Thu, Sep 3, 9:51 PM · Restricted Project
atmnpatel retitled D86233: [LangRef] Define mustprogress attribute from [WIP] [RFC] [LangRef] Define noprogress attribute to [LangRef] Define mayprogress attribute.
Thu, Sep 3, 9:45 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Address comments.

Thu, Sep 3, 9:44 PM · Restricted Project
atmnpatel retitled D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops from [Loops] Introduces handling for the noprogress loop metadata. to [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.
Thu, Sep 3, 9:33 PM · Restricted Project
atmnpatel updated the diff for D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops.

Cleaned up tests, and made the changes necessary for changing the attribute names.

Thu, Sep 3, 9:31 PM · Restricted Project
atmnpatel updated the diff for D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.

In Summary:

  • I changed the llvm loop metadata name to mustprogress, to indicate that loops with this attribute are required to have side-effects.
  • The mayprogress function attribute is applied to functions where an infinite loop is found with a constant conditional.
  • The mustprogress attribute is applied to loops within a mayprogress function that do not have a constant conditional.
Thu, Sep 3, 8:52 PM · Restricted Project
atmnpatel updated the diff for D86233: [LangRef] Define mustprogress attribute.

Changing name of function IR attribute from noprogress to mayprogress to make the semantics clearer in that if this attribute is applied to a function, it is now permitted to not make forward progress, but may still make forward progress as opposed to never making any forward progress which is what noprogress sounds like.

Thu, Sep 3, 8:25 PM · Restricted Project