[PATCH] D94290: [clang][AArch64][SVE] Avoid going through memory for coerced VLST return values

2021-01-11 Thread Joe Ellis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8ea72b388734: [clang][AArch64][SVE] Avoid going through memory for coerced VLST return values (authored by joechrisellis). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D92761: [clang][AArch64][SVE] Avoid going through memory for VLAT <-> VLST casts

2020-12-07 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: peterwaller-arm, DavidTruby. Herald added subscribers: psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. joechrisellis requested review of this revision. Herald added projects: clang, LLVM. Herald added

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2020-12-07 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: peterwaller-arm, DavidTruby. Herald added subscribers: psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. joechrisellis requested review of this revision. Herald added a project: clang. Herald added a subscriber:

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2020-12-08 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 310185. joechrisellis added a comment. Do not try to generate `llvm.experimental.vector.extract` instructions if the vector element types differ. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92762/new/

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2020-12-09 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 310532. joechrisellis added a comment. Herald added a subscriber: NickHung. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92762/new/ https://reviews.llvm.org/D92762 Files:

[PATCH] D92761: [clang][AArch64][SVE] Avoid going through memory for VLAT <-> VLST casts

2020-12-09 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 310529. joechrisellis added a comment. Herald added a subscriber: NickHung. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92761/new/ https://reviews.llvm.org/D92761 Files:

[PATCH] D91806: [SVE] Remove warning from debug info on scalable vector.

2020-12-02 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis commandeered this revision. joechrisellis edited reviewers, added: fpetrogalli; removed: joechrisellis. joechrisellis added a comment. I am finishing up this patch.  Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91806/new/

[PATCH] D91806: [SVE] Remove warning from debug info on scalable vector.

2020-12-02 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 308910. joechrisellis added a comment. Reduce debug info in `debug-declare-no-warnings-on-scalable-vectors.ll`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91806/new/ https://reviews.llvm.org/D91806

[PATCH] D91806: [SVE] Remove warning from debug info on scalable vector.

2020-12-02 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 308964. joechrisellis added a comment. Address @sdesmalen's comments. - Update commit message to better reflect the changes in this patch. - Rename `debug-declare-no-warnings-on-scalable-vectors.ll` to `dbg-info-scalable-typesize-warning.ll`.

[PATCH] D93206: [AArch64][NEON] Remove undocumented vceqz{,q}_p16, vml{a,s}q_n_f64 intrinsics

2020-12-14 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: bsmith, pbarrio, AshokBhat. Herald added subscribers: danielkiss, kristof.beyls. joechrisellis requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Prior to this patch, Clang

[PATCH] D93206: [AArch64][NEON] Remove undocumented vceqz{,q}_p16, vml{a,s}q_n_f64 intrinsics

2020-12-15 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG5a2a8369e82c: [AArch64][NEON] Remove undocumented vceqz{,q}_p16, vml{a,s}q_n_f64 intrinsics (authored by joechrisellis). Repository: rG LLVM

[PATCH] D92761: [clang][AArch64][SVE] Avoid going through memory for VLAT <-> VLST casts

2020-12-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added reviewers: c-rhodes, aeubanks. joechrisellis added subscribers: aeubanks, c-rhodes. joechrisellis added a comment. Adding reviewers @c-rhodes and @aeubanks because `git blame` tells me they've touched the surrounding code.  Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis marked an inline comment as done. joechrisellis added inline comments. Comment at: clang/lib/AST/ASTContext.cpp:8563-8566 +if (const auto *BT = FirstType->getAs()) { + if (const auto *VT = SecondType->getAs()) { +if (VT->getVectorKind() ==

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 304469. joechrisellis marked 3 inline comments as done. joechrisellis added a comment. Address @fpetrogalli's comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91067/new/

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: fpetrogalli, peterwaller-arm, DavidTruby. Herald added subscribers: cfe-commits, psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. Herald added a project: clang. joechrisellis requested review of this revision.

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 304513. joechrisellis added a comment. Add tests for C-style casts to/from scalable/fixed float vector types. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91262/new/ https://reviews.llvm.org/D91262

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 304553. joechrisellis marked 4 inline comments as done. joechrisellis added a comment. Address @fpetrogalli's comments. - Add version of ACLE spec. - Use ACLE nomenclature. - Introduce preprocessor macro to reduce code size of

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-11 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/test/Sema/aarch64-sve-explicit-casts-fixed-size.cpp:16 +// Fixed-size SVE types can be cast to scalable SVE types (regardless of lane size). +// NOTE: the list below is not exhaustive for all SVE types. +

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-16 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 305494. joechrisellis added a comment. Remove failing test; it was checking that a conversion _failed_, although the conversion should now _pass_ given the changes in this patch. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D91696: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

2020-11-18 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 306043. joechrisellis added a comment. Remove redundant tests from clang/test/Sema/attr-arm-sve-vector-bits.c. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91696/new/ https://reviews.llvm.org/D91696

[PATCH] D91696: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

2020-11-18 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: fpetrogalli, peterwaller-arm. Herald added subscribers: cfe-commits, psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. Herald added a project: clang. joechrisellis requested review of this revision. Previously,

