[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-23 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 439356. pratlucas added a comment. Fixing use-after-poison issue detected by ASAN buildbot. When popping LR on thumb it's value is popped into PC and used as a return. The original return instruction gets erased, invalidating the MachineInstr iterator. This

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-27 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 440189. pratlucas added a comment. Updating method to use `MAchineBasickBlock::iterator&`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125094/new/ https://reviews.llvm.org/D125094 Files: clang/include/cl

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-27 Thread Lucas Prates 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 rG70a5c525349b: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records (authored by pratlucas). Repository: rG LLVM Github Monorep

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-07 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 434846. pratlucas marked 2 inline comments as done. pratlucas added a comment. Addressing comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125094/new/ https://reviews.llvm.org/D125094 Files: clang/i

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-07 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas marked 2 inline comments as done. pratlucas added inline comments. Comment at: llvm/lib/Target/ARM/ARMFrameLowering.cpp:732 + // AAPCS requires use of R11, and PACBTI gets in the way of regular pushes, + // so FP ends up on area two. if (HasFP) { e

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-08 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 435157. pratlucas added a comment. Avoid scavenging extra register when accessing const pool. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125094/new/ https://reviews.llvm.org/D125094 Files: clang/include

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-08 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas marked an inline comment as done. pratlucas added inline comments. Comment at: llvm/test/CodeGen/Thumb/frame-access.ll:335 +; CHECK-FP-AAPCS: mov r1, r11 +; CHECK-FP-AAPCS: ldr r0, [r0, r1] +; CHECK: bl i efriedma wrote: > This sequence requires, in gen

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-13 Thread Lucas Prates 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 rG6119053dab67: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records (authored by pratlucas). Repository: rG LLVM Github Monorep

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-13 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 436396. pratlucas added a comment. Fixing assertion failure caused by incorrect use of tSTRr. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125094/new/ https://reviews.llvm.org/D125094 Files: clang/include

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-14 Thread Lucas Prates 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 rG7625e01d6616: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records (authored by pratlucas). Repository: rG LLVM Github Monorep

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-14 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added a comment. The newly added `frame-chain.ll` test uncovered an issue with an invalid use of the tMOVr instruction, which is only available from V6 onwards. The failure was captured by a buildbot with expensive checks enabled. The issue is unrelated to the codegen changes from this

[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records

2022-06-14 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added a comment. @RKSimon I was writting my comment above just before I saw your message, lucky they went in in the correct order :) I'm tracking down the source of the invalid `tMOVr` and I'll raise a ticket with the details. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D135680: [clang][ARM] follow GCC behavior for defining __SOFTFP__

2022-10-18 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. Thanks! LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135680/new/ https://reviews.llvm.org/D135680

[PATCH] D138010: [AArch64][ARM] add Armv8.9-a/Armv9.4-a identifier support

2022-11-15 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: llvm/include/llvm/Support/AArch64TargetParser.def:70-76 +AARCH64_ARCH("armv8.9-a", ARMV8_9A, "8.9-A", "v8.9a", + ARMBuildAttrs::CPUArch::v8_A, FK_CRYPTO_NEON_FP_ARMV8, + (AArch64::AEK_CRC | AArch64::AEK_FP | +

[PATCH] D138010: [AArch64][ARM] add Armv8.9-a/Armv9.4-a identifier support

2022-11-15 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: llvm/include/llvm/Support/ARMTargetParser.def:127 + ARM::AEK_HWDIVTHUMB | ARM::AEK_DSP | ARM::AEK_CRC | ARM::AEK_RAS | + ARM::AEK_DOTPROD | ARM::AEK_BF16 | ARM::AEK_I8MM)) ARM_ARCH("armv9-a", ARMV9A, "9-A", "v9a", --

[PATCH] D138010: [AArch64][ARM] add Armv8.9-a/Armv9.4-a identifier support

2022-11-15 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: llvm/unittests/Support/TargetParserTest.cpp:532 + testARMArch("armv9.4-a", "generic", "v9.4a", + ARMBuildAttrs::CPUArch::v8_A)); EXPECT_TRUE( Should this be testing for `ARMBuildAttrs::

[PATCH] D135680: [clang][ARM] follow GCC behavior for defining __SOFTFP__

2022-10-13 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: clang/test/Preprocessor/init-arm.c:404 +// is specified +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -match-full-lines

[PATCH] D140999: [NFC][TargetParser] Deprecate llvm/Support/AArch64TargetParser.h

2023-01-05 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140999/new/ https://reviews.llvm.org/D140999

[PATCH] D141403: [AArch64] Add command line support for v9.4-A's Instrumentation Extension

2023-01-10 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added a subscriber: kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. This introduces command line support (`+ite`) for the v9.4-A

[PATCH] D141404: [AArch64][Clang] Adjust default features for v8.9-A/v9.4-A in clang driver

2023-01-10 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added a subscriber: kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added subscribers: cfe-commits, MaskRay. Herald added a project: clang. Update the clang driver to include the following features as default f

[PATCH] D139086: [AArch64] Implement __arm_rsr128/__arm_wsr128

2022-12-05 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D139086/new/ https://reviews.llvm.org/D139086 _

[PATCH] D139443: [AArch64] Support SLC in ACLE prefetch intrinsics

2022-12-16 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D139443/new/ https://reviews.llvm.org/D139443

[PATCH] D138753: [AArch64TargetParser] getArchFeatures -> getArchFeature

2022-11-28 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas added inline comments. Comment at: llvm/unittests/Support/TargetParserTest.cpp:1686 -TEST(TargetParserTest, AArch64ArchFeatures) { - std::vector Features; Can you keep a unit test covering the new version of the function? Repository: rG LLVM Gith

[PATCH] D138753: [AArch64TargetParser] getArchFeatures -> getArchFeature

2022-11-30 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138753/new/ https://reviews.llvm.org/D138753 _

[PATCH] D152932: [ARM] Adding precommit tests for D146242

2023-07-26 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D152932/new/ https://reviews.llvm.org/D152932

[PATCH] D153128: [AArch64][RCPC3] Add Neon intrinsics for LDAP1 and STL2

2023-06-16 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. pratlucas added reviewers: tmatheson, vhscampos, dmgreen. Herald added a subscriber: kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This adds new intris

[PATCH] D153130: [Clang][AArch64] Implement ACLE feature macro for FEAT_LRCPC3

2023-06-16 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. pratlucas added reviewers: tmatheson, vhscampos. Herald added a subscriber: kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This implements the new value

[PATCH] D153128: [AArch64][RCPC3] Add Neon intrinsics for LDAP1 and STL1

2023-07-07 Thread Lucas Prates 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 rG2b7ac6260627: [AArch64][RCPC3] Add Neon intrinsics for LDAP1 and STL1 (authored by pratlucas). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D153130: [Clang][AArch64] Implement ACLE feature macro for FEAT_LRCPC3

2023-07-07 Thread Lucas Prates 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 rGf1d7a55a4e06: [Clang][AArch64] Implement ACLE feature macro for FEAT_LRCPC3 (authored by pratlucas). Repository: rG LLVM Github Monorepo CHANGES

[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 &Str) { if (FBS[AArch64::HasV8_1aOps]) Str += "ARMv8.1a"; As features can now dep

[PATCH] D115694: [ARM] Introduce an empty "armv8.8-a" architecture.

2021-12-31 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115694/new/ https://reviews.llvm.org/D115694 ___ cfe-commits mailing list cfe-commits@lists

[PATCH] D110241: [docs] List support for Armv9-A, Armv9.1-A and Armv9.2-A in LLVM and Clang

2021-09-22 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110241/new/ https://reviews.llvm.org/D110241

[PATCH] D142539: [NFC][AArch64] Use optional returns in target parser instead of 'invalid' objects

2023-01-26 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas marked an inline comment as done. pratlucas added inline comments. Comment at: llvm/unittests/TargetParser/TargetParserTest.cpp:1456 + std::optional Extension = + AArch64::parseArchExtension(ArchExt); + if (!Extension) tmatheson wrote: > I think

[PATCH] D142540: [NFC][AArch64] Get default features directly from ArchInfo and CpuInfo objects

2023-01-26 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 492491. pratlucas added a comment. Renaming `getDefaultExtensions()` to `getImpliedExtensions()`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142540/new/ https://reviews.llvm.org/D142540 Files: clang/lib

[PATCH] D142539: [NFC][AArch64] Use optional returns in target parser instead of 'invalid' objects

2023-01-27 Thread Lucas Prates via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. pratlucas marked an inline comment as done. Closed by commit rG9ea00fc74c3c: [NFC][AArch64] Use optional returns in target parser instead of 'invalid'… (authored by pra

[PATCH] D142540: [NFC][AArch64] Get default features directly from ArchInfo and CpuInfo objects

2023-01-27 Thread Lucas Prates 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 rG0753cf2caca7: [NFC][AArch64] Get default features directly from ArchInfo and CpuInfo objects (authored by pratlucas). Repository: rG LLVM Github M

[PATCH] D142541: [NFC][AArch64] Get extension strings directly from ArchInfo in target parser

2023-01-27 Thread Lucas Prates 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 rG852bb68ddb2b: [NFC][AArch64] Get extension strings directly from ArchInfo in target parser (authored by pratlucas). Repository: rG LLVM Github Mon

[PATCH] D138792: [AArch64] Improve TargetParser API

2023-01-13 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas accepted this revision. pratlucas added a comment. LGTM with a tiny nit. Feel free to fix it when landing the changes. Comment at: llvm/include/llvm/TargetParser/AArch64TargetParser.h:164-166 + CPUFeatures CPUFeature; // ? + StringRef DependentFeatures; //

[PATCH] D141403: [AArch64] Add command line support for v9.4-A's Instrumentation Extension

2023-01-23 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 491384. pratlucas added a comment. Rebasing, including minor changes due to recent target parser refactoring. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141403/new/ https://reviews.llvm.org/D141403 Files:

[PATCH] D141404: [AArch64][Clang] Adjust default features for v8.9-A/v9.4-A in clang driver

2023-01-23 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas updated this revision to Diff 491385. pratlucas added a comment. Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Updated to use the same approach as D141518 . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION htt

[PATCH] D141404: [AArch64][Clang] Adjust default features for v8.9-A/v9.4-A in clang driver

2023-01-23 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas marked an inline comment as done. pratlucas added inline comments. Comment at: clang/test/Driver/aarch64-cssc.c:11 +// RUN: %clang -S -o - -emit-llvm -target aarch64-none-none-eabi -march=armv9.4-a+cssc %s 2>&1 | FileCheck %s +// RUN: %clang -S -o - -emit-llvm -targe

[PATCH] D141403: [AArch64] Add command line support for v9.4-A's Instrumentation Extension

2023-01-23 Thread Lucas Prates 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 rG8246aceb90c2: [AArch64] Add command line support for v9.4-A's Instrumentation Extension (authored by pratlucas). Repository: rG LLVM Github Monore

[PATCH] D141404: [AArch64][Clang] Adjust default features for v8.9-A/v9.4-A in clang driver

2023-01-23 Thread Lucas Prates via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. pratlucas marked an inline comment as done. Closed by commit rG5f6813beed85: [AArch64][Clang] Adjust default features for v8.9-A/v9.4-A in clang driver (authored by pra

[PATCH] D142539: [NFC][AArch64] Use optional returns in target parser instead of 'invalid' objects

2023-01-25 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added subscribers: hiraditya, kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added subscribers: llvm-commits, cfe-commits, MaskRay. Herald added projects: clang, LLVM. This updates the parsing methods in AArch

[PATCH] D142540: [NFC][AArch64] Get default features directly from ArchInfo and CpuInfo objects

2023-01-25 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added subscribers: hiraditya, kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added subscribers: llvm-commits, cfe-commits, MaskRay. Herald added projects: clang, LLVM. This updates the AArch64's Target Parser

[PATCH] D142541: [NFC][AArch64] Get extension strings directly from ArchInfo in target parser

2023-01-25 Thread Lucas Prates via Phabricator via cfe-commits
pratlucas created this revision. Herald added subscribers: hiraditya, kristof.beyls. Herald added a project: All. pratlucas requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. Repository: rG LLVM Github Monorepo https://rev

<    1   2