Page MenuHomePhabricator

c-rhodes (Cullen Rhodes)
User

Projects

User does not belong to any projects.

User Details

User Since
May 18 2016, 6:13 AM (170 w, 3 d)

Recent Activity

Thu, Aug 22

c-rhodes added inline comments to D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
Thu, Aug 22, 7:59 AM · Restricted Project
c-rhodes updated the diff for D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
  • Used existing masked.load intrinsic in .ll test that checks the verifier catches bad type when passing a fixed-width vector where a scalable is expected.
  • Removed definition of abs and neg intrinsics that were previously used in the above test, these are implemented in the follow-up patch.
  • Updated call to CreateIntrinsic in IRBuilderTest to make types argument empty for call to fp-convert intrinsic, only required for overloaded types.
Thu, Aug 22, 7:29 AM · Restricted Project
c-rhodes added inline comments to D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
Thu, Aug 22, 3:50 AM · Restricted Project

Mon, Aug 19

c-rhodes added a comment to D65931: [AArch64][SVE] Implement abs and neg intrinsics.

Is it worth adding in ISD::ABS support here ?

Mon, Aug 19, 9:00 AM · Restricted Project

Fri, Aug 16

c-rhodes added a comment to D65931: [AArch64][SVE] Implement abs and neg intrinsics.

@greened sorry for the delayed response, thanks for taking a look at this.

Fri, Aug 16, 3:48 AM · Restricted Project
c-rhodes updated the diff for D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
  • Moved the intrinsic implementation for abs/neg (without codegen) from D65931 so this patch can be tested.
  • Added tests for IRBuilder to test scalable vectors work as expected when using intrinsics through the IRBuilder interface. This required implementing an intrinsic that is explicitly defined with scalable vectors, e.g. LLVMType<nxv4i32>, an SVE floating-point convert intrinsic was used for this. Also tested the behaviour of the overloaded type LLVMScalarOrSameVectorWidth with scalable vectors using the existing masked load intrinsic.
  • Replace uses of getNumElements with getElementCount when handling intrinsic type LLVMScalarOrSameVectorWidth so it can correctly support scalable vectors.
  • Added an .ll test to test the Verifier catches a bad intrinsic argument when passing a fixed-width predicate (mask) to the abs intrinsic where a scalable is expected.
Fri, Aug 16, 3:41 AM · Restricted Project

Thu, Aug 8

c-rhodes added a comment to D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.

Specifically to assert that passing a fixed-width vector where a scalable vector is expected (and vice-versa), fails.

Thu, Aug 8, 6:45 AM · Restricted Project
c-rhodes added a comment to D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.

I've posted a follow-up patch (D65931) to Phabricator that tests this functionality by implementing intrinsics for a couple of SVE arithmetic instructions.

Thu, Aug 8, 2:38 AM · Restricted Project
c-rhodes added a child revision for D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics: D65931: [AArch64][SVE] Implement abs and neg intrinsics.
Thu, Aug 8, 2:32 AM · Restricted Project
c-rhodes added a parent revision for D65931: [AArch64][SVE] Implement abs and neg intrinsics: D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
Thu, Aug 8, 2:32 AM · Restricted Project
c-rhodes created D65930: [IntrinsicEmitter] Support scalable vectors in intrinsics.
Thu, Aug 8, 2:31 AM · Restricted Project
c-rhodes created D65931: [AArch64][SVE] Implement abs and neg intrinsics.
Thu, Aug 8, 2:31 AM · Restricted Project

Tue, Aug 6