[PATCH] D91696: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

2020-11-19 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 306351. joechrisellis marked an inline comment as done. joechrisellis added a comment. Address @c-rhodes's comments regarding lax conversion when __ARM_FEATURE_SVE_BITS != N for GNU vectors. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D91696: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

2020-11-19 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/test/Sema/attr-arm-sve-vector-bits.c:278-283 -// Test implicit conversion between SVE and GNU vector is invalid when -// __ARM_FEATURE_SVE_BITS != N -#if defined(__ARM_FEATURE_SVE_BITS) && __ARM_FEATURE_SVE_BITS == 512

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-19 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 306358. joechrisellis added a comment. Avoid doing `FirstType->getAs()`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91262/new/ https://reviews.llvm.org/D91262 Files: clang/include/clang/Sema/Sema.h

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-19 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1e2da3839cc3: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors (authored by joechrisellis). Repository: rG LLVM Github

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 305763. joechrisellis marked 7 inline comments as done. joechrisellis added a comment. Address @c-rhodes's and @peterwaller-arm's comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91262/new/

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/lib/Sema/SemaCast.cpp:2217-2218 - // Allow reinterpret_casts between vectors of the same size and - // between vectors and integers of the same size. bool destIsVector = DestType->isVectorType();

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 305769. joechrisellis added a comment. Address @c-rhodes's comment regarding comment change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91262/new/ https://reviews.llvm.org/D91262 Files:

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/lib/Sema/SemaCast.cpp:2217-2218 - // Allow reinterpret_casts between vectors of the same size and - // between vectors and integers of the same size. bool destIsVector = DestType->isVectorType();

[PATCH] D91642: [AArch64][SVE] Add tests for VLST -> VLAT lax conversions

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added a reviewer: fpetrogalli. Herald added subscribers: cfe-commits, psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. Herald added a project: clang. joechrisellis requested review of this revision. These were previously

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG23a96b84a8d9: [AArch64][SVE] Support implicit lax vector conversions for SVE types (authored by joechrisellis). Repository: rG LLVM Github

[PATCH] D91642: [AArch64][SVE] Add tests for VLST -> VLAT lax conversions

2020-11-17 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1d7abcf99e3d: [AArch64][SVE] Add tests for VLST - VLAT lax conversions (authored by joechrisellis). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-09 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: peterwaller-arm, fpetrogalli, DavidTruby. Herald added subscribers: cfe-commits, psnobl, kristof.beyls, tschuett. Herald added a reviewer: rengolin. Herald added a reviewer: efriedma. Herald added a project: clang. joechrisellis

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-09 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 303838. joechrisellis marked an inline comment as done. joechrisellis added a comment. Address @peterwaller-arm's comment regarding unused types. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91067/new/

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-09 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/test/Sema/aarch64-sve-lax-vector-conversions.cpp:15 +typedef svint32_t fixed_int32_t FIXED_ATTR; +typedef svint64_t fixed_int64_t FIXED_ATTR; + peterwaller-arm wrote: > I can't see any uses of

[PATCH] D91696: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

