Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

joechrisellis (Joe Ellis)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 15 2020, 5:36 AM (154 w, 4 h)

No longer working on LLVM.

Recent Activity

Jun 24 2021

joechrisellis updated the summary of D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
Jun 24 2021, 9:52 AM · Restricted Project
joechrisellis updated joechrisellis.
Jun 24 2021, 8:25 AM
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Bugfixes.

Jun 24 2021, 2:51 AM · Restricted Project

Jun 23 2021

joechrisellis committed rG3c4dbf6ea9a0: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector… (authored by joechrisellis).
[Verifier] Fail on overrunning and invalid indices for {insert,extract} vector…
Jun 23 2021, 3:34 AM
joechrisellis closed D104468: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics.
Jun 23 2021, 3:34 AM · Restricted Project

Jun 21 2021

joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Bugfixes.

Jun 21 2021, 9:26 AM · Restricted Project
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Update insertion indices. The old insertion indices will be reported as invalid
when D104468 is merged.

Jun 21 2021, 4:18 AM · Restricted Project
joechrisellis updated the diff for D104468: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics.

Address review comments.

Jun 21 2021, 2:06 AM · Restricted Project

Jun 18 2021

joechrisellis added inline comments to D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
Jun 18 2021, 9:13 AM · Restricted Project
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Address review comments:

Jun 18 2021, 9:13 AM · Restricted Project
joechrisellis added inline comments to D104468: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics.
Jun 18 2021, 8:25 AM · Restricted Project
joechrisellis updated the diff for D104468: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics.

Address review comments.

Jun 18 2021, 8:24 AM · Restricted Project
joechrisellis abandoned D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
Jun 18 2021, 1:31 AM · Restricted Project

Jun 17 2021

joechrisellis added a comment to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Thanks for the reviews guys.

Jun 17 2021, 8:58 AM · Restricted Project
joechrisellis abandoned D102907: [Verifier] Fail if vectors overrun for {insert,extract} vector intrinsics.

Thanks for the reviews guys.

Jun 17 2021, 8:58 AM · Restricted Project
joechrisellis requested review of D104468: [Verifier] Fail on overrunning and invalid indices for {insert,extract} vector intrinsics.
Jun 17 2021, 8:57 AM · Restricted Project
joechrisellis added inline comments to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
Jun 17 2021, 5:37 AM · Restricted Project
joechrisellis added inline comments to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
Jun 17 2021, 4:01 AM · Restricted Project

Jun 9 2021

joechrisellis accepted D103702: [AArch64][SVE] Wire up vscale_range attribute to SVE min/max vector queries.

Looks good to me. 😄

Jun 9 2021, 1:18 AM · Restricted Project, Restricted Project

Jun 4 2021

joechrisellis added a comment to D103256: [AArch64] Remove SETCC of CSEL when the latter's condition can be inverted.

Apologies @bsmith, ignore my last comment. The pattern matching stuff is only for IR -- I had mistakenly thought that it could be used in this context, but it can't. Sorry! 😅

Jun 4 2021, 6:25 AM · Restricted Project
joechrisellis added a comment to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Gentle ping. 🙂

Jun 4 2021, 3:28 AM · Restricted Project

Jun 3 2021

joechrisellis accepted D103256: [AArch64] Remove SETCC of CSEL when the latter's condition can be inverted.

LGTM, one small suggestion.

Jun 3 2021, 8:09 AM · Restricted Project

Jun 2 2021

joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Remove CFI entries from test.

Jun 2 2021, 3:08 AM · Restricted Project
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Scale index by vscale.

Jun 2 2021, 2:53 AM · Restricted Project

Jun 1 2021

joechrisellis updated the diff for D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Address review comments.

Jun 1 2021, 3:24 AM · Restricted Project
joechrisellis added inline comments to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
Jun 1 2021, 3:11 AM · Restricted Project
joechrisellis updated the diff for D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Fixup RISCV tests.

Jun 1 2021, 2:44 AM · Restricted Project
joechrisellis updated the diff for D102907: [Verifier] Fail if vectors overrun for {insert,extract} vector intrinsics.

Address review comments.

Jun 1 2021, 1:03 AM · Restricted Project

May 21 2021

joechrisellis planned changes to D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
May 21 2021, 9:43 AM · Restricted Project
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Fold in D102765 + address nits.

