[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-04-05 Thread Jonathan Thackray via cfe-commits
jthackray wrote: I've opened #132495 to remove quite a lot of superfluous `#include`s, which might improve compile time. https://github.com/llvm/llvm-project/pull/132252 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-04-04 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,105 @@ +//===-- CGBuiltin.h - Emit LLVM Code for builtins -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [AARCH64] Add FEAT_SSVE_FEXPA and fix unsupported features list (PR #134368)

2025-04-04 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/134368 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Cmake] fix libtool duplicate member name warnings (PR #133619)

2025-03-30 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. Thanks for this fix. LGTM. https://github.com/llvm/llvm-project/pull/133619 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement multi-single vectors MOP4{A/S} (PR #129226)

2025-03-28 Thread Jonathan Thackray via cfe-commits
@@ -289,6 +289,105 @@ multiclass ZAFPOuterProd { defm SVMOPA : ZAFPOuterProd<"mopa">; defm SVMOPS : ZAFPOuterProd<"mops">; + +// SME2 - FMOP4A, FMOP4S, BFMOP4A, BFMOP4S + +multiclass MOP4 checks>

[clang] [llvm] [Clang][LLVM] Implement multi-single vectors MOP4{A/S} (PR #129226)

2025-03-28 Thread Jonathan Thackray via cfe-commits
@@ -289,6 +289,105 @@ multiclass ZAFPOuterProd { defm SVMOPA : ZAFPOuterProd<"mopa">; defm SVMOPS : ZAFPOuterProd<"mops">; + +// SME2 - FMOP4A, FMOP4S, BFMOP4A, BFMOP4S + +multiclass MOP4 checks>

[clang] [llvm] [Clang][LLVM] Implement multi-single vectors MOP4{A/S} (PR #129226)

2025-03-28 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,304 @@ +// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py + +// REQUIRES: aarch64-registered-target +// RUN: %clang_cc1 -triple aarch64 -target-feature +bf16 -target-feature +sme-mop4 -target-feature +sme-f16f16 -target-feature +sme-i16i64

[clang] [llvm] [NFC][HLSL] Move emitter out of AMDGPU.cpp (PR #133251)

2025-03-27 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. Thanks for creating this PR, LGTM (I wasn't able to do it earlier as one of my kids was ill, so away from laptop) https://github.com/llvm/llvm-project/pull/133251 ___ cfe-commits mailing list cf

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-27 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > How'd you manage to find the right ones? IMO we should be using > include-what-you-use on these to make sure we get it right (if you have > already, disregard this). Yes, I used iwyu. > Also, can you share before-split/after-split/after-this build time > benchmarks? Does

[clang] [Clang][NFC] Code cleanup in CGBuiltin.cpp (PR #132060)

2025-03-26 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM. https://github.com/llvm/llvm-project/pull/132060 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-26 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/132495 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-25 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > LGTM. Does this actually fix the build time regression from the previous > patch? Apologies for the delay; I wasn't working yesterday. Using a Graviton c8g.8xlarge instance, with a `ninja` build, I don't see a large build time regression. However, this is compiling in paral

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-25 Thread Jonathan Thackray via cfe-commits
jthackray wrote: @jurahul > I see that some of the HLSL builtin code (like `EmitHLSLBuiltinExpr`) ended > up in AMDGPU.cpp. Does that seem misplaced? @jurahul Yes, apologies. Will write another PR to move it. https://github.com/llvm/llvm-project/pull/132252 __

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/132252 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add initial support for -mcpu=olympus. (PR #132368)

2025-03-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM. (apologies for delay; in hospital in Oxford visiting my Dad, but he's gone back to sleep now) https://github.com/llvm/llvm-project/pull/132368 ___ cfe-commits mailing list cfe-commits@list

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-24 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,107 @@ +//===-- CGBuiltin.h - Emit LLVM Code for builtins -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-22 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray created https://github.com/llvm/llvm-project/pull/132495 None >From 7f1f78ad0c39a8bd1b6c8e4cc7001f6282167d3c Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 21 Mar 2025 23:56:42 + Subject: [PATCH] [NFC][clang] Remove superfluous header files after r

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-21 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/132495 >From a55f760ad74fb22ad39c83c5787a9da14224d457 Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 21 Mar 2025 23:56:42 + Subject: [PATCH] [NFC][clang] Remove superfluous header files after refacto

[clang] [NFC][clang] Remove superfluous header files after refactor in #132252 (PR #132495)

2025-03-21 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/132495 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-21 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/132252 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-21 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > I'd say you can merge it once CI is green. Thanks @jhuber6. CI is green. clang-format isn't, but running clang-format breaks some of the AArch64 tests. I'll wait another few hours, just in case there are more comments, and merge later today if not. https://github.com/llvm

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-21 Thread Jonathan Thackray via cfe-commits
jthackray wrote: So far I've got approvals, positive comments or thumbs-up emojis from: @jhuber6, @erichkeane, @Sirraide, @vmustya, @MacDue, @arichardson. @s-barannikov and @davemgreen - are you okay if I merge this soon, since `CGBuiltin.cpp` seems to get updated every few days. I've had to

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-21 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,8040 @@ +//===-- AArch64.cpp - Emit LLVM Code for builtins -===// jthackray wrote: Thanks, fixed. https://github.com/llvm/llvm-project/pull/132252 ___ cfe-commits mailing list cfe-co

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-21 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,105 @@ +//===-- CGBuiltin.h - Emit LLVM Code for builtins -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-20 Thread Jonathan Thackray via cfe-commits
@@ -61,6 +61,16 @@ add_clang_library(clangCodeGen CGAtomic.cpp CGBlocks.cpp CGBuiltin.cpp + TargetBuiltins/AArch64.cpp jthackray wrote: Done. https://github.com/llvm/llvm-project/pull/132252 ___ cfe-commits m

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-20 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,8530 @@ +//===-- AArch64.cpp - Emit LLVM Code for builtins -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: A

[clang] [Clang][NFC] Code cleanup in CGBuiltin.cpp (PR #132060)

2025-03-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/132060 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][NFC] Code cleanup in CGBuiltin.cpp (PR #132060)

2025-03-20 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > The timing of this is sort of unfortunate with #132252; the merge conflict > there is going to be very painful. @jthackray , thoughts? @efriedma-quic I think I can update my diff after this is merged; yes, might take a while to resolve the diffs. https://github.com/llvm/llv

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-20 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > This makes a lot of sense to me, just wondering why you chose > `clang/lib/CodeGen/BuiltinTargets/` rather than > `clang/lib/CodeGen/TargetBuiltins/`? The former shounds like it contains the > list of all builtin targets, rather than the codegen for target-specific > builti

[clang] [NFC][clang] Split clang/lib/CodeGen/CGBuiltin.cpp into target-specific files (PR #132252)

2025-03-20 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > Seems something with AArch64 has made the CI unhappy as well. Thanks. It appears `clang-format` breaks some of the fragile `#define`s around `NEONMAP0` and similar. If I revert the `clang-format`, it passes. https://github.com/llvm/llvm-project/pull/132252 __

[clang] [clang][AArch64] Don't #define __ARM_FEATURE_CRC32 when -crc is specified in -target-feature (PR #132167)

2025-03-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM. https://github.com/llvm/llvm-project/pull/132167 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [ARM][Clang] Make `+nosimd` functional for AArch32 Targets (PR #130623)

2025-03-15 Thread Jonathan Thackray via cfe-commits
@@ -85,6 +85,9 @@ Changes to the AMDGPU Backend Changes to the ARM Backend -- +* The `+nosimd` attribute is now fully supported. Previously, this had no effect when being used with +AArch32 targets, however will now disable NEON instructions being gene

[clang] [llvm] [ARM][Clang] Make `+nosimd` functional for AArch32 Targets (PR #130623)

2025-03-15 Thread Jonathan Thackray via cfe-commits
@@ -85,6 +85,9 @@ Changes to the AMDGPU Backend Changes to the ARM Backend -- +* The `+nosimd` attribute is now fully supported. Previously, this had no effect when being used with +AArch32 targets, however will now disable NEON instructions being gene

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-03-11 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/128854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [ARM][Clang] Make `+nosimd` functional for AArch32 Targets (PR #130623)

2025-03-11 Thread Jonathan Thackray via cfe-commits
jthackray wrote: typo in commit message: s/emable/enable/ https://github.com/llvm/llvm-project/pull/130623 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [ARM][Clang] Make `+nosimd` functional for AArch32 Targets (PR #130623)

2025-03-11 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. Thanks for the fixes. LGTM now. https://github.com/llvm/llvm-project/pull/130623 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commit

[clang] [llvm] [Clang][LLVM] Implement multi-single vectors MOP4{A/S} (PR #129226)

2025-03-07 Thread Jonathan Thackray via cfe-commits
@@ -257,6 +266,17 @@ class SME2_Tile_Movaz_Pat(name # _PSEUDO) $tile, $base, $offset)>; +class SME2_ZA_Tile_TwoVec_Pat +: Pat<(intrinsic imm_ty:$tile, vt:$Zn, vt:$Zm), + (!cast(name # _PSEUDO) $tile, $Zn, $Zm)>; + +class SME2_ZA_Tile_Vec_Multi_Pat j

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray deleted https://github.com/llvm/llvm-project/pull/128854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray deleted https://github.com/llvm/llvm-project/pull/128854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
@@ -3064,6 +3064,76 @@ let TargetPrefix = "aarch64" in { def int_aarch64_sme_usmopa_wide : SME_OuterProduct_Intrinsic; def int_aarch64_sme_usmops_wide : SME_OuterProduct_Intrinsic; + class SME_OuterProduct_QuaterTile_Single + : DefaultAttrsIntrinsic<[], + [l

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
@@ -600,35 +624,65 @@ class sme_quarter_outer_product_i16_i32{ +multiclass sme_quarter_outer_product_i8_i32{ def _MZZ_BToS : sme_quarter_outer_product_i8_i32<{zn_u, 0}, {zm_u, 0}, subtr, -ZPR8Mul2_Lo, ZPR8Mul2_Hi, mnem

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/128854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
@@ -600,35 +624,65 @@ class sme_quarter_outer_product_i16_i32{ +multiclass sme_quarter_outer_product_i8_i32{ jthackray wrote: Add `// Single vectors` similar to lower down in the file. https://github.com/llvm/llvm-project/pull/128854

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/128854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement single-multi vectors MOP4{A/S} (PR #128854)

2025-02-27 Thread Jonathan Thackray via cfe-commits
@@ -3064,6 +3064,76 @@ let TargetPrefix = "aarch64" in { def int_aarch64_sme_usmopa_wide : SME_OuterProduct_Intrinsic; def int_aarch64_sme_usmops_wide : SME_OuterProduct_Intrinsic; + class SME_OuterProduct_QuaterTile_Single jthackray wrote: nit: I think

[clang] [llvm] [AARCH64][Neon] switch to using bitcasts in arm_neon.h where appropriate (PR #127043)

2025-02-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM. Glad to see the "utterly horrific" code gone :) https://github.com/llvm/llvm-project/pull/127043 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailm

[clang] [Clang][Sema] Add special handling of mfloat8 in initializer lists (PR #125097)

2025-02-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/125097 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM] Implement single-single vectors MOP4{A/S} (PR #127797)

2025-02-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/127797 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC] remove string literals from AArch64SVEACLETypes.def (PR #125063)

2025-01-30 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/125063 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64][Clang] Update untyped sme intrinsics with fp8 variants (PR #124543)

2025-01-29 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/124543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement NEON FP8 intrinsics for fused multiply-add (indexed) (PR #123615)

2025-01-22 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. Phew, massive diff, LGTM. https://github.com/llvm/llvm-project/pull/123615 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add Neon FP8 conversion intrinsics (PR #123612)

2025-01-22 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/123612 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add FP8 Neon intrinsics for dot-product (PR #123613)

2025-01-22 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/123613 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement NEON FP8 fused multiply-add intrinsics (non-indexed) (PR #123614)

2025-01-22 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. Déjà vu, LGTM. https://github.com/llvm/llvm-project/pull/123614 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] Update SVE untyped intrinsics to have FP8 variants (PR #123585)

2025-01-21 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/123585 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] Refactor implementation of FP8 types (NFC) (PR #123604)

2025-01-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/123604 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] Implement NEON FP8 vectors as VectorType (PR #123603)

2025-01-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/123603 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] Update SVE untyped intrinsics to have FP8 variants (PR #123585)

2025-01-20 Thread Jonathan Thackray via cfe-commits
@@ -2280,15 +2280,15 @@ let SVETargetGuard = "sve2p1", SMETargetGuard = "sme2" in { let SVETargetGuard = "sve2p1", SMETargetGuard = InvalidMode in { // ZIPQ1, ZIPQ2, UZPQ1, UZPQ2 - def SVZIPQ1 : SInst<"svzipq1[_{d}]", "ddd", "cUcsUsiUilUlbhfd", MergeNone, "aarch64_sve_zip

[clang] [AArch64] Update SVE untyped intrinsics to have FP8 variants (PR #123585)

2025-01-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/123585 >From 7e8fd043297335e28da41d28bf9ac8cc7fc5ab32 Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 17 Jan 2025 17:09:22 + Subject: [PATCH 1/2] [AArch64] Update SVE untyped intrinsics to have FP8 v

[clang] [AArch64] Update SVE untyped intrinsics to have FP8 variants (PR #123585)

2025-01-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray created https://github.com/llvm/llvm-project/pull/123585 Update the following intrinsics to have FP8 variants: ``` c svuint8_t svdup_laneq[_u8](svuint8_t zn, uint64_t imm_idx); svuint8_t svextq[_u8](svuint8_t zdn, svuint8_t zm, uint64_t imm); svint8_t svtblq[_s8](svi

[clang] [FMV][AArch64][clang] Advance __FUNCTION_MULTI_VERSIONING_SUPPORT_LEVEL to ACLE Q3 (PR #123056)

2025-01-15 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/123056 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] FP8 implicit bitcast (PR #122893)

2025-01-15 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/122893 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] FP8 implicit bitcast (PR #122893)

2025-01-15 Thread Jonathan Thackray via cfe-commits
@@ -7429,6 +7429,11 @@ class Sema final : public SemaBase { /// the perspective of SVE bitcasts. bool isValidSveBitcast(QualType srcType, QualType destType); + /// Check for bitcast beween a regular vector type and builtin Neon vector jthackray wrote: ty

[clang] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1 now fully implemented by ACLE (PR #122705)

2025-01-14 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/122705 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1 now fully implemented by ACLE (PR #122705)

2025-01-13 Thread Jonathan Thackray via cfe-commits
@@ -1045,6 +1045,9 @@ X86 Support Arm and AArch64 Support ^^^ +- Support for SVE2.1 and SME2.1 using the Arm C Language Extensions (ACLE) is jthackray wrote: Done. https://github.com/llvm/llvm-project/pull/122705 _

[clang] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1 now fully implemented by ACLE (PR #122705)

2025-01-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/122705 >From 4206edb54ccad4012970ec1b14748f81ccf5b01c Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Mon, 13 Jan 2025 13:23:20 + Subject: [PATCH 1/2] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1 no

[clang] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1 now fully implemented by ACLE (PR #122705)

2025-01-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray created https://github.com/llvm/llvm-project/pull/122705 None >From 4206edb54ccad4012970ec1b14748f81ccf5b01c Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Mon, 13 Jan 2025 13:23:20 + Subject: [PATCH] [NFC][AArch64] Add relnote saying SVE2.1 and SME2.1

[clang] [llvm] [Arm] Generate explicit bitcasts in NeonEmitter (PR #121802)

2025-01-10 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/121802 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Change feature dependencies of fp8 features (PR #122280)

2025-01-09 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/122280 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Clang][LLVM][AArch64]Add new feature SSVE-BitPerm (PR #121947)

2025-01-07 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/121947 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [LLVM][AArch64] Add new feature +sme-mop4 and +sme-tmop (PR #121935)

2025-01-07 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/121935 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Arm] Regenerate tests (NFC) (PR #121801)

2025-01-06 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/121801 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add Neon FP8 conversion intrinsics (PR #119033)

2025-01-06 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/119033 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][AArch64] Allow FP8 Neon vector types to be used by __builtin_shufflevector (PR #119031)

2025-01-06 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/119031 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add FP8 Neon intrinsics for dot-product (PR #119911)

2025-01-06 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/119911 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AArch64] Implement FP8 SVE/SME reinterpret intrinsics (PR #121063)

2024-12-24 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/121063 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Enable FEAT_SVE2p1 by default for Armv9.4-A and later (PR #120753)

2024-12-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/120753 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Enable FEAT_SVE2p1 by default for Armv9.4-A and later (PR #120753)

2024-12-20 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/120753 >From 519bcca2359ee9c89b12bac6e58eb955c79cd7bc Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 20 Dec 2024 14:50:37 + Subject: [PATCH 1/2] [AArch64] Enable FEAT_SVE2p1 by default for Armv9.4-A

[clang] [llvm] [AArch64] Enable FEAT_SVE2p1 by default for Armv9.4-A and later (PR #120753)

2024-12-20 Thread Jonathan Thackray via cfe-commits
jthackray wrote: > Actually this is being added as a mandatory dependency of 9.4, should it not > be added as one of the default features instead? Good point. I'll amend. https://github.com/llvm/llvm-project/pull/120753 ___ cfe-commits mailing list c

[clang] [Clang][AArch64] Remove const from base pointers in sve2p1 stores (PR #120551)

2024-12-19 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/120551 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][AArch64] Add signed index/offset variants of sve2p1 qword stores (PR #120549)

2024-12-19 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/120549 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement NEON FP8 intrinsics for fused multiply-add (indexed) (PR #120403)

2024-12-18 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/120403 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement NEON FP8 fused multiply-add intrinsics (non-indexed) (PR #120273)

2024-12-18 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM. Merry Christmas :) https://github.com/llvm/llvm-project/pull/120273 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/119922 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/119922 >From e235c1175aee293be30d3fc478d83c9b130e3452 Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 13 Dec 2024 20:07:37 + Subject: [PATCH 1/2] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FDOT single and multi instructions (PR #119845)

2024-12-16 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray closed https://github.com/llvm/llvm-project/pull/119845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
@@ -0,0 +1,54 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --filter-out "// kill:" --version 4 +; RUN: llc -force-streaming < %s | FileCheck %s +target triple = "aarch64-linux" + +define void @test_fvdot16_1x2_indexed(i32 %slice.0, +

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
@@ -5882,3 +5882,14 @@ multiclass sme2_fp8_fdot_index_za32_vg1x4; } + +multiclass sme2_fp8_fdotv_index_za32_vg1x4 { + def NAME : sme2_fp8_multi_vec_array_vg4_index, +SMEPseudo2Instr { +let Uses=[FPMR, FPCR]; jthack

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
@@ -5882,3 +5882,14 @@ multiclass sme2_fp8_fdot_index_za32_vg1x4; } + +multiclass sme2_fp8_fdotv_index_za32_vg1x4 { + def NAME : sme2_fp8_multi_vec_array_vg4_index, +SMEPseudo2Instr { +let Uses=[FPMR, FPCR]; + } + + def _PSEUDO :

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
@@ -748,11 +748,16 @@ let SMETargetGuard = "sme2" in { let SMETargetGuard = "sme-f8f32" in { def SVDOT_LANE_FP8_ZA32_VG1x2 : Inst<"svdot_lane_za32[_mf8]_vg1x2_fpm", "vm2di>", "m", MergeNone, "aarch64_sme_fp8_fdot_lane_za32_vg1x2", [IsStreaming, IsInOutZA, SetsFPMR, IsOverloa

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-16 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray updated https://github.com/llvm/llvm-project/pull/119922 >From e235c1175aee293be30d3fc478d83c9b130e3452 Mon Sep 17 00:00:00 2001 From: Jonathan Thackray Date: Fri, 13 Dec 2024 20:07:37 + Subject: [PATCH 1/2] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FVDOT, FVDOTB and FVDOTT intrinsics (PR #119922)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray created https://github.com/llvm/llvm-project/pull/119922 Add support for the following SME 8 bit floating-point dot-product intrinsics: ``` // Only if __ARM_FEATURE_SME_F8F16 != 0 void svvdot_lane_za16[_mf8]_vg1x2_fpm(uint32_t slice, svmfloat8x2_t zn,

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FDOT single and multi instructions (PR #119845)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/119845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FDOT single and multi instructions (PR #119845)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/119845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement intrinsics for FMLAL/FMLALL (single) (PR #119568)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/119568 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FDOT single and multi instructions (PR #119845)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/119845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Add intrinsics for SME FP8 FDOT single and multi instructions (PR #119845)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray edited https://github.com/llvm/llvm-project/pull/119845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement intrinsics for FP8 SME FMLAL/FMLALL (multi) (PR #119546)

2024-12-13 Thread Jonathan Thackray via cfe-commits
https://github.com/jthackray approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/119546 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [AArch64] Implement intrinsics for FP8 SME FMLAL/FMLALL (multi) (PR #119546)

2024-12-13 Thread Jonathan Thackray via cfe-commits
@@ -827,11 +827,21 @@ let SMETargetGuard = "sme-lutv2" in { let SMETargetGuard = "sme-f8f32" in { def SVMOPA_FP8_ZA32 : Inst<"svmopa_za32[_mf8]_m_fpm", "viPPdd>", "m", MergeNone, "aarch64_sme_fp8_fmopa_za32", [IsStreaming, IsInOutZA, SetsFPMR, I

[clang] [llvm] [AArch64] Implement intrinsics for FP8 SME FMLAL/FMLALL (multi) (PR #119546)

2024-12-13 Thread Jonathan Thackray via cfe-commits
@@ -827,11 +827,21 @@ let SMETargetGuard = "sme-lutv2" in { let SMETargetGuard = "sme-f8f32" in { def SVMOPA_FP8_ZA32 : Inst<"svmopa_za32[_mf8]_m_fpm", "viPPdd>", "m", MergeNone, "aarch64_sme_fp8_fmopa_za32", [IsStreaming, IsInOutZA, SetsFPMR, I

  1   2   3   4   >