Page MenuHomePhabricator

cdevadas (Christudasan Devadasan)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 29 2019, 11:13 PM (89 w, 6 d)

Recent Activity

Thu, Jan 7

cdevadas closed D94156: AMDGPU/GlobalISel: Enable sret demotion.

ae25a397e9de833ffbd5d8e3b480086404625cb7

Thu, Jan 7, 9:30 PM · Restricted Project
cdevadas committed rGae25a397e9de: AMDGPU/GlobalISel: Enable sret demotion (authored by cdevadas).
AMDGPU/GlobalISel: Enable sret demotion
Thu, Jan 7, 9:27 PM
cdevadas updated the diff for D94156: AMDGPU/GlobalISel: Enable sret demotion.

Added two more tests to address the review comment.

Thu, Jan 7, 5:08 AM · Restricted Project

Wed, Jan 6

cdevadas accepted D93337: AMDGPU/GlobalISel: Start cleaning up calling convention lowering.

LGTM

Wed, Jan 6, 8:16 PM · Restricted Project
cdevadas added inline comments to D93337: AMDGPU/GlobalISel: Start cleaning up calling convention lowering.
Wed, Jan 6, 5:12 AM · Restricted Project

Tue, Jan 5

cdevadas requested review of D94156: AMDGPU/GlobalISel: Enable sret demotion.
Tue, Jan 5, 10:56 PM · Restricted Project
cdevadas committed rGd68458bd56d9: [GlobalISel] Base implementation for sret demotion. (authored by cdevadas).
[GlobalISel] Base implementation for sret demotion.
Tue, Jan 5, 9:07 PM
cdevadas closed D92953: [GlobalISel] Base implementation for sret demotion..
Tue, Jan 5, 9:07 PM · Restricted Project

Mon, Jan 4

cdevadas added a comment to D86836: Support a list of CostPerUse values.

Ping

Mon, Jan 4, 7:46 AM · Restricted Project
cdevadas added a comment to D92953: [GlobalISel] Base implementation for sret demotion..

Ping

Mon, Jan 4, 7:46 AM · Restricted Project

Dec 17 2020

cdevadas added a comment to D92953: [GlobalISel] Base implementation for sret demotion..

Ping

Dec 17 2020, 6:37 AM · Restricted Project

Dec 15 2020

cdevadas added inline comments to D92953: [GlobalISel] Base implementation for sret demotion..
Dec 15 2020, 4:10 AM · Restricted Project

Dec 13 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

ping

Dec 13 2020, 8:36 PM · Restricted Project

Dec 9 2020

cdevadas added a comment to D92953: [GlobalISel] Base implementation for sret demotion..

Not sure I can have one at this point.
There is a follow-up patch I am making to enable it for AMDGPU. I will have some tests along with that.

Dec 9 2020, 11:30 AM · Restricted Project
cdevadas requested review of D92953: [GlobalISel] Base implementation for sret demotion..
Dec 9 2020, 11:07 AM · Restricted Project

Dec 3 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

@qcolombet can you review this patch?

Dec 3 2020, 11:05 AM · Restricted Project

Nov 20 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

Ping

Nov 20 2020, 4:37 AM · Restricted Project

Nov 13 2020

cdevadas updated the diff for D86836: Support a list of CostPerUse values.

rebase + elaborated the comment in Target.td

Nov 13 2020, 12:08 AM · Restricted Project

Nov 6 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

Ping

Nov 6 2020, 5:21 AM · Restricted Project

Nov 2 2020

cdevadas updated the diff for D86836: Support a list of CostPerUse values.

Added testcases.

Nov 2 2020, 3:29 AM · Restricted Project

Nov 1 2020

cdevadas committed rGd6aa4aa29a25: [AMDGPU] Some refactoring after D90404. NFC. (authored by cdevadas).
[AMDGPU] Some refactoring after D90404. NFC.
Nov 1 2020, 12:55 AM
cdevadas committed rG9bb2b4f0aacd: [AMDGPU] Add alignment check for v3 to v4 load type promotion (authored by cdevadas).
[AMDGPU] Add alignment check for v3 to v4 load type promotion
Nov 1 2020, 12:34 AM
cdevadas closed D90404: [AMDGPU] Add alignment check for v3 to v4 load type promotion.
Nov 1 2020, 12:34 AM · Restricted Project

