[PATCH] D71698: [AArch64][SVE] Add intrinsic for non-faulting loads

2020-01-22 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGcdcc4f2a44b5: [AArch64][SVE] Add intrinsic for non-faulting loads (authored by kmclaughlin). Changed prior to commit: https://reviews.llvm.org/D71698?vs=239144&id=239531#toc Repository: rG LLVM Githu

[PATCH] D73025: [AArch64][SVE] Add first-faulting load intrinsic

2020-01-23 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGaa0f37e14a87: [AArch64][SVE] Add first-faulting load intrinsic (authored by kmclaughlin). Changed prior to commit: https://reviews.llvm.org/D73025?vs=239303&id=239849#toc Repository: rG LLVM Github M

[PATCH] D73097: [AArch64][SVE] Add intrinsics for FFR manipulation

2020-01-24 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added a comment. Thanks for your input on this @efriedma, I will submit this patch for now and we will revisit the modelling of the FFR as also discussed in D71698 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.l

[PATCH] D73097: [AArch64][SVE] Add intrinsics for FFR manipulation

2020-01-24 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG4c4861b577cb: [AArch64][SVE] Add intrinsics for FFR manipulation (authored by kmclaughlin). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73097/new/ https:/

[PATCH] D73347: [AArch64][SVE] Add SVE2 intrinsics for pairwise arithmetic

2020-01-24 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: dancgr, efriedma, sdesmalen, c-rhodes. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a project: LLVM. Implements the following intrinsics: - addp - smaxp, sminp, umaxp & uminp - sadalp &

[PATCH] D73493: [AArch64][SVE] Add SVE2 intrinsics for uniform DSP operations

2020-01-27 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: sdesmalen, efriedma, dancgr, cameron.mcinally. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a project: LLVM. Implements the following intrinsics: - sqrdmlah, sqrdmlsh, sqrdmulh & sqdmulh

[PATCH] D73551: [AArch64][SVE] Add remaining SVE2 intrinsics for uniform DSP operations

2020-01-28 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: efriedma, sdesmalen, dancgr, cameron.mcinally, c-rhodes. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: LLVM. kmclaughlin added a parent revisi

[PATCH] D73347: [AArch64][SVE] Add SVE2 intrinsics for pairwise arithmetic

2020-01-29 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGbd33a46213d3: [AArch64][SVE] Add SVE2 intrinsics for pairwise arithmetic (authored by kmclaughlin). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73347/new/

[PATCH] D73493: [AArch64][SVE] Add SVE2 intrinsics for uniform DSP operations

2020-01-29 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG3cf80822a906: [AArch64][SVE] Add SVE2 intrinsics for uniform DSP operations (authored by kmclaughlin). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73493/ne

[PATCH] D73636: [AArch64][SVE] SVE2 intrinsics for complex integer arithmetic

2020-01-29 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: sdesmalen, dancgr, efriedma, cameron.mcinally, c-rhodes. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: LLVM. Adds the following SVE2 intrinsi

[PATCH] D73687: [AArch64][SVE] Add SVE2 intrinsics for complex integer dot product

2020-01-30 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: sdesmalen, efriedma, dancgr, c-rhodes. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: LLVM. Implements the following intrinsics: - @llvm.aarch

[PATCH] D73719: [AArch64][SVE] Add SVE2 intrinsics for widening DSP operations

2020-01-30 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin created this revision. kmclaughlin added reviewers: sdesmalen, dancgr, efriedma, cameron.mcinally. Herald added subscribers: psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: LLVM. Implements the following intrinsics: - @ll

[PATCH] D73551: [AArch64][SVE] Add remaining SVE2 intrinsics for uniform DSP operations

2020-01-31 Thread Kerry McLaughlin via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG69558c84871d: [AArch64][SVE] Add remaining SVE2 intrinsics for uniform DSP operations (authored by kmclaughlin). Changed prior to commit: https://reviews.llvm.org/D73551?vs=240865&id=241668#toc Reposit

[PATCH] D73636: [AArch64][SVE] SVE2 intrinsics for complex integer arithmetic

2020-01-31 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin updated this revision to Diff 241675. kmclaughlin added a comment. - Changed complexrotateop & complexrotateopodd to use TImmLeaf - Removed SVE2_CADD_Intrinsic & SVE2_CMLA_Intrinsic classes CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73636/new/ https://reviews.llvm.org/D73

[PATCH] D73636: [AArch64][SVE] SVE2 intrinsics for complex integer arithmetic

