arsenm (Matt Arsenault)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 5 2012, 4:53 PM (266 w, 6 d)

Recent Activity

Today

arsenm updated the diff for D42114: Teach ConstantFoldTerminator to preserve DomTree.

Handle repeated successors correctly. Handle indirectbr, add unit tests.

Tue, Jan 16, 11:35 AM
arsenm created D42114: Teach ConstantFoldTerminator to preserve DomTree.
Tue, Jan 16, 10:08 AM

Yesterday

arsenm added inline comments to D42079: AMDGPU: Add a function attribute that shrinks buggy s_buffer opcodes on GFX9.
Mon, Jan 15, 10:29 AM
arsenm added inline comments to D42079: AMDGPU: Add a function attribute that shrinks buggy s_buffer opcodes on GFX9.
Mon, Jan 15, 10:06 AM
arsenm accepted D42057: [FileCheck] - Fix possible buffer out of bounds access when parsing --check-prefix..

LGTM

Mon, Jan 15, 8:52 AM
arsenm accepted D37985: [AMDGPU] add LDS f32 intrinsics.

LGTM except for the mystery name mangling in the test

Mon, Jan 15, 8:39 AM
arsenm added inline comments to D42057: [FileCheck] - Fix possible buffer out of bounds access when parsing --check-prefix..
Mon, Jan 15, 8:27 AM
arsenm abandoned D1114: Fix assertion failure caused by InlineCost when ptrtoint int size is larger than the pointer size.
Mon, Jan 15, 8:20 AM

Fri, Jan 12

arsenm accepted D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.

LGTM

Fri, Jan 12, 11:37 AM
arsenm accepted D41969: [AMDGPU] stop image_store being moved illegally.

I think changing AMDGPUImagePseudoSourceValue::isAliased() to return true may fix this.

This is the most conservative way to fix it. I think the better way to fix this would be to change AMDGPUImagePseudoSourceValue::mayAlias() to true. You could improve this even further by making sure that image instructions that reference the same resource have the same PseudoSourceValue. ScheduleDAGInstrs::buildSchedGraph() is where all the dependencies are calculated.

Fri, Jan 12, 8:21 AM

Thu, Jan 11

arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Thu, Jan 11, 9:56 AM
arsenm added inline comments to D41126: [SelectionDAG] Fixed f16-from-vector promotion problem.
Thu, Jan 11, 7:58 AM
arsenm added inline comments to D41126: [SelectionDAG] Fixed f16-from-vector promotion problem.
Thu, Jan 11, 7:27 AM

Wed, Jan 10

arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Wed, Jan 10, 2:53 PM
arsenm added inline comments to D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1).
Wed, Jan 10, 8:14 AM

Tue, Jan 9

arsenm accepted D41890: Add explanatory comment to LoadStoreVectorizer..

LGTM

Tue, Jan 9, 6:44 PM
arsenm added inline comments to D41866: AMDGPU: Error in SIAnnotateControlFlow instead of assert.
Tue, Jan 9, 9:11 AM
arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Tue, Jan 9, 9:01 AM
arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Tue, Jan 9, 9:00 AM
arsenm created D41866: AMDGPU: Error in SIAnnotateControlFlow instead of assert.
Tue, Jan 9, 8:08 AM
arsenm added inline comments to D41126: [SelectionDAG] Fixed f16-from-vector promotion problem.
Tue, Jan 9, 8:03 AM
arsenm accepted D41126: [SelectionDAG] Fixed f16-from-vector promotion problem.

LGTM

Tue, Jan 9, 7:59 AM
arsenm accepted D41783: [AMDGPU] Copy impdefs from pseudo to real instructions.

LGTM

Tue, Jan 9, 7:55 AM
arsenm accepted D41292: [AMDGPU] Fixed incorrect uniform branch condition.

LGTM. Are you planning on doing the optimization soon?

Tue, Jan 9, 7:55 AM
arsenm added inline comments to D41832: LLParser: do not verify LLVM module.
Tue, Jan 9, 7:53 AM
arsenm added inline comments to D41715: AMDGPU: Process amdgpu.uniform on loads.
Tue, Jan 9, 7:51 AM
arsenm requested changes to D41651: AMDGPU: Add 32-bit constant address space.