Oct 30 2020

cdevadas updated the diff for D90404: [AMDGPU] Add alignment check for v3 to v4 load type promotion.

Addressed the suggestion by @foad to include the Dereferenceable check on MMO.

Oct 30 2020, 11:49 AM · Restricted Project
cdevadas updated the diff for D90404: [AMDGPU] Add alignment check for v3 to v4 load type promotion.

Made the alignment check to 8-byte boundary instead of 16-byte.

Oct 30 2020, 12:38 AM · Restricted Project

Oct 29 2020

cdevadas updated the diff for D90404: [AMDGPU] Add alignment check for v3 to v4 load type promotion.

Used -DAG to fix the test.

Oct 29 2020, 9:44 AM · Restricted Project
cdevadas requested review of D90404: [AMDGPU] Add alignment check for v3 to v4 load type promotion.
Oct 29 2020, 9:09 AM · Restricted Project

Oct 25 2020

cdevadas committed rG5a061041ec4c: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses (authored by cdevadas).
[AMDGPU] Avoid offset register in MUBUF for direct stack object accesses
Oct 25 2020, 10:58 PM
cdevadas closed D89234: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses.
Oct 25 2020, 10:58 PM · Restricted Project

Oct 23 2020

cdevadas added a comment to D89234: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses.

Ping

Oct 23 2020, 4:04 AM · Restricted Project

Oct 19 2020

cdevadas updated the diff for D89234: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses.

Used the FI directly in MI if available during ISel. Fixed an unhandled case during eliminateFrameIndex.
Also fixed the assertions to make sure the soffset field is relevant.

Oct 19 2020, 11:34 PM · Restricted Project

Oct 16 2020

cdevadas added inline comments to D86836: Support a list of CostPerUse values.
Oct 16 2020, 12:40 AM · Restricted Project

Oct 13 2020

cdevadas added a comment to D89234: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses.

At global-isel, it has already been taken care of.
The asserts - the cases where it is expecting a register is specifically for sp relative accesses and won't cause a problem after this patch.

Oct 13 2020, 5:13 AM · Restricted Project

Oct 12 2020