May 21 2021, 9:42 AM · Restricted Project
joechrisellis updated the summary of D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
May 21 2021, 9:14 AM · Restricted Project
joechrisellis abandoned D102765: [SelectionDAG] Add stub implementation of ReplaceInsertSubVectorResults.

This change will be folded into D102766.

May 21 2021, 8:12 AM · Restricted Project
joechrisellis added a comment to D102765: [SelectionDAG] Add stub implementation of ReplaceInsertSubVectorResults.

@paulwalker-arm ACK -- will fold this into D102766. 🙂

May 21 2021, 8:12 AM · Restricted Project
joechrisellis updated subscribers of D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
May 21 2021, 8:10 AM · Restricted Project
joechrisellis updated the diff for D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Address review comments.

May 21 2021, 8:09 AM · Restricted Project
joechrisellis added inline comments to D102765: [SelectionDAG] Add stub implementation of ReplaceInsertSubVectorResults.
May 21 2021, 5:34 AM · Restricted Project
joechrisellis committed rG5a476987f7d6: [InstSimplify] Properly constrain {insert,extract}_subvector intrinsic fold (authored by joechrisellis).
[InstSimplify] Properly constrain {insert,extract}_subvector intrinsic fold
May 21 2021, 3:06 AM
joechrisellis closed D102699: [InstSimplify] Properly constrain {insert,extract}_subvector intrinsic fold.
May 21 2021, 3:05 AM · Restricted Project
joechrisellis requested review of D102907: [Verifier] Fail if vectors overrun for {insert,extract} vector intrinsics.
May 21 2021, 2:37 AM · Restricted Project

May 20 2021

joechrisellis added a comment to D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.

Reviewers, especially @david-arm: there are still additional verifier checks to be implemented. In particular, we can add a verifier check for 'overrunning' the vectors with an insert/extract. This is currently handled by spawning an undef at the moment, but where we can determine this statically it makes sense to have the verifier spit an error. 🙂