This needs to update AMDGPUAliasAnalysis. Also needs more test coverage. I don't see this testing unaligned access or some of the other places it was added.

Tue, Jan 9, 7:46 AM

Mon, Jan 8

arsenm added inline comments to D41832: LLParser: do not verify LLVM module.
Mon, Jan 8, 1:30 PM
arsenm added inline comments to D41832: LLParser: do not verify LLVM module.
Mon, Jan 8, 12:39 PM
arsenm added inline comments to D41832: LLParser: do not verify LLVM module.
Mon, Jan 8, 12:32 PM

Fri, Jan 5

arsenm committed rL321878: RegionInfo: Use report_fatal_error instead of llvm_unreachable.
RegionInfo: Use report_fatal_error instead of llvm_unreachable
Fri, Jan 5, 9:52 AM

Thu, Jan 4

arsenm added inline comments to D41292: [AMDGPU] Fixed incorrect uniform branch condition.
Thu, Jan 4, 11:47 AM
arsenm abandoned D1251: Teach InlineCost about address spaces.
Thu, Jan 4, 10:41 AM
arsenm committed rL321806: StructurizeCFG: xfail one of the testcases from r321751.
StructurizeCFG: xfail one of the testcases from r321751
Thu, Jan 4, 9:24 AM

Wed, Jan 3

arsenm added a comment to D41719: [InlineCost] Prevent infinite recursion on function pointers.

Needs test

Wed, Jan 3, 3:03 PM
arsenm committed rL321753: Fix missing release metabug in merge-request.sh.
Fix missing release metabug in merge-request.sh
Wed, Jan 3, 10:52 AM
arsenm committed rL321752: AMDGPU: Remove dead file.
AMDGPU: Remove dead file
Wed, Jan 3, 10:46 AM
arsenm closed D41605: StructurizeCFG: Fix broken backedge detection.

r321751

Wed, Jan 3, 10:46 AM
arsenm committed rL321751: StructurizeCFG: Fix broken backedge detection.
StructurizeCFG: Fix broken backedge detection
Wed, Jan 3, 10:46 AM
arsenm accepted D41663: AMDGPU: Add intrinsics llvm.amdgcn.cvt.{pknorm.i16, pknorm.u16, pk.i16, pk.u16}.

LGTM

Wed, Jan 3, 10:23 AM
arsenm accepted D40455: Teach InlineCost about address spaces.

LGTM

Wed, Jan 3, 10:16 AM
arsenm accepted D41634: Branch relaxation - non invertible condition.

LGTM

Wed, Jan 3, 10:13 AM
arsenm added a comment to D41605: StructurizeCFG: Fix broken backedge detection.

ping, this should make it into the release

Wed, Jan 3, 9:58 AM

Tue, Jan 2

arsenm added inline comments to D41651: AMDGPU: Add 32-bit constant address space.
Tue, Jan 2, 8:30 PM
arsenm added inline comments to D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1).
Tue, Jan 2, 2:14 PM
arsenm updated the diff for D41605: StructurizeCFG: Fix broken backedge detection.

Don't have a separate loop discover backedges, and avoid needing to reverse the vector. Still uses the visited set, since the alternative would be to somehow track the visit number which is essentially the same thing.

Tue, Jan 2, 9:18 AM
arsenm added inline comments to D41663: AMDGPU: Add intrinsics llvm.amdgcn.cvt.{pknorm.i16, pknorm.u16, pk.i16, pk.u16}.
Tue, Jan 2, 9:01 AM
arsenm added inline comments to D41663: AMDGPU: Add intrinsics llvm.amdgcn.cvt.{pknorm.i16, pknorm.u16, pk.i16, pk.u16}.
Tue, Jan 2, 7:55 AM

Fri, Dec 29

arsenm added inline comments to D41634: Branch relaxation - non invertible condition.
Fri, Dec 29, 1:50 PM
arsenm closed D41418: IR: Fix BasicBlock::phis for empty blocks.

r321567

Fri, Dec 29, 11:27 AM
arsenm committed rL321568: StructurizeCFG: Use phi iterator range.
StructurizeCFG: Use phi iterator range
Fri, Dec 29, 11:27 AM
arsenm committed rL321567: IR: Fix BasicBlock::phis for empty blocks.
IR: Fix BasicBlock::phis for empty blocks
Fri, Dec 29, 11:27 AM
arsenm closed D41470: AMDGPU: Use unique PSVs for buffer resources.