cdevadas requested review of D89234: [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses.
Oct 12 2020, 4:37 AM · Restricted Project

Oct 11 2020

cdevadas added inline comments to D86836: Support a list of CostPerUse values.
Oct 11 2020, 7:17 AM · Restricted Project

Oct 7 2020

cdevadas updated the diff for D86836: Support a list of CostPerUse values.

rebase + ping

Oct 7 2020, 2:02 AM · Restricted Project

Sep 7 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

Ping @stoklund @MatzeB or anyone interested in this patch.
Appreciate it if this gets reviewed soon.

Sep 7 2020, 11:57 PM · Restricted Project

Sep 3 2020

cdevadas added a comment to D86836: Support a list of CostPerUse values.

Ping

Sep 3 2020, 2:25 AM · Restricted Project

Sep 1 2020

cdevadas added a reviewer for D86836: Support a list of CostPerUse values: MatzeB.
Sep 1 2020, 8:04 AM · Restricted Project

Aug 31 2020

cdevadas updated the diff for D86836: Support a list of CostPerUse values.

Addressed the review comments.

Aug 31 2020, 3:15 AM · Restricted Project
cdevadas added inline comments to D86836: Support a list of CostPerUse values.
Aug 31 2020, 3:12 AM · Restricted Project

Aug 29 2020

cdevadas requested review of D86836: Support a list of CostPerUse values.
Aug 29 2020, 5:23 AM · Restricted Project

Jul 30 2020

cdevadas added a comment to D20758: Support addrspacecast initializers with isNoopAddrSpaceCast.

Can we have this patch reviewed soon?
Appreciate any response.

Jul 30 2020, 8:06 PM · Restricted Project

Jul 20 2020

cdevadas closed D78664: [AMDGPU] Add the SGPR used for FP copy to block livein lists..

It has been merged with https://reviews.llvm.org/rG207cd5f68fabbf760c7e66dc6c49e833f3f6f953.

Jul 20 2020, 8:40 AM · Restricted Project

Jul 11 2020

cdevadas committed rGd7a05698efcf: [AMDGPU] Move LowerSwitch pass to CodeGenPrepare. (authored by cdevadas).
[AMDGPU] Move LowerSwitch pass to CodeGenPrepare.
Jul 11 2020, 4:22 AM
cdevadas closed D83584: [AMDGPU] Move LowerSwitch pass to CodeGenPrepare..
Jul 11 2020, 4:22 AM · Restricted Project
cdevadas updated the diff for D83584: [AMDGPU] Move LowerSwitch pass to CodeGenPrepare..

Expanded the comment.

Jul 11 2020, 3:25 AM · Restricted Project

Jul 10 2020

cdevadas updated the diff for D83584: [AMDGPU] Move LowerSwitch pass to CodeGenPrepare..

Incorporated the suggestions.

Jul 10 2020, 7:10 PM · Restricted Project
Herald added a project to D83584: [AMDGPU] Move LowerSwitch pass to CodeGenPrepare.: Restricted Project.
Jul 10 2020, 12:35 PM · Restricted Project

Jun 29 2020

cdevadas committed rG226cda58d505: [AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips. (authored by cdevadas).
[AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips.
Jun 29 2020, 8:37 AM
cdevadas closed D77544: [AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips..
Jun 29 2020, 8:37 AM · Restricted Project

Jun 26 2020

cdevadas added a comment to D82641: [AMDGPU] Unify early PS termination blocks.

We are trying to have the kill intrinsic handling early during the instruction selection.
I can try to incorporate it all entirely there including the unify block code (if can't find a better place now to have it).
I will also update D77544 if this patch goes upstream.

Jun 26 2020, 8:22 PM · Restricted Project
cdevadas added a comment to D77544: [AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips..

Ping

Jun 26 2020, 3:13 AM · Restricted Project

Jun 18 2020

cdevadas updated the diff for D77544: [AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips..

Rebase + added lit test

Jun 18 2020, 3:14 AM · Restricted Project

Jun 2 2020

cdevadas accepted D80931: AMDGPU: Fix clang side null pointer value for private.

LGTM

Jun 2 2020, 3:52 AM

May 17 2020

cdevadas committed rG7c4e711ef8d8: [AMDGPU] Enable base pointer. (authored by cdevadas).
[AMDGPU] Enable base pointer.
May 17 2020, 4:47 AM
cdevadas closed D78811: [AMDGPU] Enable base pointer..
May 17 2020, 4:47 AM · Restricted Project

May 14 2020

cdevadas added inline comments to D76882: [AMDGPU] Implement CFI for non-kernel functions.
May 14 2020, 9:11 AM · debug-info, Restricted Project

May 13 2020

cdevadas added inline comments to D76882: [AMDGPU] Implement CFI for non-kernel functions.
May 13 2020, 6:59 AM · debug-info, Restricted Project

May 12 2020

cdevadas added inline comments to D78811: [AMDGPU] Enable base pointer..
May 12 2020, 9:07 AM · Restricted Project

May 11 2020

cdevadas added a comment to D78811: [AMDGPU] Enable base pointer..

Ping

May 11 2020, 12:24 PM · Restricted Project

May 8 2020

cdevadas added inline comments to D78811: [AMDGPU] Enable base pointer..
May 8 2020, 1:25 PM · Restricted Project

May 7 2020

cdevadas added inline comments to D70379: [AMDGPU] Reserving VGPR for future SGPR Spill.
May 7 2020, 9:40 AM · Restricted Project, Restricted Project

May 5 2020

cdevadas committed rGb8a616ec59f8: [AMDGPU] Fixed the test by adding the triple. (authored by cdevadas).
[AMDGPU] Fixed the test by adding the triple.
May 5 2020, 11:53 AM
cdevadas committed rG375cec4b6c85: [AMDGPU] Introduce more scratch registers in the ABI. (authored by cdevadas).
[AMDGPU] Introduce more scratch registers in the ABI.
May 5 2020, 10:47 AM
cdevadas closed D76356: [AMDGPU] Introduce more scratch registers in the ABI..
May 5 2020, 10:47 AM · Restricted Project

May 4 2020

cdevadas updated the diff for D78811: [AMDGPU] Enable base pointer..

Rebase + Suggestions.

May 4 2020, 11:15 AM · Restricted Project

May 3 2020

cdevadas updated the diff for D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Fixed the testcase.

May 3 2020, 10:37 AM · Restricted Project

May 1 2020

cdevadas added a comment to D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Ping

May 1 2020, 5:09 PM · Restricted Project
cdevadas updated the diff for D78811: [AMDGPU] Enable base pointer..

Incorporated the suggestions.

May 1 2020, 5:09 PM · Restricted Project

Apr 30 2020

cdevadas added inline comments to D78811: [AMDGPU] Enable base pointer..
Apr 30 2020, 2:25 AM · Restricted Project

Apr 29 2020

cdevadas updated the diff for D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Divided the VGPRs into equal number of CSRs and scratch registers. Also, added a test case for VGPR tuple allocation.

Apr 29 2020, 3:39 PM · Restricted Project

Apr 26 2020

cdevadas updated the diff for D78811: [AMDGPU] Enable base pointer..

Incorporated the suggestions.

Apr 26 2020, 11:09 AM · Restricted Project
cdevadas added inline comments to D78811: [AMDGPU] Enable base pointer..
Apr 26 2020, 10:37 AM · Restricted Project

Apr 24 2020

cdevadas created D78811: [AMDGPU] Enable base pointer..
Apr 24 2020, 9:09 AM · Restricted Project

Apr 23 2020

cdevadas committed rG207cd5f68fab: [AMDGPU] Add the SGPR used for FP copy to block livein lists. (authored by cdevadas).
[AMDGPU] Add the SGPR used for FP copy to block livein lists.
Apr 23 2020, 11:57 PM
cdevadas updated the diff for D78664: [AMDGPU] Add the SGPR used for FP copy to block livein lists..

Added a small description of the test.

Apr 23 2020, 1:02 AM · Restricted Project

Apr 22 2020

cdevadas created D78664: [AMDGPU] Add the SGPR used for FP copy to block livein lists..
Apr 22 2020, 1:03 PM · Restricted Project

Apr 6 2020

cdevadas created D77544: [AMDGPU] Moving SI_RETURN_TO_EPILOG handling out of SIInsertSkips..
Apr 6 2020, 5:55 AM · Restricted Project

Mar 26 2020

cdevadas added a comment to D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Thank you all for the comments.
I can see that there are concerns with the current split boundary (4 VGPRs together), considering the fact that we have wide VGPR uses in certain scenarios (image instructions).
But, like Matt mentioned, how frequently such scenarios occur?
Changing the split boundary to a large value would probably take away the whole purpose of this patch - reduce the CSR spills & try to ensure a better occupancy.

What will happen if you need to pass VReg_1024 into a function? It might not be a common case, but will it even work?

It works, but that isn't changed by this patch. This is not changing the argument registers which are all still in v0-v31. I believe the largest argument type we pass in registers is <8 x i32>, and force <32 x i32> to be stack passed anyway

OK. What if such a register needs to be preserved by a caller? I guess there is no safe window for it, so it will be forced to spill. Then we will spill a whole huge register, not just a part of it, because we do not use sublane spilling (except to AGPRs), right?

Yes, that's what I would expect

Then probably interleave 4 is not a best choice. We may also need to adjust cost of tuples to make aligned allocation more likely.

A cost for VGPR registers has been handled with https://reviews.llvm.org/D76417. This will ensure a balanced allocation of scratch registers & CSRs at every split (once the current patch is in the upstream).

Mar 26 2020, 9:45 AM · Restricted Project

Mar 25 2020

cdevadas committed rGce984129eaa5: [AMDGPU] Add SIPreEmitPeephole pass. (authored by cdevadas).
[AMDGPU] Add SIPreEmitPeephole pass.
Mar 25 2020, 8:38 AM
cdevadas closed D76712: [AMDGPU] Add SIPreEmitPeephole pass..
Mar 25 2020, 8:38 AM · Restricted Project

Mar 24 2020

cdevadas added a comment to D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Thank you all for the comments.
I can see that there are concerns with the current split boundary (4 VGPRs together), considering the fact that we have wide VGPR uses in certain scenarios (image instructions).
But, like Matt mentioned, how frequently such scenarios occur?
Changing the split boundary to a large value would probably take away the whole purpose of this patch - reduce the CSR spills & try to ensure a better occupancy.

Mar 24 2020, 10:11 AM · Restricted Project
cdevadas created D76712: [AMDGPU] Add SIPreEmitPeephole pass..
Mar 24 2020, 9:39 AM · Restricted Project
cdevadas abandoned D75504: [AMDGPU] moving vcc branch optimization into peephole.

Abandoning this review.
This optimization should be handled late after Basic Block Placement. A new review will be opened by handling it in a late pass.

Mar 24 2020, 9:39 AM · Restricted Project

Mar 21 2020

cdevadas added inline comments to D76356: [AMDGPU] Introduce more scratch registers in the ABI..
Mar 21 2020, 10:40 AM · Restricted Project
cdevadas added inline comments to D76356: [AMDGPU] Introduce more scratch registers in the ABI..
Mar 21 2020, 8:01 AM · Restricted Project

Mar 20 2020

cdevadas updated the diff for D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Added a brief description of the register split (AMDGPUUsage.rst).

Mar 20 2020, 1:34 PM · Restricted Project
cdevadas added inline comments to D75504: [AMDGPU] moving vcc branch optimization into peephole.
Mar 20 2020, 4:18 AM · Restricted Project
cdevadas updated the diff for D76356: [AMDGPU] Introduce more scratch registers in the ABI..

rebase

Mar 20 2020, 3:13 AM · Restricted Project

Mar 19 2020

cdevadas committed rG728b878de689: [AMDGPU] Set the CostPerUse value for vgpr registers. (authored by cdevadas).
[AMDGPU] Set the CostPerUse value for vgpr registers.
Mar 19 2020, 11:25 PM
cdevadas closed D76417: [AMDGPU] Set a cost model for vgpr registers..
Mar 19 2020, 11:25 PM · Restricted Project
cdevadas created D76417: [AMDGPU] Set a cost model for vgpr registers..
Mar 19 2020, 12:30 AM · Restricted Project

Mar 18 2020

cdevadas updated the diff for D76356: [AMDGPU] Introduce more scratch registers in the ABI..

Reverted the changes made on the CostPerUse value.
It will go in a follow-up commit after this review.

Mar 18 2020, 11:57 AM · Restricted Project
cdevadas added inline comments to D76356: [AMDGPU] Introduce more scratch registers in the ABI..
Mar 18 2020, 8:41 AM · Restricted Project
cdevadas created D76356: [AMDGPU] Introduce more scratch registers in the ABI..
Mar 18 2020, 6:30 AM · Restricted Project

Mar 11 2020

cdevadas updated the diff for D75504: [AMDGPU] moving vcc branch optimization into peephole.

incorporated the suggestion.

Mar 11 2020, 10:45 AM · Restricted Project

Mar 7 2020

cdevadas added inline comments to D75504: [AMDGPU] moving vcc branch optimization into peephole.
Mar 7 2020, 9:08 AM · Restricted Project

Mar 3 2020

cdevadas added inline comments to D75504: [AMDGPU] moving vcc branch optimization into peephole.
Mar 3 2020, 7:37 PM · Restricted Project
cdevadas created D75504: [AMDGPU] moving vcc branch optimization into peephole.
Mar 3 2020, 12:23 AM · Restricted Project