May 20 2021, 5:29 AM · Restricted Project
joechrisellis retitled D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics from [Verifier] Fail on invalid indices in {insert,extract} vector intrinsics to [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
May 20 2021, 5:26 AM · Restricted Project
joechrisellis requested review of D102842: [Verifier] Fail on invalid indices for {insert,extract} vector intrinsics.
May 20 2021, 5:22 AM · Restricted Project
joechrisellis updated the diff for D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.

Address review comments.

May 20 2021, 2:19 AM · Restricted Project
joechrisellis added inline comments to D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
May 20 2021, 2:18 AM · Restricted Project

May 19 2021

joechrisellis requested review of D102766: [SelectionDAG] Implement PromoteIntRes_INSERT_SUBVECTOR.
May 19 2021, 6:01 AM · Restricted Project
joechrisellis requested review of D102765: [SelectionDAG] Add stub implementation of ReplaceInsertSubVectorResults.
May 19 2021, 5:59 AM · Restricted Project

May 18 2021

joechrisellis updated the diff for D102699: [InstSimplify] Properly constrain {insert,extract}_subvector intrinsic fold.

Remove unused %pg variable in test.

May 18 2021, 10:08 AM · Restricted Project
joechrisellis requested review of D102699: [InstSimplify] Properly constrain {insert,extract}_subvector intrinsic fold.
May 18 2021, 9:57 AM · Restricted Project

May 17 2021

joechrisellis added inline comments to D102498: [AArch64][SVE] Improve codegen for fixed length vector concat.
May 17 2021, 2:06 AM · Restricted Project
joechrisellis added inline comments to D102253: [LV] Prevent vectorization with unsupported element types..
May 17 2021, 1:43 AM · Restricted Project

May 13 2021

joechrisellis committed rG2ed7db0d206b: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains (authored by joechrisellis).
[InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains
May 13 2021, 9:10 AM
joechrisellis closed D101986: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains.
May 13 2021, 9:10 AM · Restricted Project, Restricted Project

May 6 2021

joechrisellis updated the diff for D101820: [AArch64][SVE] Extend svdup->insertelement instcombine pattern to support ....

Address review comments.

May 6 2021, 5:16 AM · Restricted Project
joechrisellis requested review of D101986: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains.
May 6 2021, 3:56 AM · Restricted Project, Restricted Project

May 5 2021

joechrisellis accepted D101828: [AArch64][SVE] Better utilisation of unpredicated forms of remaining intrinsics.

One nit, otherwise LGTM.

May 5 2021, 3:55 AM · Restricted Project
joechrisellis added inline comments to D101820: [AArch64][SVE] Extend svdup->insertelement instcombine pattern to support ....
May 5 2021, 2:17 AM · Restricted Project

May 4 2021

joechrisellis updated the diff for D101820: [AArch64][SVE] Extend svdup->insertelement instcombine pattern to support ....

Bugfix: check that UserPg's intrinsic ID is a ptrue, otherwise we crash in some circumstances.

May 4 2021, 2:11 AM · Restricted Project
joechrisellis planned changes to D101820: [AArch64][SVE] Extend svdup->insertelement instcombine pattern to support ....
May 4 2021, 1:55 AM · Restricted Project
joechrisellis requested review of D101820: [AArch64][SVE] Extend svdup->insertelement instcombine pattern to support ....
May 4 2021, 1:41 AM · Restricted Project

Apr 28 2021

joechrisellis committed rG1eb81f8309be: [AArch64] Add missing UINT_TO_FP promotions for v16i8 (authored by joechrisellis).
[AArch64] Add missing UINT_TO_FP promotions for v16i8
Apr 28 2021, 1:50 AM
joechrisellis closed D101042: [AArch64] Add missing UINT_TO_FP promotions for v16i8.
Apr 28 2021, 1:49 AM · Restricted Project
joechrisellis accepted D101167: [AArch64][SVE] Convert svdup(vec, SV_VL1, elm) to insertelement(vec, elm, 0).

LGTM!

Apr 28 2021, 1:06 AM · Restricted Project

Apr 27 2021

joechrisellis added a comment to D101042: [AArch64] Add missing UINT_TO_FP promotions for v16i8.

Gentle ping. 🙂

Apr 27 2021, 4:56 AM · Restricted Project

Apr 26 2021

joechrisellis updated the diff for D101042: [AArch64] Add missing UINT_TO_FP promotions for v16i8.

Address review comments.

Apr 26 2021, 7:00 AM · Restricted Project
joechrisellis added inline comments to D101042: [AArch64] Add missing UINT_TO_FP promotions for v16i8.
Apr 26 2021, 3:30 AM · Restricted Project
joechrisellis added a comment to D101167: [AArch64][SVE] Convert svdup(vec, SV_VL1, elm) to insertelement(vec, elm, 0).

Hello! This looks good to me modulo a few nits.

Apr 26 2021, 2:05 AM · Restricted Project

Apr 23 2021

joechrisellis committed rGc19c0ad6813d: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides (authored by joechrisellis).
[AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides
Apr 23 2021, 7:56 AM
joechrisellis closed D100370: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides.
Apr 23 2021, 7:55 AM · Restricted Project

Apr 22 2021

joechrisellis committed rG528ee161c947: [AArch64] Block tryCombineToBSL combines for vectors wider than NEON (authored by joechrisellis).
[AArch64] Block tryCombineToBSL combines for vectors wider than NEON
Apr 22 2021, 8:10 AM
joechrisellis closed D100961: [AArch64] Block tryCombineToBSL combines for vectors wider than NEON.
Apr 22 2021, 8:09 AM · Restricted Project
joechrisellis committed rG2c551aedcf8b: [LoopVectorize] Fix bug where predicated loads/stores were dropped (authored by joechrisellis).
[LoopVectorize] Fix bug where predicated loads/stores were dropped
Apr 22 2021, 8:06 AM
joechrisellis closed D99569: [LoopVectorize] Fix bug where predicated loads/stores were dropped.
Apr 22 2021, 8:06 AM · Restricted Project
joechrisellis updated the diff for D100370: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides.

Address review comments:

Apr 22 2021, 7:33 AM · Restricted Project
joechrisellis requested review of D101042: [AArch64] Add missing UINT_TO_FP promotions for v16i8.
Apr 22 2021, 3:12 AM · Restricted Project

Apr 21 2021

joechrisellis requested review of D100961: [AArch64] Block tryCombineToBSL combines for vectors wider than NEON.
Apr 21 2021, 8:16 AM · Restricted Project

Apr 20 2021

joechrisellis committed rGeffacc15999d: [AArch64] Constant fold sve_convert_from_svbool(zero) to zero (authored by joechrisellis).
[AArch64] Constant fold sve_convert_from_svbool(zero) to zero
Apr 20 2021, 3:03 AM
joechrisellis closed D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.
Apr 20 2021, 3:03 AM · Restricted Project
joechrisellis committed rGc91cd4f3bb53: [AArch64][SVE][InstCombine] Replace last{a,b} intrinsics with extracts... (authored by joechrisellis).
[AArch64][SVE][InstCombine] Replace last{a,b} intrinsics with extracts...
Apr 20 2021, 3:02 AM
joechrisellis closed D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....
Apr 20 2021, 3:02 AM · Restricted Project
joechrisellis updated the diff for D99569: [LoopVectorize] Fix bug where predicated loads/stores were dropped.

Address review comments.

Apr 20 2021, 2:26 AM · Restricted Project

Apr 19 2021

joechrisellis updated the diff for D100370: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides.

Address review comments.

Apr 19 2021, 7:36 AM · Restricted Project
joechrisellis updated the diff for D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....

Address review comments.

Apr 19 2021, 4:07 AM · Restricted Project
joechrisellis added a comment to D100370: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides.

Gentle ping. 🙂

Apr 19 2021, 1:40 AM · Restricted Project

Apr 16 2021

joechrisellis updated the diff for D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....

Address review comments.

Apr 16 2021, 9:34 AM · Restricted Project
joechrisellis added inline comments to D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....
Apr 16 2021, 9:34 AM · Restricted Project
joechrisellis accepted D100639: [CodeGen] Improve code generation for clamping of constant indices with scalable vectors.

LGTM!

Apr 16 2021, 9:28 AM · Restricted Project
joechrisellis updated the diff for D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.

Address review comments.

Apr 16 2021, 7:50 AM · Restricted Project
joechrisellis added a reviewer for D99569: [LoopVectorize] Fix bug where predicated loads/stores were dropped: craig.topper.
Apr 16 2021, 6:46 AM · Restricted Project
joechrisellis updated the diff for D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....

Address review comments.

Apr 16 2021, 4:46 AM · Restricted Project
joechrisellis updated the diff for D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.

Address review comments.

Apr 16 2021, 3:01 AM · Restricted Project

Apr 15 2021

joechrisellis planned changes to D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.

@dmgreen -- I hear you, makes sense to me. There might be some functionality already in SVEIntrinsicOpts.cpp that we can pull out, but I guess that can wait for later. In any case I'll move the functionality here to the other passes to reflect your suggestions.

Apr 15 2021, 6:40 AM · Restricted Project
joechrisellis added a comment to D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.

Hi @dmgreen! This is SVE-specific, and SVEIntrinsicOpts.cpp is where such transformations are typically placed (at least for now). I did a quick grep and it seems SVE intrinsics don't currently have much of a presence in generic passes like instcombine/constant folding, perhaps because some SVE optimisations are more complex than others and I guess it makes sense to keep them all in the same place.

Apr 15 2021, 1:03 AM · Restricted Project

Apr 14 2021

joechrisellis added reviewers for D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts...: paulwalker-arm, DavidTruby, bsmith, kmclaughlin.
Apr 14 2021, 6:38 AM · Restricted Project
joechrisellis requested review of D100476: [AArch64][SVEIntrinsicOpts] Replace last{a,b} intrinsic calls with extracts....
Apr 14 2021, 6:38 AM · Restricted Project
joechrisellis requested review of D100463: [AArch64][SVEIntrinsicOpts] Fold sve_convert_from_svbool(zero) to zero.
Apr 14 2021, 4:13 AM · Restricted Project
joechrisellis added a comment to D99569: [LoopVectorize] Fix bug where predicated loads/stores were dropped.

Hi @fhahn -- thanks for the review!

Apr 14 2021, 2:41 AM · Restricted Project
joechrisellis updated the diff for D99569: [LoopVectorize] Fix bug where predicated loads/stores were dropped.

Address review comments.

Apr 14 2021, 2:41 AM · Restricted Project

Apr 13 2021

joechrisellis added inline comments to D100304: [AArch64][NEON] Match (or (and -a b) (and (a+1) b)) => bit select.
Apr 13 2021, 9:45 AM · Restricted Project
joechrisellis updated the diff for D100370: [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides.

Fix failing llvm/test/CodeGen/AArch64/sve-fixed-length-int-rem.ll test.

Apr 13 2021, 7:57 AM · Restricted Project
joechrisellis added inline comments to D100304: [AArch64][NEON] Match (or (and -a b) (and (a+1) b)) => bit select.
Apr 13 2021, 5:49 AM · Restricted Project