r321557

Fri, Dec 29, 9:19 AM
arsenm closed D41469: AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores.

r321556

Fri, Dec 29, 9:19 AM
arsenm committed rL321557: AMDGPU: Use unique PSVs for buffer resources.
AMDGPU: Use unique PSVs for buffer resources
Fri, Dec 29, 9:19 AM
arsenm committed rL321556: AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores.
AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores
Fri, Dec 29, 9:19 AM
arsenm closed D41468: AMDGPU: Implement getTgtMemIntrinsic for images.

r321555

Fri, Dec 29, 9:19 AM
arsenm committed rL321555: AMDGPU: Implement getTgtMemIntrinsic for images.
AMDGPU: Implement getTgtMemIntrinsic for images
Fri, Dec 29, 9:19 AM
arsenm accepted D41614: [AMDGPU][MC][GFX8][GFX9] Added XNACK_MASK support.

LGTM

Fri, Dec 29, 8:11 AM

Thu, Dec 28

arsenm added a comment to D41418: IR: Fix BasicBlock::phis for empty blocks.

ping

Thu, Dec 28, 12:42 PM
arsenm added inline comments to D41614: [AMDGPU][MC][GFX8][GFX9] Added XNACK_MASK support.
Thu, Dec 28, 9:07 AM
arsenm added a comment to D41605: StructurizeCFG: Fix broken backedge detection.
Thu, Dec 28, 8:53 AM
arsenm added inline comments to D41614: [AMDGPU][MC][GFX8][GFX9] Added XNACK_MASK support.
Thu, Dec 28, 8:42 AM

Wed, Dec 27

arsenm created D41605: StructurizeCFG: Fix broken backedge detection.
Wed, Dec 27, 5:57 PM
arsenm committed rL321508: AMDGPU: Add MMO to atomic_inc/dec.
AMDGPU: Add MMO to atomic_inc/dec
Wed, Dec 27, 4:27 PM
arsenm updated the diff for D41468: AMDGPU: Implement getTgtMemIntrinsic for images.

Fix rsrc index

Wed, Dec 27, 3:39 PM

Fri, Dec 22

arsenm added inline comments to D39912: AMDGPU/SI: Implement d16 support for image intrinsics.
Fri, Dec 22, 12:22 PM
arsenm added inline comments to D39912: AMDGPU/SI: Implement d16 support for image intrinsics.
Fri, Dec 22, 12:20 PM
arsenm added inline comments to D39912: AMDGPU/SI: Implement d16 support for image intrinsics.
Fri, Dec 22, 12:18 PM
arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Fri, Dec 22, 12:05 PM
arsenm added a comment to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.

Can you add some assembler tests for this, particularly the 3x components ones

Fri, Dec 22, 11:53 AM

Wed, Dec 20

arsenm created D41470: AMDGPU: Use unique PSVs for buffer resources.
Wed, Dec 20, 4:38 PM
arsenm added a dependency for D41469: AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores: D41468: AMDGPU: Implement getTgtMemIntrinsic for images.
Wed, Dec 20, 3:44 PM
arsenm added a dependent revision for D41468: AMDGPU: Implement getTgtMemIntrinsic for images: D41469: AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores.
Wed, Dec 20, 3:44 PM
arsenm created D41469: AMDGPU: Remove mayLoad/hasSideEffects from MIMG stores.
Wed, Dec 20, 3:44 PM
arsenm created D41468: AMDGPU: Implement getTgtMemIntrinsic for images.
Wed, Dec 20, 3:43 PM
arsenm committed rL321212: TableGen: Allow setting SDNodeProperties on intrinsics.
TableGen: Allow setting SDNodeProperties on intrinsics
Wed, Dec 20, 11:37 AM
arsenm closed D40978: TableGen: Allow setting SDNodeProperties on intrinsics.

r321212

Wed, Dec 20, 11:37 AM
arsenm closed D41083: DAG: Tolerate non-MemSDNOdes for OPC_RecordMemRef.

r321208

Wed, Dec 20, 11:12 AM
arsenm committed rL321208: DAG: Tolerate non-MemSDNodes for OPC_RecordMemRef.
DAG: Tolerate non-MemSDNodes for OPC_RecordMemRef
Wed, Dec 20, 11:12 AM
arsenm closed D40638: [AMDGPU, AsmParser] Enable the mnemonic spell corrector..