2020-11-23 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG3c696a212ba4: [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors (authored by joechrisellis). Repository: rG LLVM Github Monorepo

[PATCH] D91067: [AArch64][SVE] Support implicit lax vector conversions for SVE types

2020-11-12 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 304811. joechrisellis marked an inline comment as done. joechrisellis added a comment. - Support C lax vector conversions. - Test C lax vector conversions. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-12 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/lib/Sema/SemaCast.cpp:-2227 +// Allow bitcasting if either the source or destination is a scalable +// vector. +if (SrcType->isSizelessBuiltinType() || DestType->isSizelessBuiltinType()) { + Kind =

[PATCH] D91262: [AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors

2020-11-12 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 304796. joechrisellis marked 2 inline comments as done. joechrisellis added a comment. Address @c-rhodes's comments. - Only allow casting between VLATs and VLSTs. - Add C test. - Move C++ test to the correct directory. - Remove superfluous test.

[PATCH] D91333: [clang][SveEmitter] Fix enum declarations. [NFCI]

2020-11-12 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added a comment. Thanks for the patch @fpetrogalli! One small comment from me, but not a blocker for me, so approved. Comment at: clang/test/Sema/aarch64-sve-enums.c:14-15 +#include +enum svpattern a1 = SV_ALL; +svpattern b1 = {1.0f}; +enum svprfop a2 =

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2021-01-05 Thread Joe Ellis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG3d5b18a3fdf4: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments (authored by joechrisellis). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D94290: [clang][AArch64][SVE] Avoid going through memory for coerced VLST return values

2021-01-08 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: c-rhodes, bsmith, peterwaller-arm. Herald added subscribers: NickHung, psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. joechrisellis requested review of this revision. Herald added a project: clang. Herald

[PATCH] D94290: [clang][AArch64][SVE] Avoid going through memory for coerced VLST return values

2021-01-08 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 315339. joechrisellis added a comment. Address @c-rhodes's comment. - Use `SrcTy` instead of `Src.getElementType()`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D94290/new/

[PATCH] D93101: [Clang][Codegen] Truncate initializers of union bitfield members

2021-01-13 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:9803-9804 + (Field->isBitField() && +truncateBitfieldValue(Info, InitExpr, Result.getUnionValue(), + Field)); } nit: I would

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2021-01-04 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 314354. joechrisellis marked 2 inline comments as done. joechrisellis added a comment. Address @c-rhodes's comments. - Make comment clearer. - Change structure of the if statements for better readability. - Drop superfluous `this->`. Repository: rG

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2021-01-04 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 314365. joechrisellis added a comment. Address @c-rhodes's comment. - Use name `castFixedSve` instead of `castScalableSve`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92762/new/

[PATCH] D92762: [clang][AArch64][SVE] Avoid going through memory for coerced VLST arguments

2021-01-04 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis marked an inline comment as done. joechrisellis added inline comments. Comment at: clang/lib/CodeGen/CGCall.cpp:2671-2673 + // See if this is a VLST coerced to a VLAT at the function boundary and + // the types match up. If so, use

[PATCH] D92761: [clang][AArch64][SVE] Avoid going through memory for VLAT <-> VLST casts

2020-12-16 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 312150. joechrisellis added a comment. Address @c-rhodes's comments. - Add a comment stating that we intend to eliminate going through memory when the element types of the vectors are not the same (for example, with predicates). - Doc comments for

[PATCH] D92761: [clang][AArch64][SVE] Avoid going through memory for VLAT <-> VLST casts

2020-12-16 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGdad07baf123e: [clang][AArch64][SVE] Avoid going through memory for VLAT - VLST casts (authored by joechrisellis). Repository: rG LLVM Github

[PATCH] D101986: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains

2021-05-13 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG2ed7db0d206b: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains (authored by joechrisellis). Repository: rG LLVM Github

[PATCH] D101986: [InstSimplify] Remove redundant {insert,extract}_vector intrinsic chains

2021-05-06 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: bsmith, DavidTruby, peterwaller-arm. Herald added a subscriber: hiraditya. joechrisellis requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. This commit

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-22 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 325410. joechrisellis added a comment. Address comments. - @c-rhodes: remove test; it is probably not necessary. - @craig.topper: add better constraints for when we do/don't bail out. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-23 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1b1b30cf0f7d: [clang][SVE] Dont warn on vector to sizeless builtin implicit conversion (authored by joechrisellis). Repository: rG LLVM Github

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-23 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 325749. joechrisellis marked an inline comment as done. joechrisellis added a comment. Address linter comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97053/new/ https://reviews.llvm.org/D97053

[PATCH] D96852: [clang][SVE] Remove inline keyword from arm_sve.h

2021-02-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: DavidTruby, peterwaller-arm, paulwalker-arm, bsmith. Herald added subscribers: psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. joechrisellis requested review of this revision. Herald added a project: clang.

[PATCH] D96852: [clang][SVE] Remove inline keyword from arm_sve.h

2021-02-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 324311. joechrisellis added a comment. This revision is now accepted and ready to land. Use __inline__ instead of inline. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96852/new/

[PATCH] D96852: [clang][SVE] Remove inline keyword from arm_sve.h

2021-02-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added a comment. > That makes sense and suggests we're missing some additional C++ testing? Agreed -- this passes all tests at the moment, so we can do better test-wise. The error to do with the one definition rule would crop up at link time, though, so we'd need at least two

[PATCH] D96852: [clang][SVE] Remove inline keyword from arm_sve.h

2021-02-17 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis planned changes to this revision. joechrisellis added a comment. Speaking to @DavidTruby about this, it appears that this fix is insufficient -- `inline` has important semantic meaning in C++ that means that we can't simply omit the keyword here. The `inline` keyword bypasses the

[PATCH] D96852: [clang][SVE] Use __inline__ instead of inline in arm_sve.h

2021-02-18 Thread Joe Ellis via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1f2122c9b046: [clang][SVE] Use __inline__ instead of inline in arm_sve.h (authored by joechrisellis). Repository: rG LLVM Github Monorepo

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-19 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis created this revision. joechrisellis added reviewers: c-rhodes, bsmith. Herald added subscribers: psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. joechrisellis requested review of this revision. Herald added a project: clang. Herald added a subscriber:

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-19 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/test/Sema/aarch64-fixed-vector-to-scalable-implicit-conversion.c:1-32 +// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve \ +// RUN: -msve-vector-bits=512 -Wconversion -fallow-half-arguments-and-returns

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-22 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis updated this revision to Diff 325461. joechrisellis marked an inline comment as done. joechrisellis added a comment. Address @c-rhodes's comment. - use `isVLSTBuiltinType` instead of `isSizelessBuiltinType`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D97053: [clang][SVE] Don't warn on vector to sizeless builtin implicit conversion

2021-02-22 Thread Joe Ellis via Phabricator via cfe-commits
joechrisellis added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:12055 + if (auto *SourceVT = dyn_cast(Source)) { +if (Target->isSizelessBuiltinType()) { + auto SourceVectorKind = SourceVT->getVectorKind(); c-rhodes wrote: > I suppose