[PATCH] D60583: [AArch64] Implement Vector Funtion ABI name mangling.

2019-06-04 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. In D60583#1529878 , @jdoerfert wrote: > Why/Where did we decide to clobber the attribute list with "non-existent > function names"? > I don't think an attribute list like this: > `attributes #1 = { "_ZGVsM2v_foo" "_ZGVsM32v_

[PATCH] D79708: [clang][BFloat] add NEON emitter for bfloat

2020-05-21 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/utils/TableGen/NeonEmitter.cpp:2198 +static void emitNeonTypeDefs(const std::string& types, raw_ostream &OS) { + std::string TypedefTypes(types); stuij wrote: > fpetrogalli wrote: > > Is this related to the

[PATCH] D80323: [SVE] Eliminate calls to default-false VectorType::get() from Clang

2020-05-21 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, it would be great if you could address the two comments I added, before submitting. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:10775 - llvm::VectorType *

[PATCH] D80323: [SVE] Eliminate calls to default-false VectorType::get() from Clang

2020-05-21 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. In D80323#2048457 , @rjmccall wrote: > I'm sympathetic to wanting to get rid of the boolean flag, but this is a > really invasive change for pretty minimal benefit. Why not leave > `VectorType::get` as meaning a non-scalable

[PATCH] D79708: [clang][BFloat] add NEON emitter for bfloat

2020-05-27 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM! Might be worth waiting an extra day or two before submitting to make sure the people who provided extra feedback are happy. Repository: rG LLVM Github Monorepo CHANGES SINC

[PATCH] D80740: [SveEmitter] Add SVE ACLE for svld1ro.

2020-05-28 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, efriedma. Herald added subscribers: cfe-commits, tschuett. Herald added a project: clang. fpetrogalli added a parent revision: D80738: [llvm][SVE] IR intrinsic for LD1RO.. Repository: rG LLVM Github Monorepo https://rev

[PATCH] D80851: [llvm][SveEmitter] SVE ACLE for quadword permute intrinsics.

2020-05-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: efriedma, sdesmalen, kmclaughlin. Herald added subscribers: cfe-commits, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: clang. The following intrinsics have been added, guarded by the macro `__ARM_

[PATCH] D80740: [SveEmitter] Add SVE ACLE for svld1ro.

2020-06-03 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG36b8af11d343: [SveEmitter] Add SVE ACLE for svld1ro. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80740/new/ https://reviews.llv

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-05 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, efriedma, stuij, ctetreau. Herald added subscribers: cfe-commits, tschuett. Herald added a reviewer: shafik. Herald added a reviewer: rengolin. Herald added a project: clang. The new SVE builtin type __SVBFloat16_t` is used

[PATCH] D80851: [llvm][SveEmitter] SVE ACLE for quadword permute intrinsics.

2020-06-15 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG017969de7662: [llvm][SveEmitter] SVE ACLE for quadword permute intrinsics. (authored by fpetrogalli). Changed prior to commit: https://reviews.llvm.org/D80851?vs=267392&id=270793#toc Repository: rG L

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-15 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 270911. fpetrogalli marked 4 inline comments as done. fpetrogalli added a comment. Thank you for the review @sdesmalen. Francesco Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81304/new/ https://reviews.ll

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-15 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81304/new/ https://reviews.llvm.org/D81304 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-16 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/include/clang/Basic/AArch64SVEACLETypes.def:44 #define SVE_VECTOR_TYPE(Name, MangledName, Id, SingletonId, NumEls, ElBits, \ -IsSigned, IsFP) \ +

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-16 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 271178. fpetrogalli marked 3 inline comments as done. fpetrogalli added a comment. Fix formatting issues, remove an unnecessary empty line. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81304/new/ https://r

[PATCH] D82908: [SVE] ACLE: Fix builtins for svdup_lane_bf16 and svcvtnt_bf16_f32_x

2020-07-01 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, thank you. Comment at: clang/utils/TableGen/SveEmitter.cpp:1265-1279 + OS << "#if defined(__ARM_FEATURE_SVE_BF16)\n"; + OS << "#define svcvtnt_bf16_x s

[PATCH] D50229: [ARM][AArch64] Add feature +fp16fml

2020-07-01 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Herald added a subscriber: danielkiss. Comment at: test/Driver/aarch64-cpus.c:518 +// RUN: %clang -target aarch64 -march=armv8.4-a -### -c %s 2>&1 | FileCheck -check-prefix=GENERICV84A-NO-FP16FML %s +// GENERICV84A-NO-FP16FML-NOT: "-target-feat

[PATCH] D83079: [clang] Default target features implied by `-march` on AArch64.

2020-07-02 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, efriedma, SjoerdMeijer. Herald added subscribers: cfe-commits, danielkiss, kristof.beyls. Herald added a project: clang. This patch is trying to align the interpretation of `-march` on AArch64 to what GCC has, in terms of t

[PATCH] D83079: [clang] Default target features implied by `-march` on AArch64.

2020-07-02 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked an inline comment as done. fpetrogalli added a comment. In D83079#2129371 , @SjoerdMeijer wrote: > I haven't looked into details of these arch extensions yet, will do that > tomorrow, but I don't think there's any disagreement, i.e., t

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-02 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 275283. fpetrogalli added a comment. Update the patch to limit its scope to generate the feature macros for `-march=armv8.6a+sve`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D83079/new/ https://reviews.l

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-07 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 276106. fpetrogalli added a comment. Removed the unrelated change of the empty line. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D83079/new/ https://reviews.llvm.org/D83079 Files: clang/lib/Driver/ToolC

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-07 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 276204. fpetrogalli added a comment. Addressed code review, moving the code and adding more testing, including the `v8.5` one. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D83079/new/ https://reviews.llvm.

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-08 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked 2 inline comments as done. fpetrogalli added inline comments. Comment at: clang/lib/Driver/ToolChains/Arch/AArch64.cpp:369 + if (llvm::is_contained(Features, "+v8.6a")) { +if (!llvm::is_contained(Features, "-i8mm") && +!llvm::is_contained(Features,

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-08 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 276542. fpetrogalli marked an inline comment as done. fpetrogalli added a comment. @sdesmalen, I have followed your suggestion to use insert instead of push_back! Code is much nicer now, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-13 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 277445. fpetrogalli added a comment. Update the `insert` invocation to use initializer list instead of calling it twice. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D83079/new/ https://reviews.llvm.org/D8

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-14 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 277879. fpetrogalli added a comment. Removed extra tests that are not needed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D83079/new/ https://reviews.llvm.org/D83079 Files: clang/lib/Driver/ToolChains/A

[PATCH] D83079: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

2020-07-14 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG438e95e95bfc: [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/

[PATCH] D81304: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`.

2020-06-18 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG3e59dfc30124: [llvm][SveEmitter] Emit the bfloat version of `svld1ro`. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81304/new/ h

[PATCH] D82141: [sve][acle] Add SVE BFloat16 extensions.

2020-06-18 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, ctetreau, efriedma, david-arm. Herald added subscribers: llvm-commits, cfe-commits, psnobl, rkruppe, hiraditya, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added projects: clang, LLVM. List of intrin

[PATCH] D82178: [AArch64][SVE] Guard svbfloat16_t with feature macro in ACLE

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/utils/TableGen/SveEmitter.cpp:1092 + OS << "#if !defined(__ARM_FEATURE_BF16_SCALAR_ARITHMETIC)\n"; + OS << "#error \"__ARM_FEATURE_BF16_SCALAR_ARITHMETIC must be defined when " +"__ARM_FEATURE_SVE_BF16 is defined\"\n"

[PATCH] D82187: [AArch64][SVE] ACLE: Add bfloat16 to struct load/stores.

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/include/clang/Basic/AArch64SVEACLETypes.def:69 -SVE_VECTOR_TYPE("__SVBFloat16_t", "__SVBFloat16_t", SveBFloat16, SveBFloat16Ty, 8, 16, false, false, true) +SVE_VECTOR_TYPE("__SVBFloat16_t", "__SVBFloat16_t", SveBFloat16, Sv

[PATCH] D82186: [AArch64][SVE] Add bfloat16 support to svlen intrinsic

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_len.c:2 // REQUIRES: aarch64-registered-target -// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -S -O1

[PATCH] D82182: [AArch64][SVE] Add bfloat16 support to perm and select intrinsics

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/include/clang/Basic/arm_sve.td:1115 +let ArchGuard = "defined(__ARM_FEATURE_SVE_BF16)" in { +def SVREV_BF16: SInst<"svrev[_{d}]","dd", "b", MergeNone, "aarch64_sve_rev">; nit: could create a multic

[PATCH] D82141: [sve][acle] Add SVE BFloat16 extensions.

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: llvm/include/llvm/IR/IntrinsicsAArch64.td:1811 +def int_aarch64_sve_cvt_bf16f32 : Builtin_SVCVT<"svcvt_bf16_f32_m", llvm_nxv8bf16_ty, llvm_nxv8i1_ty, llvm_nxv4f32_ty>; +def int_aarch64_sve_cvtnt_bf16f32 : Builtin_SVCVT<"sv

[PATCH] D82141: [sve][acle] Add SVE BFloat16 extensions.

2020-06-19 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 272170. fpetrogalli marked 7 inline comments as done. fpetrogalli added a comment. Thank you for the review @sdesmalen! Francesco Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82141/new/ https://reviews.ll

[PATCH] D82178: [AArch64][SVE] Guard svbfloat16_t with feature macro in ACLE

2020-06-22 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM! Thanks. Comment at: clang/utils/TableGen/SveEmitter.cpp:1092 + OS << "#if !defined(__ARM_FEATURE_BF16_SCALAR_ARITHMETIC)\n"; + OS << "#error \"__ARM_FEATURE

[PATCH] D82298: [AArch64][SVE] Add bfloat16 support to load intrinsics

2020-06-22 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli requested changes to this revision. fpetrogalli added inline comments. This revision now requires changes to proceed. Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ldnf1.c:2-4 +// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -D__ARM_FEATURE_BF16_SCALAR_ARITHME

[PATCH] D82141: [sve][acle] Add SVE BFloat16 extensions.

2020-06-22 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 272480. fpetrogalli added a comment. Formatting changes. NFC. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82141/new/ https://reviews.llvm.org/D82141 Files: clang/include/clang/Basic/arm_sve.td clang/

[PATCH] D82141: [sve][acle] Add SVE BFloat16 extensions.

2020-06-22 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGef597eda8efc: [sve][acle] Add SVE BFloat16 extensions. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82141/new/ https://reviews.l

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-22 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, kmclaughlin, c-rhodes, ctetreau. Herald added subscribers: llvm-commits, cfe-commits, psnobl, rkruppe, hiraditya, tschuett. Herald added a reviewer: efriedma. Herald added projects: clang, LLVM. The following intrinsics ha

[PATCH] D82298: [AArch64][SVE] Add bfloat16 support to load intrinsics

2020-06-23 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, thanks! CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82298/new/ https://reviews.llvm.org/D82298 ___ cfe-commits mailing

[PATCH] D82182: [AArch64][SVE] Add bfloat16 support to perm and select intrinsics

2020-06-23 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/include/clang/Basic/arm_sve.td:1115 +let ArchGuard = "defined(__ARM_FEATURE_SVE_BF16)" in { +def SVREV_BF16: SInst<"svrev[_{d}]","dd", "b", MergeNone, "aarch64_sve_rev">; c-rhodes wrote: > c-rhodes

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-23 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 272828. fpetrogalli added a comment. Updates: 1. extracted bfloat C tests into separate files (`*-bfloat.c). 2. Added missing tests (`clast[a|b]`, `last[a|b]`) 3. Tested warning is raised for missing declaration when macro `__ARM_FEATURE_SVE_BF16` is not

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-23 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: c-rhodes, kmclaughlin, efriedma, sdesmalen, ctetreau. Herald added subscribers: llvm-commits, cfe-commits, psnobl, rkruppe, hiraditya, tschuett. Herald added projects: clang, LLVM. The following intrinsics has been added: svuint16_

[PATCH] D82448: [AArch64][SVE] Add bfloat16 support to store intrinsics

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, just one nit. Francesco Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c:4 +// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -D__ARM_FEATURE

[PATCH] D82391: [AArch64][SVE] Add bfloat16 support to svext intrinsic

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM! Thank you. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82391/new/ https://reviews.llvm.org/D82391 _

[PATCH] D82448: [AArch64][SVE] Add bfloat16 support to store intrinsics

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli requested changes to this revision. fpetrogalli added a comment. This revision now requires changes to proceed. Thank you for updating the patch with the missing tests. I only have one request for the code involving assertions, and the use of `let Predicates = ...`. Francesco ===

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: kmclaughlin, efriedma, ctetreau, sdesmalen, david-arm. Herald added subscribers: llvm-commits, cfe-commits, psnobl, rkruppe, hiraditya, tschuett. Herald added projects: clang, LLVM. Repository: rG LLVM Github Monorepo https://rev

[PATCH] D82391: [AArch64][SVE] Add bfloat16 support to svext intrinsic

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli requested changes to this revision. fpetrogalli added a comment. This revision now requires changes to proceed. Putting it on hold as we need to guard those patterns with `HasBF16`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82391/new

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked 11 inline comments as done. fpetrogalli added inline comments. Comment at: llvm/test/CodeGen/AArch64/sve-intrinsics-counting-bits.ll:1 ; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve < %s 2>%t | FileCheck %s ; RUN: FileCheck --check-prefix=WARN --allow-empt

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked an inline comment as done. fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c:7 +// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -D__ARM_FEATURE_SVE2 -D__ARM_FEATURE_BF16_SCALAR_ARITHMETIC -triple aarch64-n

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-24 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273225. fpetrogalli marked an inline comment as done. fpetrogalli added a comment. Add predicate to the patterns in the backend. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82429/new/ https://reviews.llvm

[PATCH] D82448: [AArch64][SVE] Add bfloat16 support to store intrinsics

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, thank you! Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c:4 +// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -D__ARM_FEATURE_BF16_SCALAR_A

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked 2 inline comments as done. fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c:5 + +#include + david-arm wrote: > Hi @fpetrogalli, in the same way that you asked @kmclaughlin

[PATCH] D82391: [AArch64][SVE] Add bfloat16 support to svext intrinsic

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, thank you! CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82391/new/ https://reviews.llvm.org/D82391 ___ cfe-commits mail

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273399. fpetrogalli marked an inline comment as done. fpetrogalli added a comment. @david-arm, at the end I decided to add the `ASM-NOT` test, it was easy and came for free. Also, I have moved the IR tests in the file with all other bitcasts, using a fu

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked 2 inline comments as done. fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c:7 +// RUN: %clang_cc1 -D__ARM_FEATURE_SVE -D__ARM_FEATURE_SVE2 -D__ARM_FEATURE_BF16_SCALAR_ARITHMETIC -triple aarch64-n

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273411. fpetrogalli added a comment. Removed the run lines that didn't work, as described in https://reviews.llvm.org/D82429#inline-759371 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82429/new/ https://r

[PATCH] D82429: [sve][acle] Add some C intrinsics for brain float types.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. fpetrogalli marked an inline comment as done. Closed by commit rG7200fa38a912: [sve][acle] Add some C intrinsics for brain float types. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST AC

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273498. fpetrogalli marked 5 inline comments as done. fpetrogalli added a comment. This patch needed some love... @c-rhodes, I have addressed your feedback, thank you. I have also predicated all the instruction selection pattern for `-mattr=+bf16`, and

[PATCH] D82623: [sve][acle] Enable feature macros for SVE ACLE extensions.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Reviewers, I have added 2 parent revision with the last two set of intrinsics that are enabled by the macro introduced in this patch. I will update those tests in this patch once the patches are in. Meanwhile, please double check that my interpretation of the featur

[PATCH] D82623: [sve][acle] Enable feature macros for SVE ACLE extensions.

2020-06-25 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, efriedma, c-rhodes, kmclaughlin, SjoerdMeijer. Herald added subscribers: cfe-commits, psnobl, rkruppe, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: clang. fpetrogalli added parent revi

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked 2 inline comments as done. fpetrogalli added inline comments. Comment at: llvm/test/CodeGen/AArch64/sve-bitcast-bfloat.ll:8 + +define @bitcast_bfloat_to_i8( %v) { +; CHECK-LABEL: bitcast_bfloat_to_i8: david-arm wrote: > Aren't these tests all

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273737. fpetrogalli marked an inline comment as done. fpetrogalli added a comment. I removed the duplicate tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82501/new/ https://reviews.llvm.org/D82501 Fi

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGa15722c5ce47: [sve][acle] Add reinterpret intrinsics for brain float. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82501/new/ ht

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:426-427 + let Predicates = [HasSVE, HasBF16] in { +def : Pat<(nxv8bf16 (AArch64dup (bf16 FPR16:$src))), + (DUP_ZZI_H (INSERT_SUBREG (IMPLICIT_DEF), FPR16:$src, hsub), 0

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 273813. fpetrogalli marked 7 inline comments as done. fpetrogalli added a comment. Hi @c-rhodes, I have addressed all your comments but one, the one that asks to add the test cases for the splat, as it deserves a separate patch. I will ping you when it

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli marked an inline comment as done. fpetrogalli added inline comments. Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:426-427 + let Predicates = [HasSVE, HasBF16] in { +def : Pat<(nxv8bf16 (AArch64dup (bf16 FPR16:$src))), + (DUP_ZZI_H (INSE

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Ops, I accidentally removed the C tests... I'll revert, add the tests and recommit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82501/new/ https://reviews.llvm.org/D82501 __

[PATCH] D82501: [sve][acle] Add reinterpret intrinsics for brain float.

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Reverted in https://github.com/llvm/llvm-project/commit/ff5ccf258e297df29f32d6b5e4fa0a7b95c44f9c Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82501/new/ https://reviews.llvm.org/D82501 _

[PATCH] D82668: [AArch64][SVE] clang: Add missing svbfloat16_t tests

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/test/CodeGenCXX/aarch64-sve-typeinfo.cpp:4 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu %s -emit-llvm -o - \ -// RUN: -target-feature +sve | FileCheck %s +// RUN: -target-feature +sve,+bf16 | FileCheck %s --

[PATCH] D82665: [AArch64][SVE] Add bfloat16 to outstanding tuple vector intrinsics

2020-06-26 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c:9 +// A simple used,unused... macro, long enough to represent any SVE builtin. +#define SVE_ACLE_FUNC(A1,A2_UNUSED,A3,A4_UNUSED) A1##A3 +#else Nit:

[PATCH] D82665: [AArch64][SVE] Add bfloat16 to outstanding tuple vector intrinsics

2020-06-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: llvm/test/CodeGen/AArch64/sve-intrinsics-create-tuple.ll:1 -; RUN: llc -mtriple aarch64 -mattr=+sve -asm-verbose=1 < %s | FileCheck %s +; RUN: llc -mtriple aarch64 -mattr=+sve,+bf16 -asm-verbose=1 < %s | FileCheck %s -

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG67e4330facfb: [sve][acle] Implement some of the C intrinsics for brain float. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82345/

[PATCH] D82345: [sve][acle] Implement some of the C intrinsics for brain float.

2020-06-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 274149. fpetrogalli added a comment. Rebase on top of master. NFC Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82345/new/ https://reviews.llvm.org/D82345 Files: clang/include/clang/Basic/arm_sve.td cl

[PATCH] D82665: [AArch64][SVE] Add bfloat16 to outstanding tuple vector intrinsics

2020-06-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. LGTM, thank you. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82665/new/ https://reviews.llvm.org/D82665 ___ cfe-commits mail

[PATCH] D82668: [AArch64][SVE] clang: Add missing svbfloat16_t tests

2020-06-29 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. Ship it! :) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82668/new/ https://reviews.llvm.org/D82668 ___ cfe-commits mailing list cfe-co

[PATCH] D78509: [AArch64][SVE] Add addressing mode for contiguous loads & stores

2020-04-20 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli requested changes to this revision. fpetrogalli added a comment. This revision now requires changes to proceed. Hi @kmclaughlin , thank you for working on this! The patch LGTM, but please consider renaming the multiclass for the non faulting loads like I suggested. The rest of the fe

[PATCH] D78509: [AArch64][SVE] Add addressing mode for contiguous loads & stores

2020-04-20 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. This revision is now accepted and ready to land. I think I made a mess with the Actions for this review! I mean to accept it, not to enforce the nit comments! Francesco Repository: rG LLVM Github Monorepo CHANGES SINCE LAST AC

[PATCH] D78965: [clang][OpenMP] Fix mangling of linear parameters.

2020-04-27 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: ABataev, andwar. Herald added subscribers: cfe-commits, guansong, yaxunl. Herald added a reviewer: jdoerfert. Herald added a project: clang. The linear parameter token in the mangling function must be multiplied by the pointee size in

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-04-27 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added a reviewer: ABataev. Herald added subscribers: cfe-commits, danielkiss, guansong, kristof.beyls, yaxunl. Herald added a reviewer: jdoerfert. Herald added a project: clang. fpetrogalli added a comment. Hello reviewers, I know this is not how th

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-04-27 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Hello reviewers, I know this is not how the fix should be tested (`fprintf` in debug builds...). This function would benefit of some unitests in the `unittests` folder of clang, but I don't have a way to export it there as it is private to this module. I would lik

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-04-30 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. In D78969#2012591 , @jdoerfert wrote: > Is the NDS and WDS number never visible in the IR, e.g., as part of the name? Hang on, thanks for asking the question, maybe I can work something out here! :) They won't be visible in

[PATCH] D78965: [clang][OpenMP] Fix mangling of linear parameters.

2020-04-30 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 261225. fpetrogalli added a comment. Address review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78965/new/ https://reviews.llvm.org/D78965 Files: clang/lib/CodeGen/CGOpenMPRuntime.cpp clang/test/Ope

[PATCH] D78965: [clang][OpenMP] Fix mangling of linear parameters.

2020-05-01 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG7585ba208e67: [clang][OpenMP] Fix mangling of linear parameters. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78965/new/ https:/

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-05-01 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 261610. fpetrogalli added a comment. I have added (indirect) testing of the values of NDS and WDS. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78969/new/ https://reviews.llvm.org/D78969 Files: clang/li

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-05-01 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 261611. fpetrogalli added a comment. Removed single use variable definition. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78969/new/ https://reviews.llvm.org/D78969 Files: clang/lib/CodeGen/CGOpenMPRunt

[PATCH] D85977: [release][docs] Update contributions to LLVM 11 for SVE.

2020-08-14 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. Herald added subscribers: llvm-commits, cfe-commits, tschuett. Herald added projects: clang, LLVM. fpetrogalli requested review of this revision. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D85977 Files: clang/test/CodeGen/aarch64-sve-acle-

[PATCH] D85977: [release][docs] Update contributions to LLVM 11 for SVE.

2020-08-14 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 285678. fpetrogalli added a comment. Added context to the diff. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85977/new/ https://reviews.llvm.org/D85977 Files: clang/test/CodeGen/aarch64-sve-acle-example.cpp llvm/docs/ReleaseNotes.rst Inde

[PATCH] D85977: [release][docs] Update contributions to LLVM 11 for SVE.

2020-08-14 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 285731. fpetrogalli added a comment. Fix indentation of the code exmaple. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85977/new/ https://reviews.llvm.org/D85977 Files: clang/test/CodeGen/aarch64-sve-ac

[PATCH] D86065: [SVE] Make ElementCount members private

2020-08-17 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: llvm/include/llvm/Support/TypeSize.h:56 + friend bool operator>(const ElementCount &LHS, const ElementCount &RHS) { +assert(LHS.Scalable == RHS.Scalable && I think that @ctetreau is right on https://reviews.l

[PATCH] D85977: [release][docs] Update contributions to LLVM 11 for SVE.

2020-08-17 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 286057. fpetrogalli marked 3 inline comments as done. fpetrogalli added a comment. Thank you for the review @david-arm. I have addressed all your comments, and I also have removed the additional unit tests that was checking that the example in the docs wa

[PATCH] D78190: Add Bfloat IR type

2020-05-04 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Hi @stuij, thank you for working on this! Admittedly, I don't know much about the Asm parser, but I have left some comments anyway. 1. Shouldn't we test also that the parser is happy with the following expressions? bfloat * %... = fadd %..., %... similar

[PATCH] D78190: Add Bfloat IR type

2020-05-05 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli accepted this revision. fpetrogalli added a comment. Hi @stuij, thank you for adding the vector tests. I can say the patch LGTM now :) Francesco Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78190/new/ https://reviews.llvm.org/D78190

[PATCH] D78969: [clang][OpenMP] Fix getNDSWDS for aarch64.

2020-05-05 Thread Francesco Petrogalli via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG4fa13a3dac1e: [clang][OpenMP] Fix getNDSWDS for aarch64. (authored by fpetrogalli). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78969/new/ https://reviews

[PATCH] D79639: [SveEmitter] Builtins for SVE matrix multiply `mmla`.

2020-05-08 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli created this revision. fpetrogalli added reviewers: sdesmalen, kmclaughlin, efriedma. Herald added subscribers: cfe-commits, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a project: clang. fpetrogalli added a parent revision: D79638: [llvm][SVE] IR intrinscs f

[PATCH] D79639: [SveEmitter] Builtins for SVE matrix multiply `mmla`.

2020-05-08 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 262923. fpetrogalli added a comment. I replaced the lines `Signed = !Signed` in the tablegen emitter with `Signed = false`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79639/new/ https://reviews.llvm.org

[PATCH] D79639: [SveEmitter] Builtins for SVE matrix multiply `mmla`.

2020-05-11 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Adding some text here as phabricator refuses to submit with an empty comment... Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79639/new/ https://reviews.llvm.org/D79639 ___

[PATCH] D79639: [SveEmitter] Builtins for SVE matrix multiply `mmla`.

2020-05-11 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli updated this revision to Diff 263239. fpetrogalli marked 4 inline comments as done. fpetrogalli added a comment. Thank you for the review @sdesmalen, I have addressed all your comments. Francesco Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm

[PATCH] D79708: [clang][BFloat] add NEON emitter for bfloat

2020-05-13 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added a comment. Hi @stuij , thank you for working on this. Would it make sense to add a test that includes the header file you have created? Regards, Francesco Comment at: clang/include/clang/Basic/arm_neon_incl.td:293 + + string CartesianProductWith = ""; }

[PATCH] D79710: [clang][BFloat] add create/set/get/dup intrinsics

2020-05-13 Thread Francesco Petrogalli via Phabricator via cfe-commits
fpetrogalli added inline comments. Comment at: clang/test/CodeGen/aarch64-bf16-getset-intrinsics.c:119-120 +// CHECK-LABEL: test_vduph_laneq_bf16 +// CHECK64: %vgetq_lane = extractelement <8 x bfloat> %v, i32 7 +// CHECK32: %vget_lane = extractelement <8 x bfloat> %v, i32 7 -

  1   2   3   >