c-rhodes committed rGced419f4d76a: [SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER (authored by c-rhodes).
[SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER
Tue, Aug 6, 2:49 AM
c-rhodes committed rL368008: [SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER.
[SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER
Tue, Aug 6, 2:49 AM
c-rhodes closed D65636: [SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER.
Tue, Aug 6, 2:49 AM · Restricted Project

Mon, Aug 5

c-rhodes committed rG2a4817637350: [AArch64] Implement initial SVE calling convention support (authored by c-rhodes).
[AArch64] Implement initial SVE calling convention support
Mon, Aug 5, 6:46 AM
c-rhodes committed rL367859: [AArch64] Implement initial SVE calling convention support.
[AArch64] Implement initial SVE calling convention support
Mon, Aug 5, 6:43 AM
c-rhodes closed D65448: [AArch64] Implement initial SVE calling convention support.
Mon, Aug 5, 6:43 AM · Restricted Project

Fri, Aug 2

c-rhodes added a comment to D65448: [AArch64] Implement initial SVE calling convention support.

@ostannard Thanks for review!

Fri, Aug 2, 1:28 AM · Restricted Project
c-rhodes created D65636: [SelectionDAG] Extend base addressing modes supported by MGATHER/MSCATTER.
Fri, Aug 2, 1:22 AM · Restricted Project

Wed, Jul 31

c-rhodes updated the diff for D65448: [AArch64] Implement initial SVE calling convention support.
  • Improved tests
  • Fixed up comments
Wed, Jul 31, 8:15 AM · Restricted Project
c-rhodes committed rG1518c88a7d44: [AArch64][SVE2] Load/store instruction fixes (authored by c-rhodes).
[AArch64][SVE2] Load/store instruction fixes
Wed, Jul 31, 2:11 AM
c-rhodes committed rL367398: [AArch64][SVE2] Load/store instruction fixes.
[AArch64][SVE2] Load/store instruction fixes
Wed, Jul 31, 2:11 AM
c-rhodes closed D65392: [AArch64][SVE2] Load/store instruction fixes.
Wed, Jul 31, 2:11 AM · Restricted Project
c-rhodes committed rG17230e026df7: [AArch64][SVE2] Minor refactoring and cleanup (authored by c-rhodes).
[AArch64][SVE2] Minor refactoring and cleanup
Wed, Jul 31, 1:59 AM
c-rhodes committed rL367396: [AArch64][SVE2] Minor refactoring and cleanup.
[AArch64][SVE2] Minor refactoring and cleanup
Wed, Jul 31, 1:58 AM
c-rhodes closed D65390: [AArch64][SVE2] Minor refactoring and cleanup.
Wed, Jul 31, 1:57 AM · Restricted Project
c-rhodes committed rGe8eb8b9c3adb: [AArch64][SVE2] Use destination register as source register (authored by c-rhodes).
[AArch64][SVE2] Use destination register as source register
Wed, Jul 31, 1:47 AM
c-rhodes committed rL367394: [AArch64][SVE2] Use destination register as source register.
[AArch64][SVE2] Use destination register as source register
Wed, Jul 31, 1:45 AM
c-rhodes closed D65389: [AArch64][SVE2] Use destination register as source register.
Wed, Jul 31, 1:45 AM · Restricted Project

Tue, Jul 30

c-rhodes created D65448: [AArch64] Implement initial SVE calling convention support.
Tue, Jul 30, 6:50 AM · Restricted Project
c-rhodes added a child revision for D47770: [MVT][SVE] Add EVT strings and Type mapping: D65448: [AArch64] Implement initial SVE calling convention support.
Tue, Jul 30, 6:50 AM · Restricted Project
c-rhodes added a parent revision for D65448: [AArch64] Implement initial SVE calling convention support: D47770: [MVT][SVE] Add EVT strings and Type mapping.
Tue, Jul 30, 6:50 AM · Restricted Project
c-rhodes committed rG3db0ad8a3035: [AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser (authored by c-rhodes).
[AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser
Tue, Jul 30, 12:50 AM
c-rhodes committed rL367292: [AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser.
[AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser
Tue, Jul 30, 12:48 AM
c-rhodes closed D65385: [AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser.
Tue, Jul 30, 12:48 AM · Restricted Project
c-rhodes added a comment to D65385: [AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser.

Right, ArchExtKind was supposed to be shared between Arm and AArch64, but that ship has sailed a long time ago. LGTM, thanks!

Tue, Jul 30, 12:28 AM · Restricted Project

Mon, Jul 29

c-rhodes created D65392: [AArch64][SVE2] Load/store instruction fixes.
Mon, Jul 29, 7:36 AM · Restricted Project
c-rhodes created D65390: [AArch64][SVE2] Minor refactoring and cleanup.
Mon, Jul 29, 7:36 AM · Restricted Project
Herald added a reviewer for D65385: [AArch64][AsmParser] Remove SVE and SVE2 from ARMTargetParser: rengolin.
Mon, Jul 29, 7:36 AM · Restricted Project
c-rhodes created D65389: [AArch64][SVE2] Use destination register as source register.
Mon, Jul 29, 7:36 AM · Restricted Project

Fri, Jul 26

c-rhodes committed rG2cde8b5db62c: [AArch64][SVE2] Rename bitperm feature to sve2-bitperm (authored by c-rhodes).
[AArch64][SVE2] Rename bitperm feature to sve2-bitperm
Fri, Jul 26, 8:59 AM
c-rhodes committed rL367124: [AArch64][SVE2] Rename bitperm feature to sve2-bitperm.
[AArch64][SVE2] Rename bitperm feature to sve2-bitperm
Fri, Jul 26, 8:59 AM
c-rhodes closed D65327: [AArch64][SVE2] Rename bitperm feature to sve2-bitperm.
Fri, Jul 26, 8:58 AM · Restricted Project
c-rhodes created D65327: [AArch64][SVE2] Rename bitperm feature to sve2-bitperm.
Fri, Jul 26, 3:51 AM · Restricted Project

Jun 7 2019

c-rhodes committed rG1f0d25124498: [AArch64][AsmParser] error on unexpected SVE predicate type suffix (authored by c-rhodes).
[AArch64][AsmParser] error on unexpected SVE predicate type suffix
Jun 7 2019, 1:48 AM
c-rhodes committed rL362780: [AArch64][AsmParser] error on unexpected SVE predicate type suffix.
[AArch64][AsmParser] error on unexpected SVE predicate type suffix
Jun 7 2019, 1:44 AM
c-rhodes closed D62942: [PATCH 2/2] [AArch64][AsmParser] error on unexpected SVE predicate type suffix.
Jun 7 2019, 1:44 AM · Restricted Project
c-rhodes committed rL362779: [AArch64][AsmParser] Provide better diagnostics for SVE predicates.
[AArch64][AsmParser] Provide better diagnostics for SVE predicates
Jun 7 2019, 1:36 AM
c-rhodes committed rGf7305484841f: [AArch64][AsmParser] Provide better diagnostics for SVE predicates (authored by c-rhodes).
[AArch64][AsmParser] Provide better diagnostics for SVE predicates
Jun 7 2019, 1:35 AM
c-rhodes closed D62941: [PATCH 1/2] [AArch64][AsmParser] Provide better diagnostics for SVE predicates.
Jun 7 2019, 1:35 AM · Restricted Project

Jun 6 2019

c-rhodes added inline comments to D62942: [PATCH 2/2] [AArch64][AsmParser] error on unexpected SVE predicate type suffix.
Jun 6 2019, 1:52 AM · Restricted Project
c-rhodes added a parent revision for D62942: [PATCH 2/2] [AArch64][AsmParser] error on unexpected SVE predicate type suffix: D62941: [PATCH 1/2] [AArch64][AsmParser] Provide better diagnostics for SVE predicates.
Jun 6 2019, 1:36 AM · Restricted Project
c-rhodes added a child revision for D62941: [PATCH 1/2] [AArch64][AsmParser] Provide better diagnostics for SVE predicates: D62942: [PATCH 2/2] [AArch64][AsmParser] error on unexpected SVE predicate type suffix.
Jun 6 2019, 1:36 AM · Restricted Project
c-rhodes created D62942: [PATCH 2/2] [AArch64][AsmParser] error on unexpected SVE predicate type suffix.
Jun 6 2019, 1:34 AM · Restricted Project
c-rhodes created D62941: [PATCH 1/2] [AArch64][AsmParser] Provide better diagnostics for SVE predicates.
Jun 6 2019, 1:34 AM · Restricted Project

Jun 3 2019

c-rhodes abandoned D61262: [AArch64] Implement MC support for Scalable Vector Extension 2 (SVE2).

This was split up into smaller patches, all have now been merged. Abandoning this revision.

Jun 3 2019, 3:43 AM · Restricted Project
c-rhodes committed rG3901dd3e4126: [AArch64][SVE2] Add CPU and arch directive tests (authored by c-rhodes).
[AArch64][SVE2] Add CPU and arch directive tests
Jun 3 2019, 3:40 AM
c-rhodes committed rL362378: [AArch64][SVE2] Add CPU and arch directive tests.
[AArch64][SVE2] Add CPU and arch directive tests
Jun 3 2019, 3:40 AM
c-rhodes closed D62602: [AArch64][SVE2] Add CPU and arch directive tests.
Jun 3 2019, 3:40 AM · Restricted Project
c-rhodes updated the diff for D62602: [AArch64][SVE2] Add CPU and arch directive tests.

Addressed Momchil's comments: explicitly enable/disable arch features in negative directive tests.

Jun 3 2019, 3:15 AM · Restricted Project

May 31 2019

c-rhodes committed rG0fc3a0739850: [AArch64][SVE2] Asm: support WHILE instructions (authored by c-rhodes).
[AArch64][SVE2] Asm: support WHILE instructions
May 31 2019, 2:14 AM
c-rhodes committed rL362215: [AArch64][SVE2] Asm: support WHILE instructions.
[AArch64][SVE2] Asm: support WHILE instructions
May 31 2019, 2:14 AM
c-rhodes closed D62601: [AArch64][SVE2] Asm: support WHILE instructions.
May 31 2019, 2:14 AM · Restricted Project
c-rhodes committed rG087d1337f8a9: [AArch64][SVE2] Asm: support TBL/TBX instructions (authored by c-rhodes).
[AArch64][SVE2] Asm: support TBL/TBX instructions
May 31 2019, 2:05 AM
c-rhodes committed rL362214: [AArch64][SVE2] Asm: support TBL/TBX instructions.
[AArch64][SVE2] Asm: support TBL/TBX instructions
May 31 2019, 2:05 AM
c-rhodes closed D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions.
May 31 2019, 2:05 AM · Restricted Project
c-rhodes committed rG2e870011b620: [AArch64][SVE2] Asm: support SVE2 store instructions (authored by c-rhodes).
[AArch64][SVE2] Asm: support SVE2 store instructions
May 31 2019, 1:58 AM
c-rhodes committed rL362213: [AArch64][SVE2] Asm: support SVE2 store instructions.
[AArch64][SVE2] Asm: support SVE2 store instructions
May 31 2019, 1:58 AM
c-rhodes closed D62599: [AArch64][SVE2] Asm: support SVE2 store instructions.
May 31 2019, 1:58 AM · Restricted Project
c-rhodes added inline comments to D62602: [AArch64][SVE2] Add CPU and arch directive tests.
May 31 2019, 1:42 AM · Restricted Project

May 30 2019

c-rhodes added inline comments to D62599: [AArch64][SVE2] Asm: support SVE2 store instructions.
May 30 2019, 2:17 AM · Restricted Project
c-rhodes committed rG7fad4289319a: [AArch64][SVE2] Asm: support SVE2 vector splice (constructive) (authored by c-rhodes).
[AArch64][SVE2] Asm: support SVE2 vector splice (constructive)
May 30 2019, 1:51 AM
c-rhodes committed rL362073: [AArch64][SVE2] Asm: support SVE2 vector splice (constructive).
[AArch64][SVE2] Asm: support SVE2 vector splice (constructive)
May 30 2019, 1:51 AM
c-rhodes closed D62530: [AArch64][SVE2] Asm: support SVE2 vector splice (constructive).
May 30 2019, 1:51 AM · Restricted Project
c-rhodes committed rGebe23041f087: [AArch64][SVE2] Asm: support SVE2 load instructions (authored by c-rhodes).
[AArch64][SVE2] Asm: support SVE2 load instructions
May 30 2019, 1:45 AM
c-rhodes committed rL362072: [AArch64][SVE2] Asm: support SVE2 load instructions.
[AArch64][SVE2] Asm: support SVE2 load instructions
May 30 2019, 1:44 AM
c-rhodes closed D62528: [AArch64][SVE2] Asm: support SVE2 load instructions.
May 30 2019, 1:44 AM · Restricted Project
c-rhodes committed rG455c529f77ac: [AArch64][SVE2] Asm: support FCVTX/FLOGB instructions (authored by c-rhodes).
[AArch64][SVE2] Asm: support FCVTX/FLOGB instructions
May 30 2019, 1:33 AM
c-rhodes committed rL362071: [AArch64][SVE2] Asm: support FCVTX/FLOGB instructions.
[AArch64][SVE2] Asm: support FCVTX/FLOGB instructions
May 30 2019, 1:33 AM
c-rhodes closed D62526: [AArch64][SVE2] Asm: support FCVTX/FLOGB instructions.
May 30 2019, 1:33 AM · Restricted Project
c-rhodes committed rG028413f5ae01: [AArch64][SVE2] Asm: add ext (immediate offset, constructive) instruction (authored by c-rhodes).
[AArch64][SVE2] Asm: add ext (immediate offset, constructive) instruction
May 30 2019, 1:25 AM
c-rhodes committed rL362070: [AArch64][SVE2] Asm: add ext (immediate offset, constructive) instruction.
[AArch64][SVE2] Asm: add ext (immediate offset, constructive) instruction
May 30 2019, 1:24 AM
c-rhodes closed D62518: [AArch64][SVE2] Asm: add ext (immediate offset, constructive) instruction.
May 30 2019, 1:24 AM · Restricted Project

May 29 2019

c-rhodes created D62602: [AArch64][SVE2] Add CPU and arch directive tests.
May 29 2019, 8:44 AM · Restricted Project
c-rhodes added a parent revision for D62602: [AArch64][SVE2] Add CPU and arch directive tests: D62601: [AArch64][SVE2] Asm: support WHILE instructions.
May 29 2019, 8:44 AM · Restricted Project
c-rhodes added a child revision for D62601: [AArch64][SVE2] Asm: support WHILE instructions: D62602: [AArch64][SVE2] Add CPU and arch directive tests.
May 29 2019, 8:44 AM · Restricted Project
c-rhodes added a parent revision for D62601: [AArch64][SVE2] Asm: support WHILE instructions: D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions.
May 29 2019, 8:36 AM · Restricted Project
c-rhodes added a child revision for D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions: D62601: [AArch64][SVE2] Asm: support WHILE instructions.
May 29 2019, 8:36 AM · Restricted Project
c-rhodes created D62601: [AArch64][SVE2] Asm: support WHILE instructions.
May 29 2019, 8:36 AM · Restricted Project
c-rhodes added a child revision for D62599: [AArch64][SVE2] Asm: support SVE2 store instructions: D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions.
May 29 2019, 8:27 AM · Restricted Project
c-rhodes added a parent revision for D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions: D62599: [AArch64][SVE2] Asm: support SVE2 store instructions.
May 29 2019, 8:27 AM · Restricted Project
c-rhodes created D62600: [AArch64][SVE2] Asm: support TBL/TBX instructions.
May 29 2019, 8:27 AM · Restricted Project
c-rhodes added a child revision for D62530: [AArch64][SVE2] Asm: support SVE2 vector splice (constructive): D62599: [AArch64][SVE2] Asm: support SVE2 store instructions.
May 29 2019, 8:23 AM · Restricted Project
c-rhodes added a parent revision for D62599: [AArch64][SVE2] Asm: support SVE2 store instructions: D62530: [AArch64][SVE2] Asm: support SVE2 vector splice (constructive).
May 29 2019, 8:23 AM · Restricted Project
c-rhodes created D62599: [AArch64][SVE2] Asm: support SVE2 store instructions.
May 29 2019, 8:23 AM · Restricted Project
c-rhodes committed rG6c04ef3d48ab: [AArch64][SVE2] Asm: support SVE Bitwise Logical - Unpredicated Group (authored by c-rhodes).
[AArch64][SVE2] Asm: support SVE Bitwise Logical - Unpredicated Group
May 29 2019, 2:02 AM
c-rhodes committed rL361936: [AArch64][SVE2] Asm: support SVE Bitwise Logical - Unpredicated Group.
[AArch64][SVE2] Asm: support SVE Bitwise Logical - Unpredicated Group
May 29 2019, 2:00 AM
c-rhodes closed D62387: [AArch64][SVE2] Asm: support SVE Bitwise Logical - Unpredicated Group.
May 29 2019, 2:00 AM · Restricted Project
c-rhodes committed rG75dfbdc2da12: [AArch64][SVE2] Asm: support Floating Point Widening Multiply-Add (authored by c-rhodes).
[AArch64][SVE2] Asm: support Floating Point Widening Multiply-Add
May 29 2019, 1:55 AM