r321202

Wed, Dec 20, 10:54 AM
arsenm committed rL321202: [AMDGPU, AsmParser] Enable the mnemonic spell corrector..
[AMDGPU, AsmParser] Enable the mnemonic spell corrector.
Wed, Dec 20, 10:54 AM
arsenm accepted D40638: [AMDGPU, AsmParser] Enable the mnemonic spell corrector..

I fixed the test, but the errors are still not great. They weren't great before, so it is only tangentially related.

Wed, Dec 20, 10:53 AM
arsenm requested changes to D40638: [AMDGPU, AsmParser] Enable the mnemonic spell corrector..

There is a test failure with this. This seems to do the wrong thing when there are subtarget differences with the instruction.

Wed, Dec 20, 10:32 AM
arsenm added inline comments to D37985: [AMDGPU] add LDS f32 intrinsics.
Wed, Dec 20, 9:19 AM

Tue, Dec 19

arsenm created D41418: IR: Fix BasicBlock::phis for empty blocks.
Tue, Dec 19, 3:37 PM
arsenm accepted D41377: [AMDGPU] Turn off MergeConsecutiveStores() before Instruction Selection for AMDGPU.

LGTM

Tue, Dec 19, 11:17 AM
arsenm accepted D41377: [AMDGPU] Turn off MergeConsecutiveStores() before Instruction Selection for AMDGPU.

LGTM with minor fixes

Tue, Dec 19, 10:26 AM
arsenm added inline comments to D41377: [AMDGPU] Turn off MergeConsecutiveStores() before Instruction Selection for AMDGPU.
Tue, Dec 19, 10:00 AM

Mon, Dec 18

arsenm committed rL321001: Removed unused DominanceFrontier.
Removed unused DominanceFrontier
Mon, Dec 18, 10:02 AM
arsenm added inline comments to D41126: [SelectionDAG] Fixed f16-from-vector promotion problem.
Mon, Dec 18, 9:27 AM
arsenm updated the diff for D40978: TableGen: Allow setting SDNodeProperties on intrinsics.

Change comment

Mon, Dec 18, 9:12 AM
arsenm updated the diff for D41083: DAG: Tolerate non-MemSDNOdes for OPC_RecordMemRef.

Add some debug printing

Mon, Dec 18, 8:57 AM

Dec 15 2017

arsenm added a comment to D41292: [AMDGPU] Fixed incorrect uniform branch condition.
In D41292#956918, @tpr wrote:

Ah, I didn't see r286134.

How do you mean, partially revert it? It looks like I want to completely revert it and fix the comment for semantic correctness, then think about optimizing the cases when the s_and is not needed.

I mean mostly keep it, just re-insert the and when the branch condition isn't known to be a compare like it implicitly assumes

Dec 15 2017, 9:58 AM
arsenm added a comment to D41292: [AMDGPU] Fixed incorrect uniform branch condition.
In D41292#956918, @tpr wrote:

Ah, I didn't see r286134.

How do you mean, partially revert it? It looks like I want to completely revert it and fix the comment for semantic correctness, then think about optimizing the cases when the s_and is not needed.

Dec 15 2017, 9:57 AM
arsenm added inline comments to D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics.
Dec 15 2017, 9:55 AM
arsenm added a comment to D41292: [AMDGPU] Fixed incorrect uniform branch condition.

The clearing extra clearing when moving branch on scc was a leftover that should have been removed in r286134. I also don't understand why it would be needed in that case, since the moved condition is going to be a V_CMP* that does the right thing for inactive lanes.

Dec 15 2017, 8:19 AM

Dec 14 2017

arsenm committed rL320756: TLI: Allow using PSV for intrinsic mem operands.
TLI: Allow using PSV for intrinsic mem operands
Dec 14 2017, 2:35 PM
arsenm closed D40913: TLI: Allow using PSV for intrinsic mem operands.

r320756

Dec 14 2017, 2:34 PM
arsenm committed rL320746: DAG: Expose all MMO flags in getTgtMemIntrinsic.
DAG: Expose all MMO flags in getTgtMemIntrinsic
Dec 14 2017, 1:40 PM