[PATCH] D142065: [SVE] Fix incorrect lowering of predicate permute builtins.

2023-01-24 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/lib/Target/AArch64/SVEInstrFormats.td:6361 + def : SVE_2_Op_Pat(NAME # _S)>; + def : SVE_2_Op_Pat(NAME # _D)>; } Out of interest, is there a good reason to handle the nxv16 pattern case differently in

[PATCH] D137239: [AArch64] Install arm_neon_sve_bridge.h

2022-11-03 Thread Peter Waller via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8cb9e3c3ce1e: [AArch64] Install arm_neon_sve_bridge.h (authored by peterwaller-arm). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137239/new/ https://revie

[PATCH] D137239: [AArch64] Install arm_neon_sve_bridge.h

2022-11-02 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm created this revision. peterwaller-arm added reviewers: MattDevereau, benmxwl-arm, c-rhodes. Herald added subscribers: ctetreau, kristof.beyls, tschuett. Herald added a project: All. peterwaller-arm requested review of this revision. Herald added a project: clang. Herald added a sub

[PATCH] D131573: [clang][AArch64][SVE] Change SVE_VECTOR_OPERATORS macro for VLA vectors

2022-08-10 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added inline comments. This revision is now accepted and ready to land. Comment at: clang/lib/Basic/Targets/AArch64.cpp:493 + // C/C++ operators work on both VLS and VLA SVE types + if (FPU & SveMode) +Builder.defineMa

[PATCH] D131573: [clang][AArch64][SVE] Change SVE_VECTOR_OPERATORS macro for VLA vectors

2022-08-10 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm requested changes to this revision. peterwaller-arm added inline comments. This revision now requires changes to proceed. Comment at: clang/lib/Basic/Targets/AArch64.cpp:493 + // C/C++ operators work on both VLS and VLA SVE types + if (FPU & SveMode) +Builde

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-07 Thread Peter Waller 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 rG2db2a4e11240: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209 (authored by peterwaller-arm). Repository: rG LLVM Github Monorepo CH

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 442264. peterwaller-arm added a comment. s/p0-p4/p0-p3/, thanks for the keen eye, rsandifo-arm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D129135/new/ https://reviews.llvm.org/D129135 Files: clang

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 442253. peterwaller-arm marked an inline comment as done. peterwaller-arm edited the summary of this revision. peterwaller-arm added a comment. - Update commit message: "This affects" -> "The fix affects" Repository: rG LLVM Github Monorepo CHANGE

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm marked an inline comment as done. peterwaller-arm added inline comments. Comment at: clang/docs/ReleaseNotes.rst:503 +- Targeting AArch64, LLVM now only preserves the z8-z23 registers across + a call if the registers z0-z7 are used to pass data into or out of a +

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 442251. peterwaller-arm added a comment. - Cite D127209 in the release note per tschuett comment. - Be more specific about p0-p4, remove 'by analogy', per rsandifo-arm comment. - Clarify 9th argument or greater, per

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. In D129135#3629860 , @peterwaller-arm wrote: > but I can't identify a specific worse issue at present. Thinking a little harder, one breaking case is where a callee-compiled-with-wrong-logic looks at its signature, conc

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. In D129135#3629833 , @DavidSpickett wrote: > From reading the release note my understanding is that before this fix the > caller of a function would store `z0-z7` in situations where it did not need > to. I believe you

[PATCH] D129135: [doc][ReleaseNotes] Document AArch64 SVE ABI fix from D127209

2022-07-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm created this revision. peterwaller-arm added reviewers: rsandifo-arm, kristof.beyls. Herald added subscribers: ctetreau, tschuett. Herald added a project: All. peterwaller-arm requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits.

[PATCH] D124860: [clang][AArch64][SVE] Implicit conversions for vector-scalar operations

2022-05-12 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/lib/Sema/SemaExpr.cpp:10586 + (!LHSBuiltinTy && !LHSBuiltinTy->isVLSTBuiltinType() && + !LHSType->isRealType())) { +Diag(Loc, diag::err_typecheck_vector_not_convertable_non_scalar) `!Ptr && [

[PATCH] D124836: [AArch64] Add support for -fzero-call-used-regs

2022-05-11 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/test/CodeGen/AArch64/zero-call-used-regs.ll:259-262 +; SVE-NEXT:pfalse p0.b +; SVE-NEXT:pfalse p1.b +; SVE-NEXT:pfalse p2.b +; SVE-NEXT:pfalse p3.b nickdesaulniers wrote: > N00b question abou

[PATCH] D124860: [clang][AArch64][SVE] Implicit conversions for vector-scalar operations

2022-05-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Looking pretty good. A couple of test cases to consider: #include #include svint8_t svi8(svint8_t a) { return a + 256; } int8x16_t nei8(int8x16_t a) { return a + 256; } svint8_t svi8_128(svint8_t a) { return a + 12

[PATCH] D124836: [AArch64] Add support for -fzero-call-used-regs

2022-05-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/test/CodeGen/AArch64/zero-call-used-regs.ll:233 + +attributes #0 = { mustprogress nofree norecurse nosync nounwind readnone willreturn uwtable "frame-pointer"="non-leaf" "min-legal-vector-width"="0" "no-trapping-math"="tru

[PATCH] D124998: [AArch64][SVE] Add aarch64_sve_pcs attribute to Clang

2022-05-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/include/clang-c/Index.h:3448 + CXCallingConv_AArch64SVEPcs= 17, + CXCallingConv_SwiftAsync = 18, peterwaller-arm wrote: > It shouldn't matter in principle (... "but in practice" ...) we should > probab

[PATCH] D124998: [AArch64][SVE] Add aarch64_sve_pcs attribute to Clang

2022-05-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added a comment. This revision is now accepted and ready to land. Looks good to me with minor nits. Comment at: clang/include/clang-c/Index.h:3448 + CXCallingConv_AArch64SVEPcs= 17, + CXCallingConv_SwiftAsync = 18, ---

[PATCH] D124836: [AArch64] Add support for -fzero-call-used-regs

2022-05-04 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:752 +#undef CASE + } +} void wrote: > kristof.beyls wrote: > > Just a drive-by comment: I'm wondering if SVE registers should also be > > listed here? > I'm not

[PATCH] D124091: [clang][AArch64][SVE] Implement conditional operator for SVE vectors

2022-04-26 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/lib/Sema/SemaExprCXX.cpp:6266 +LHS = ImpCastExprToType(LHS.get(), ResultType, CK_VectorSplat); +RHS = ImpCastExprToType(RHS.get(), ResultType, CK_VectorSplat); + } I get an assert with the followin

[PATCH] D122404: [clang][AArc64][SVE] Add support for comparison operators on SVE types

2022-03-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added a comment. This revision is now accepted and ready to land. LGTM, looks like the formatter might have hit some lines you didn't intend to change -- if it's not too invasive perhaps worth a seperate NFC patch to format the file? ===

[PATCH] D121792: [AArch64][SVE] InstCombine llvm.aarch64.sve.sel to select

2022-03-17 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. In D121792#3388585 , @dmgreen wrote: > Why do we have llvm.aarch64.sve.sel if we are always going to replace it with > a select? Why not remove llvm.aarch64.sve.sel entirely? I'm not the key decisionmaker here, but hopef

[PATCH] D121119: [clang][SVE] Add support for bitwise operators on SVE types

2022-03-16 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added a comment. This revision is now accepted and ready to land. LGTM, modulo that the require lines look like they need fixing. Comment at: clang/test/CodeGen/aarch64-sve-vector-bitwise-ops.c:7 + +// AND + --

[PATCH] D121119: [clang][SVE] Add support for bitwise operators on SVE types

2022-03-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Looking reasonable to me, one comment. Comment at: clang/lib/Sema/SemaExpr.cpp:10404 + SourceLocation Loc, + bool IsArithmetic) { QualType LHSType = LHS.get()

[PATCH] D119926: [Clang][AArch64] Enable _Float16 _Complex type

2022-02-23 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/test/CodeGen/aarch64-complex-half-math.c:3 +// RUN: %clang_cc1 %s -emit-llvm -triple aarch64-unknown-unknown -o - | FileCheck %s --check-prefix=AARCH64 +// REQUIRES: aarch64-registered-target + aaron.ballm

[PATCH] D119926: [Clang][AArch64] Enable _Float16 _Complex type

2022-02-16 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added a comment. This revision is now accepted and ready to land. LGTM. Comment at: clang/test/CodeGen/aarch64-complex-half-math.c:5 + // AARCH64-LABEL: @add_float_rr( + // AARCH64: fadd reassoc nnan ninf nsz arcp afn ha

[PATCH] D119926: [Clang][AArch64] Enable _Float16 _Complex type

2022-02-16 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Some comments. Comment at: clang/include/clang/AST/ASTContext.h:1117 CanQualType BFloat16Ty; - CanQualType Float16Ty; // C11 extension ISO/IEC TS 18661-3 + CanQualType Float16Ty, Float16ComplexTy; // C11 extension ISO/IEC TS 18661-3 CanQ

[PATCH] D114713: [AArch64][SVE][NEON] Add NEON-SVE-Bridge intrinsics

2021-12-08 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added a comment. This revision is now accepted and ready to land. LGTM once D115259 has landed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D114713/new/ htt

[PATCH] D114713: [AArch64][SVE][NEON] Add NEON-SVE-Bridge intrinsics

2021-12-01 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge_cg.def:37 +SVEMAP2(svdup_neonq_f64, 3), +SVEMAP2(svdup_neonq_bf16, 1), +#endif The second argument is a 'flags' field and these values don't look right. Ref

[PATCH] D114713: [AArch64][SVE][NEON] Add NEON-SVE-Bridge intrinsics

2021-11-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge.def:2 +#ifdef GET_SVE_BUILTINS +BUILTIN(__builtin_sve_svget_neonq_s8, "q4iq16bq4i", "n") +BUILTIN(__builtin_sve_svget_neonq_s16, "q4iq16bq4i", "n") Looks lik

[PATCH] D114713: [AArch64][SVE][NEON] Add NEON-SVE-Bridge intrinsics

2021-11-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c:8 + +#define SVE_ACLE_FUNC(A1,A2,A3,A4) A1##A2##A3##A4 + Do you also want to test the overloaded forms here via SVE_OVERLOAD

[PATCH] D113489: [AArch64][SVE] Instcombine SVE LD1/ST1 to stock LLVM IR

2021-11-15 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. My current thinking is that the route forward is to update the tests without update test checks, which affects only the st1{b,h,w} files, and possibly to remove the false header implying these files were autogenerated. Repository: rG LLVM Github Monorepo CHA

[PATCH] D113489: [AArch64][SVE] Instcombine SVE LD1/ST1 to stock LLVM IR

2021-11-15 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. It looks like some auto-generation lines were added in 91eda9c30f33da6ec6da70b59a5f5da6c6397039 , but the tests using CHECK-DAG were not actually auto-generated. It seems we could either clean

[PATCH] D113489: [AArch64][SVE] Instcombine SVE LD1/ST1 to stock LLVM IR

2021-11-15 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1w.c:235 +// CHECK-NEXT:ret void +// void test_svst1w_scatter_u64base_index_u64(svbool_t pg, svuint64_t bases, int64_t index, svuint64_t data) Unfortunat

[PATCH] D113776: [Clang][SVE] Properly enable/disable dependant SVE target features based upon +(no)sve.* options

2021-11-15 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/unittests/Support/TargetParserTest.cpp:908 + AArch64::AEK_I8MM | AArch64::AEK_SVE | + AArch64::AEK_SVE2 | AArch64::AEK_SVE2BITPERM | AArch

[PATCH] D111790: [AArch64][Driver][SVE] Allow -msve-vector-bits=+ syntax to mean no maximum vscale

2021-10-21 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. (Accept, but please run clang format) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111790/new/ https://reviews.llvm.org/D111790 ___ cfe-commits mailing list cfe-commits@

[PATCH] D102623: [CodeGen][AArch64][SVE] Canonicalize intrinsic rdffr{ => _z}

2021-05-20 Thread Peter Waller 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 rG2d574a110440: [CodeGen][AArch64][SVE] Canonicalize intrinsic rdffr{ => _z} (authored by peterwaller-arm). Repository: rG LLVM Github Monorepo CHA

[PATCH] D102623: [CodeGen][AArch64][SVE] Canonicalize intrinsic rdffr{ => _z}

2021-05-19 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 346423. peterwaller-arm added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. - Move test per review comment. - Update ACLE test. - Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://r

[PATCH] D98030: [IR] Add vscale_range IR function attribute

2021-03-08 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/lib/IR/Attributes.cpp:570 +Result += utostr(MinValue); +Result += ','; +Result += utostr(MaxValue); Nit: The only other precedent I can see for this is `allocsize`. Grepping the code I found thi

[PATCH] D95435: [clang][aarch64][WOA64][docs] Release note for longjmp crash with /guard:cf

2021-02-08 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm abandoned this revision. peterwaller-arm added a comment. Release note upstream on release/12.x branch in rGbc2dad1671598a87423c61c355d03db49ce76907 . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D95435: [clang][aarch64][WOA64][docs] Release note for longjmp crash with /guard:cf

2021-01-26 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm created this revision. peterwaller-arm added a reviewer: richard.townsend.arm. Herald added subscribers: danielkiss, kristof.beyls. peterwaller-arm requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Add a release note workaroun

[PATCH] D92751: [clang][aarch64] Precondition isHomogeneousAggregate on isCXX14Aggregate

2021-01-11 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm accepted this revision. peterwaller-arm added inline comments. Comment at: llvm/test/CodeGen/AArch64/arm64-windows-calls.ll:117 + ret %struct.Pod %x1 +; CHECK: ldp d0, d1, [x0] +} rnk wrote: > peterwaller-arm wrote: > > rnk wrote: > > > Please us

[PATCH] D92751: [clang][aarch64] Precondition isHomogeneousAggregate on isCXX14Aggregate

2021-01-07 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Suggesting a few small tweaks. Otherwise LGTM when @rnk is happy. Comment at: clang/test/CodeGenCXX/homogeneous-aggregates.cpp:129 +struct Empty {}; +// A class with a base is returned using the sret calling convetion by MSVC. +struct HasEmptyBa

[PATCH] D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize

2021-01-06 Thread Peter Waller 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 rGdfd3384feeca: [InstCombine] Update valueCoversEntireFragment to use TypeSize (authored by fpetrogalli, committed by peterwaller-arm). Repository:

[PATCH] D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize

2021-01-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm marked an inline comment as done. peterwaller-arm added inline comments. Comment at: llvm/test/Transforms/InstCombine/debuginfo-scalable-typesize.ll:13 + +; ERR-NOT: TypeSize is not scalable + peterwaller-arm wrote: > sdesmalen wrote: > > After yo

[PATCH] D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize

2021-01-05 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 314629. peterwaller-arm added a comment. Update for review comment. - Generalize WARN-NOT to disallow any warnings, not just those with specific text. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D9180

[PATCH] D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize

2021-01-04 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: llvm/test/Transforms/InstCombine/debuginfo-scalable-typesize.ll:13 + +; ERR-NOT: TypeSize is not scalable + sdesmalen wrote: > After your changes, what line causes this warning to be emitted? Does this > test al

[PATCH] D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize

2020-12-14 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 311614. peterwaller-arm retitled this revision from "[SVE] Change getTypeAllocationSizeInBits to return TypeSize" to "[InstCombine] Update valueCoversEntireFragment to use TypeSize". peterwaller-arm edited the summary of this revision. peterwaller-arm

[PATCH] D91806: [SVE] Change getTypeAllocationSizeInBits to return TypeSize

2020-12-14 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 311612. peterwaller-arm added a comment. I've taken over the differential. Simplify things a bit more, remove an untested remnant created from before the patch split. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://review

[PATCH] D92487: [AArch64][Driver][SVE] Push missing SVE feature error from driver to frontend

2020-12-10 Thread Peter Waller 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 rG2315e9874c92: [AArch64][Driver][SVE] Push missing SVE feature error from driver to frontend (authored by peterwaller-arm). Herald added a subscriber:

[PATCH] D92487: [AArch64][Driver][SVE] Push missing SVE feature error from driver to frontend

2020-12-08 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 310215. peterwaller-arm added a comment. Update patch for clang-format Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92487/new/ https://reviews.llvm.org/D92487 Files: clang/include/clang/Basic/Diagno

[PATCH] D92487: [AArch64][Driver][SVE] Push missing SVE feature error from driver to frontend

2020-12-02 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 308989. peterwaller-arm added a comment. Tweak message to address review comment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92487/new/ https://reviews.llvm.org/D92487 Files: clang/include/clang/B

[PATCH] D92487: [AArch64][Driver][SVE] Push missing SVE feature error from driver to frontend

2020-12-02 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm created this revision. Herald added subscribers: cfe-commits, psnobl, kristof.beyls, tschuett. Herald added a reviewer: efriedma. Herald added a project: clang. peterwaller-arm requested review of this revision. ... and give more guidance to users. If specifying -msve-vector-bits

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

2020-11-16 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/lib/Sema/SemaCast.cpp: if (srcIsVector || destIsVector) { +// We can bitcast between SVE VLATs and VLSTs, and vice-versa. +if (Self.isValidSveBitcast(SrcType, DestType)) { It's good to avoid

[PATCH] D90956: [clang][SVE] Additional macros implied by `-msve-vector-bits=`.

2020-11-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Suggestion: Where referencing sections you could include the title "3.7.3.3. Behavior specific to SVE vectors" instead of "3.7.3.3" for example. I think this makes it easier to spot misreferences and gives future souls a better chance to understand the context w

[PATCH] D90956: [clang][SVE] Additional macros implied by `-msve-vector-bits=`.

2020-11-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/test/CodeGen/aarch64-sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS-expected-error-on-address.c:6 + +// Examples taken from section 3.7.3.3 of the SVE ACLE (Version +// 00bet6) that can be found at Reposit

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

2020-11-09 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. fixed_float64_t appears in the commit message but also is unused. 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; +

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. @thakis: I've marked the test unsupported in c75cd3c7f0f . Hopefully that makes your builder happy! I'll figure out what is going on and fix it. CHANGES SINCE LAST ACTION https://reviews.ll

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. I've thought about it for a moment and I'm currently at a loss to quickly explain why this would only fail on darwin. In my patch, the change to LookupTypeForExtension should prevent clang from reaching this state where it complains about a preprocessed input.

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. @thakis: I found the thread at https://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20120430/057199.html @thakis: I can't make quick sense of the failure from those logs alone. I would appreciate it very much to see the output of the `clang -###` run lines t

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Thanks for chiming in. > Sorry, I had missed the RfC, but it looks like there wasn't a lot of > discussion on it anyways. Apologies @thakis - did I jump the gun? And if so, what could I have done differently? > Adding fortran support to clang's driver has been

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. In D63607#1726895 , @teemperor wrote: > Could we have the `clang/test/Driver/flang/flang.F90` and > `clang/test/Driver/flang/flang.f90` files in different directories please? As > macOS's FS is case-insensitive, those two

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm closed this revision. peterwaller-arm added a comment. Submitted in 6bf55804924d5a1d902925ad080b1a2b57c5c75c . CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-30 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Revoking my previous request: I now have commit access and I intend to submit this shortly. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607 ___ cfe-commits mailing l

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-29 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm marked an inline comment as done. peterwaller-arm added a comment. I'm still awaiting commit access, please can someone submit this on my behalf? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607 _

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-24 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm marked 2 inline comments as done. peterwaller-arm added inline comments. Comment at: clang/test/Driver/flang/flang-not-installed.f90:11 +! shell syntax. +! UNSUPPORTED: windows + hfinkel wrote: > I believe that you can write: > > REQUIRES: shel

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-24 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 226270. peterwaller-arm added a comment. I have rebased the patch for conflicts to master and all the tests are passing. While doing so, I discovered that the test for flang-not-installed was not fit for purpose, because clang actually doesn't first

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-10-15 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Friendly ping to everybody watching. I'd like to get this in soon if possible. Hal - do you think this is close to being accepted? Note that I consider this "the beginning" rather than "the end", since there will be more functionality to add piecewise before thi

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-25 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Hi All, I'm going on leave for two weeks, returning October 14th. I can plausibly respond to comments until 14:00 UTC tomorrow (Thu 25th Sept). As a quick note, another piece of the puzzle has been submitted for review at https://github.com/flang-compiler/f18/pu

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-19 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/include/clang/Driver/Driver.h:69 +CLMode, +FlangMode, } Mode; kiranchandramohan wrote: > Is the comma by choice? It was not. Fixed. Comment at: clang/lib/Driver/ToolChains/Flan

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-19 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 220856. peterwaller-arm marked 14 inline comments as done. peterwaller-arm edited the summary of this revision. peterwaller-arm added a comment. Thanks everyone for your comments. Changes since last patch: - Reintroduce handling of (no phase arg spec

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-18 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 220681. peterwaller-arm marked 6 inline comments as done. peterwaller-arm added a comment. - Fixed spurious comma - Fixed incorrect comment and changed comment wrapping. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://review

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-18 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 220646. peterwaller-arm added a comment. Updated comment for IsFlangMode. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607 Files: clang/include/clang/Driver/Driver.h clang/include/clang/Driver/Too

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-18 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added inline comments. Comment at: clang/lib/Driver/Driver.cpp:4788 +bool Driver::ShouldUseFlangCompiler(const JobAction &JA) const { + // Say "no" if there is not exactly one input of a type flang understands. + if (JA.size() != 1 || richard.ba

[PATCH] D63607: [clang][driver] Add basic --driver-mode=flang support for fortran

2019-09-18 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 220645. peterwaller-arm marked 6 inline comments as done. peterwaller-arm retitled this revision from "[clang][driver] Add basic --driver-mode=fortran support for flang" to "[clang][driver] Add basic --driver-mode=flang support for fortran". peterwall

[PATCH] D63607: [clang][driver] Add basic --driver-mode=fortran support for flang

2019-09-11 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 219666. peterwaller-arm added a comment. Fixed assertion message "Input output." => "Invalid output". The erroneous text came was copied from: https://github.com/llvm/llvm-project/blob/6b9df910d04fae62dacc22c1c84f66c0f126cde0/clang/lib/Driver/ToolCha

[PATCH] D63607: [clang][driver] Add basic --driver-mode=fortran support for flang

2019-09-10 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 219538. peterwaller-arm retitled this revision from "[clang][driver] Prototype --driver-mode=fortran support for new flang" to "[clang][driver] Add basic --driver-mode=fortran support for flang". peterwaller-arm added a comment. I updated this "prot

[PATCH] D63607: [DO NOT SUBMIT] [clang][driver] Prototype --driver-mode=fortran support for new flang

2019-06-24 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm updated this revision to Diff 206172. peterwaller-arm added a comment. Include full context. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607 Files: clang/include/clang/Driver/Driver.h clang/include/clang/Driver/ToolChain.h

[PATCH] D63607: [DO NOT SUBMIT] [clang][driver] Prototype --driver-mode=fortran support for new flang

2019-06-20 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm added a comment. Note: In case you see this early, the email isn't yet sent to the list. I'll link it here when it is, likely tomorrow. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63607/new/ https://reviews.llvm.org/D63607 __

[PATCH] D63607: [DO NOT SUBMIT] [clang][driver] Prototype --driver-mode=fortran support for new flang

2019-06-20 Thread Peter Waller via Phabricator via cfe-commits
peterwaller-arm created this revision. Herald added subscribers: cfe-commits, kadircet, ilya-biryukov, mgorny. Herald added a project: clang. This is an early prototype, not intended for full review until after the general approach is agreed. The purpose is to stimulate discussion on the overall a