2020-01-31 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin marked 2 inline comments as done. kmclaughlin added a comment. Thanks for reviewing this @sdesmalen! Comment at: llvm/include/llvm/IR/IntrinsicsAArch64.td:1116 + LLVMMatchType<0>, + llvm_i32_ty], +[IntrNoMem]>; ---

[PATCH] D73687: [AArch64][SVE] Add SVE2 intrinsics for complex integer dot product

2020-01-31 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin updated this revision to Diff 241726. kmclaughlin added a comment. - Removed the AdvSIMD_SVE_CDOT_Intrinsic class - Added ImmArg<4> to AdvSIMD_SVE_CDOT_LANE_Intrinsic CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73687/new/ https://reviews.llvm.org/D73687 Files: llvm/incl

[PATCH] D73687: [AArch64][SVE] Add SVE2 intrinsics for complex integer dot product

2020-01-31 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin marked 2 inline comments as done. kmclaughlin added a comment. Thanks for reviewing this, @efriedma! Comment at: llvm/include/llvm/IR/IntrinsicsAArch64.td: + LLVMSubdivide4VectorType<0>, + llvm_i32_ty], +[IntrNoMem

[PATCH] D128648: [Clang][AArch64][SME] Add vector read/write (mova) intrinsics

2023-03-15 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin accepted this revision. kmclaughlin added a comment. This revision is now accepted and ready to land. Thank you @bryanpkc, this LGTM Comment at: clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c:2 +// REQUIRES: aarch64-registered-target +// RUN: %clang_cc1 -

[PATCH] D128648: [Clang][AArch64][SME] Add vector read/write (mova) intrinsics

2023-02-28 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added a comment. Hi @bryanpkc, thank you for updating this patch & applying the previous review comments here too. I just have a couple of minor suggestions: Comment at: clang/include/clang/Basic/arm_sme.td:103 +def NAME # _H : SInst<"svwrite_hor_" # n_suffix #

[PATCH] D127910: [Clang][AArch64][SME] Add vector load/store (ld1/st1) intrinsics

2023-02-21 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:8874 case SVETypeFlags::EltTyBool64: + case SVETypeFlags::EltTyBool128: return Builder.getInt1Ty(); Is it necessary to add an `EltTypeBool128`? I think the EmitSVEPredicateCas

[PATCH] D127910: [Clang][AArch64][SME] Add vector load/store (ld1/st1) intrinsics

2023-02-23 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin accepted this revision. kmclaughlin added a comment. This revision is now accepted and ready to land. Thank you for checking and removing EltTypeBool128. I think you have addressed all of the other comments on this patch too, so it looks good to me! Please can you update the commit m

[PATCH] D70253: [AArch64][SVE2] Implement remaining SVE2 floating-point intrinsics

2022-12-16 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added inline comments. Comment at: llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-int-binary-logarithm.ll:31 +; CHECK-NEXT: ret + %out = call @llvm.aarch64.sve.flogb.nxv2f64( %a, + %pg,

[PATCH] D100294: [AArch64][SVE] Fix dup/dupq intrinsics for C++.

2021-04-12 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin accepted this revision. kmclaughlin added a comment. This revision is now accepted and ready to land. LGTM! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D100294/new/ https://reviews.llvm.org/D100294

[PATCH] D108138: [WIP] Remove switch statements before vectorization

2021-10-08 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin abandoned this revision. kmclaughlin added a comment. I just wanted to give an update on this patch, which I'm abandoning for the time being: @lebedev.ri raised some good questions about the approach taken and whether the additional compile time spent would be worth the additional o

[PATCH] D108138: [SimplifyCFG] Remove switch statements before vectorization

2021-08-26 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added a comment. Thanks all for the suggestions on this patch :) I had a look at the LowerSwitch pass as suggested by @junparser, and I did find that running it before vectorisation transforms the switch and allows the same loops to be vectorised. However, I did find that if the loo

[PATCH] D108138: [WIP] Remove switch statements before vectorization

2021-09-15 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin updated this revision to Diff 372706. kmclaughlin retitled this revision from "[SimplifyCFG] Remove switch statements before vectorization" to "[WIP] Remove switch statements before vectorization". kmclaughlin edited the summary of this revision. kmclaughlin added a comment. Herald add

[PATCH] D108138: [WIP] Remove switch statements before vectorization

2021-09-15 Thread Kerry McLaughlin via Phabricator via cfe-commits
kmclaughlin added a comment. Hi all, I've updated this to take a different approach - the new patch runs LowerSwitch just before the vectoriser, where it will only consider simple switches which are part of a loop. For these switches, the pass will create a series of branches and compares which

<    1   2   3