[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-27 Thread Alexandros Lamprineas via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8689f5e6e773: [AArch64] Add support for the R architecture profile. (authored by labrinea). Changed prior to commit: https://reviews.llvm.org/D110065?vs=382584=382605#toc Repository: rG LLVM Github

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-27 Thread John Brawn via Phabricator via cfe-commits
john.brawn accepted this revision. john.brawn added a comment. LGTM. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110065/new/ https://reviews.llvm.org/D110065 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-27 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 382584. labrinea added a comment. Changed AppleA10 to HasV8_0aOps CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110065/new/ https://reviews.llvm.org/D110065 Files: clang/lib/Basic/Targets/AArch64.cpp clang/lib/Basic/Targets/AArch64.h

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-26 Thread John Brawn via Phabricator via cfe-commits
john.brawn added a comment. In D110065#3087330 , @labrinea wrote: > Added v8.1a_ops on AppleA10. However, the target parser lists it as v8.0a, > which seems odd. Out of the scope of this patch anyway. Looking at the definition of A10 in target parser

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-26 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 382294. labrinea added a comment. Added v8.1a_ops on AppleA10. However, the target parser lists it as v8.0a, which seems odd. Out of the scope of this patch anyway. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110065/new/

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-26 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 382288. labrinea marked an inline comment as done. labrinea added a comment. Added a comment explaining system register lookups by alternative name as suggested and rebased on top of https://reviews.llvm.org/D111551. @john.brawn you may want to re-review

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-25 Thread John Brawn via Phabricator via cfe-commits
john.brawn accepted this revision. john.brawn added a comment. This revision is now accepted and ready to land. I have one small comment, but otherwise LGTM. Comment at: llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp:1558 + + if (Reg && !isValidSysReg(Reg, Read,

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-16 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea marked an inline comment as done. labrinea added inline comments. Comment at: llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp:1548 + +static const AArch64SysReg::SysReg *lookupSysReg(unsigned Val, bool Read, +

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-16 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 380171. labrinea added a comment. Added an alternative name to indicate sytem register aliasing. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110065/new/ https://reviews.llvm.org/D110065 Files: clang/lib/Basic/Targets/AArch64.cpp

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-12 Thread John Brawn via Phabricator via cfe-commits
john.brawn added inline comments. Comment at: llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp:1548 + +static const AArch64SysReg::SysReg *lookupSysReg(unsigned Val, bool Read, + const MCSubtargetInfo ) {

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-12 Thread John Brawn via Phabricator via cfe-commits
john.brawn added a comment. Looking at the behaviour of gcc it looks like there -march=armv8-r enables instructions that are present in 8-r but not 8-a, but doesn't disable any instructions. So e.g. it will accept the dcps3 instruction when compiling with -march=armv8-r whereas clang won't.

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-04 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 376942. labrinea edited the summary of this revision. labrinea added a comment. Change from last revision: The driver implicitly enables the 'A' profile features (as if -march=armv8-a was specified on the command line) when only the target triple is

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-01 Thread Tomas Matheson via Phabricator via cfe-commits
tmatheson added inline comments. Comment at: clang/lib/Basic/Targets/AArch64.h:62 std::string ABI; + StringRef getArchProfile() const; tmatheson wrote: > The equivalent in the ARM backend is named `getCPUProfile` That's arguably a worse name though.

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-10-01 Thread Tomas Matheson via Phabricator via cfe-commits
tmatheson added inline comments. Comment at: clang/lib/Basic/Targets/AArch64.h:62 std::string ABI; + StringRef getArchProfile() const; The equivalent in the ARM backend is named `getCPUProfile` CHANGES SINCE LAST ACTION

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-09-30 Thread Nick Desaulniers via Phabricator via cfe-commits
nickdesaulniers added a comment. In D110065#3033050 , @labrinea wrote: > That said my current approach will be breaking the current tools behavior: > when the user only specifies the triple and not -march then they will be > targeting the intersection,

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-09-30 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea added subscribers: nickdesaulniers, t.p.northover, srhines. labrinea added a comment. I wanted to clarify the chosen strategy as the desciption was perhaps not very informative. The are some instructions and system registers that are present in v8-a but not in v8-r, and so I am

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-09-23 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea updated this revision to Diff 374572. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110065/new/ https://reviews.llvm.org/D110065 Files: clang/lib/Basic/Targets/AArch64.cpp clang/lib/Basic/Targets/AArch64.h clang/test/Driver/aarch64-cpus.c

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-09-23 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp:3299 static void setRequiredFeatureString(FeatureBitset FBS, std::string ) { if (FBS[AArch64::HasV8_1aOps]) Str += "ARMv8.1a"; As features can now depend

[PATCH] D110065: [AArch64] Add support for the 'R' architecture profile.

2021-09-20 Thread Alexandros Lamprineas via Phabricator via cfe-commits
labrinea created this revision. labrinea added reviewers: ostannard, miyuki, cfe-commits, llvm-commits. Herald added subscribers: hiraditya, kristof.beyls. labrinea requested review of this revision. Herald added projects: clang, LLVM. The patch introduces subtarget features to predicate certain