@@ -18522,13 +18522,21 @@ GetTLSADDR(SelectionDAG &DAG, SDValue Chain,
GlobalAddressSDNode *GA,
MachineFrameInfo &MFI = DAG.getMachineFunction().getFrameInfo();
SDVTList NodeTys = DAG.getVTList(MVT::Other, MVT::Glue);
SDLoc dl(GA);
- SDValue TGA = DAG.getTargetGlobalAdd
https://github.com/ilovepi edited
https://github.com/llvm/llvm-project/pull/83136
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/82839
None
>From 25208080e025db4adaa906b1076aa983e805f55e Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Fri, 23 Feb 2024 22:56:41 +
Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=
=
https://github.com/ilovepi closed
https://github.com/llvm/llvm-project/pull/82839
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ilovepi wrote:
After discussing internally, this isn't required, so I'm abandoning this change.
https://github.com/llvm/llvm-project/pull/82839
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 4d280199a9eb027127bdc9c31a266fa3e2fa6cea Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH 1/2] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cma
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/83159
In addition to being rather hard to follow, there isn't a good reason
why FatLTO shouldn't just share the same code for setting module flags
for (Thin)LTO. This patch simplifies the logic and makes sure we use set
@@ -1036,7 +1041,8 @@ void EmitAssemblyHelper::RunOptimizationPipeline(
if (!actionRequiresCodeGen(Action) && CodeGenOpts.VerifyModule)
MPM.addPass(VerifierPass());
- if (Action == Backend_EmitBC || Action == Backend_EmitLL) {
+ if (Action == Backend_EmitBC || Action =
ilovepi wrote:
Hmm, not sure why this comes out differently on windows in the presubmit.
https://github.com/llvm/llvm-project/pull/83159
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/83159
>From 0a37b8e52fe5e17fff3f6e88bf25f1969bbe8bb4 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 27 Feb 2024 17:43:58 +
Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
ilovepi wrote:
Seems like "PIE Level" is different, Lets see if passing `-fPIE` will satisfy
the windows bot
https://github.com/llvm/llvm-project/pull/83159
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/83159
>From 0a37b8e52fe5e17fff3f6e88bf25f1969bbe8bb4 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 27 Feb 2024 17:43:58 +
Subject: [PATCH 1/3] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
https://github.com/ilovepi closed
https://github.com/llvm/llvm-project/pull/83159
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 0c010db4bdf8808d95895db1ba4112fcb04f2d8b Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH 1/2] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cma
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 0c010db4bdf8808d95895db1ba4112fcb04f2d8b Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH 1/2] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cma
@@ -1621,8 +1621,15 @@ function(add_unittest test_suite test_name)
# The runtime benefits of LTO don't outweight the compile time costs for
tests.
if(LLVM_ENABLE_LTO)
if((UNIX OR MINGW) AND LINKER_IS_LLD)
- set_property(TARGET ${test_name} APPEND_STRING PROPERTY
-
https://github.com/ilovepi edited
https://github.com/llvm/llvm-project/pull/83949
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi approved this pull request.
LGTM other than the nit.
https://github.com/llvm/llvm-project/pull/83949
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -300,10 +300,43 @@ if(FUCHSIA_SDK)
set(LLVM_RUNTIME_MULTILIB_hwasan+noexcept_TARGETS
"aarch64-unknown-fuchsia;riscv64-unknown-fuchsia" CACHE STRING "")
endif()
+foreach(target armv6m-unknown-eabi)
+ list(APPEND BUILTIN_TARGETS "${target}")
+ set(BUILTINS_${target}_CMAK
ilovepi wrote:
while its kind of nice to see the complete patch, it looks to me like each of
these changes is independent, and should be stacked rather than commited in
bulk. Many of us have had good experience with `spr`, so I'd suggest maybe
abandoning this PR and re-uploading a stack that c
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/80480
Since LLVM supports `-ffat-lto-objects` we should enable this as an option in
the LLVM build. FatLTO should improve the time it takes to build tests for LTO
enabled builds of the compiler by not linking w/ the b
ilovepi wrote:
I'm keeping this as a draft until I confirm the cmake config works as expected,
especially in 2 stage builds.
https://github.com/llvm/llvm-project/pull/80480
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 2793f30243a0b93d8a1f52343ab974bf9eef4e03 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cmake/c
https://github.com/ilovepi ready_for_review
https://github.com/llvm/llvm-project/pull/80480
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ilovepi wrote:
This speeds up a 2 stage build by about 3 minutes, tests time are still much
closer than expected. Locally I saw a bout a 5-8% speedup to build clang unit
tests, but maybe the unit tests are too small in the overall test regime to
make a difference.
I'll try to collect more per
@@ -1251,6 +1253,10 @@ elseif(LLVM_ENABLE_LTO)
endif()
endif()
+if(LLVM_ENABLE_FATLTO AND (FUCHSIA OR UNIX))
+append("-ffat-lto-objects" CMAKE_EXE_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS)
ilovepi wrote:
Dang, I thought I had done that. That's probably w
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 2793f30243a0b93d8a1f52343ab974bf9eef4e03 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH 1/2] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cma
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/80480
>From 2793f30243a0b93d8a1f52343ab974bf9eef4e03 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 22 Aug 2023 15:24:03 +
Subject: [PATCH 1/2] [CMAKE] Enable FatLTO as a build option for LLVM
---
clang/cma
https://github.com/ilovepi approved this pull request.
Thank you for this. I expect this to be a big help w/ the various target
features bugs we've seen in LTO builds.
I'm surprised only 1 test file needed the metadata updated as a result of this
change.
https://github.com/llvm/llvm-project/p
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/79061
>From 2e0cd6077a756fa28023d907045e6e53c50ec732 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Mon, 22 Jan 2024 21:48:16 +
Subject: [PATCH 1/3] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/79061
>From 2e0cd6077a756fa28023d907045e6e53c50ec732 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Mon, 22 Jan 2024 21:48:16 +
Subject: [PATCH 1/4] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
@@ -57,11 +57,16 @@ compiled application or the operating system. Integrating
the runtime into
the operating system should be preferred since otherwise all thread creation
and destruction would need to be intercepted by the application.
-The instrumentation makes use of the p
@@ -57,11 +57,16 @@ compiled application or the operating system. Integrating
the runtime into
the operating system should be preferred since otherwise all thread creation
and destruction would need to be intercepted by the application.
-The instrumentation makes use of the p
https://github.com/ilovepi closed
https://github.com/llvm/llvm-project/pull/79061
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ilovepi wrote:
Since this has passed Linux premerge checks and I think Windows CI is having
some issues I tested this locally on a Windows machine and its passing. I'm
going to go ahead and merge.
https://github.com/llvm/llvm-project/pull/79061
___
c
https://github.com/ilovepi approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/79241
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi approved this pull request.
LGTM on my end. Thanks for all the help on this.
https://github.com/llvm/llvm-project/pull/79239
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listi
@@ -513,29 +547,125 @@ void RISCV::relocate(uint8_t *loc, const Relocation
&rel, uint64_t val) const {
break;
case R_RISCV_RELAX:
-return; // Ignored (for now)
-
+return;
+ case R_RISCV_TLSDESC:
+// The addend is stored in the second word.
+if (config->
@@ -513,29 +547,125 @@ void RISCV::relocate(uint8_t *loc, const Relocation
&rel, uint64_t val) const {
break;
case R_RISCV_RELAX:
-return; // Ignored (for now)
-
+return;
+ case R_RISCV_TLSDESC:
+// The addend is stored in the second word.
+if (config->
https://github.com/ilovepi approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/79256
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi closed
https://github.com/llvm/llvm-project/pull/79031
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ilovepi wrote:
Abandoning in favor of https://github.com/llvm/llvm-project/pull/79256
https://github.com/llvm/llvm-project/pull/79031
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi edited
https://github.com/llvm/llvm-project/pull/68075
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ilovepi commented:
I think this is basically good IMO once we settle on the default values. You
should still get approval from one of the RISCV code owners before landing
though.
https://github.com/llvm/llvm-project/pull/68075
___
@@ -57,11 +57,16 @@ compiled application or the operating system. Integrating
the runtime into
the operating system should be preferred since otherwise all thread creation
and destruction would need to be intercepted by the application.
-The instrumentation makes use of the p
@@ -1044,3 +1044,8 @@ def FeatureTaggedGlobals :
SubtargetFeature<"tagged-globals",
"AllowTaggedGlobals",
"true", "Use an instruction sequence for taking the address of a global "
"that allows a memory tag in the upper address bits">;
+
+def FeatureForcedSWShadowSt
@@ -27,6 +27,11 @@
// DEFAULT-NOT: "-target-feature" "-save-restore"
// DEFAULT-NOT: "-target-feature" "+save-restore"
+// RUN: %clang --target=riscv32-unknown-elf -### %s -mforced-sw-shadow-stack
2>&1 | FileCheck %s -check-prefix=FORCE-SW-SCS
ilovepi wrote:
@@ -57,11 +57,16 @@ compiled application or the operating system. Integrating
the runtime into
the operating system should be preferred since otherwise all thread creation
and destruction would need to be intercepted by the application.
-The instrumentation makes use of the p
@@ -151,9 +157,12 @@ Usage
To enable ShadowCallStack, just pass the ``-fsanitize=shadow-call-stack`` flag
to both compile and link command lines. On aarch64, you also need to pass
-``-ffixed-x18`` unless your target already reserves ``x18``. On RISC-V, ``x3``
-(``gp``) is alwa
@@ -80,6 +80,11 @@ static cl::opt EnableRISCVDeadRegisterElimination(
" them with stores to x0"),
cl::init(true));
+// TODO: This should be controlled by -mtls-dialect=
+cl::opt EnableRISCVTLSDESC("riscv-enable-tlsdesc",
ilovepi wrote:
That's
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/79031
GCC an other ELF compilers support -mlts-dialect= options to control the
use of ELF TLS Descriptors as part of the TLS model. This patch only
adds support to the clang driver for the flag. Support for the
EnableTL
ilovepi wrote:
Note: codegen changes to support meaningful `-mtls-dialect` changes are
introduced in https://github.com/llvm/llvm-project/pull/66915.
https://github.com/llvm/llvm-project/pull/79031
___
cfe-commits mailing list
cfe-commits@lists.llvm.
@@ -401,6 +401,8 @@ static bool initTargetOptions(DiagnosticsEngine &Diags,
Options.UniqueBasicBlockSectionNames =
CodeGenOpts.UniqueBasicBlockSectionNames;
Options.TLSSize = CodeGenOpts.TLSSize;
+ // TODO: Add correct codegen options in LLVM
+ // Options.TLSDesc =
https://github.com/ilovepi approved this pull request.
Thanks for the patch. This is a great catch!
https://github.com/llvm/llvm-project/pull/79041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/
ilovepi wrote:
@topperc Is there anything else you think needs to be done for the code
generation?
https://github.com/llvm/llvm-project/pull/66915
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/79061
Currently, the UnifiedLTO pipeline seems to have trouble with several
LTO features, like SplitLTO units, which means we cannot use important
optimizations like Whole Program Devirtualization or security hardening
https://github.com/ilovepi edited
https://github.com/llvm/llvm-project/pull/79061
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ilovepi wrote:
Hi, is there a way to disable this check w/o disabling all `-Wconversion`
warnings? We'd like to disable this one on some third_party code(e.g. the
vulkansdk), but keep `-Wconversion` as a whole in place whenever we can.
Unfortunately, `-Wno-bitfield-conversion` doesn't seem to
Author: Brett Wilson
Date: 2022-08-11T17:14:15Z
New Revision: 99baa10f8f01f5c054d259182b24ae04ae57101d
URL:
https://github.com/llvm/llvm-project/commit/99baa10f8f01f5c054d259182b24ae04ae57101d
DIFF:
https://github.com/llvm/llvm-project/commit/99baa10f8f01f5c054d259182b24ae04ae57101d.diff
LOG:
Author: Brett Wilson
Date: 2022-08-12T18:37:23Z
New Revision: 75c7e79464a3e77043571d187cd8019370326bcb
URL:
https://github.com/llvm/llvm-project/commit/75c7e79464a3e77043571d187cd8019370326bcb
DIFF:
https://github.com/llvm/llvm-project/commit/75c7e79464a3e77043571d187cd8019370326bcb.diff
LOG:
Author: Brett Wilson
Date: 2022-08-12T18:39:20Z
New Revision: 68266828b170d2f978d0bc2f508de2b3b9e41665
URL:
https://github.com/llvm/llvm-project/commit/68266828b170d2f978d0bc2f508de2b3b9e41665
DIFF:
https://github.com/llvm/llvm-project/commit/68266828b170d2f978d0bc2f508de2b3b9e41665.diff
LOG:
Author: Paul Kirth
Date: 2022-08-17T14:38:53Z
New Revision: 656c5d652ce10257e90c7693b34336b6ce0ecfa3
URL:
https://github.com/llvm/llvm-project/commit/656c5d652ce10257e90c7693b34336b6ce0ecfa3
DIFF:
https://github.com/llvm/llvm-project/commit/656c5d652ce10257e90c7693b34336b6ce0ecfa3.diff
LOG: [c
Author: Brett Wilson
Date: 2022-09-16T17:26:07Z
New Revision: e191086bfcb72a98a9e299fd30dd3f69c5de5b64
URL:
https://github.com/llvm/llvm-project/commit/e191086bfcb72a98a9e299fd30dd3f69c5de5b64
DIFF:
https://github.com/llvm/llvm-project/commit/e191086bfcb72a98a9e299fd30dd3f69c5de5b64.diff
LOG:
Author: Brett Wilson
Date: 2022-09-19T21:54:41Z
New Revision: eaa7b324d5a272dc640cfc4162b746ac5341ccbd
URL:
https://github.com/llvm/llvm-project/commit/eaa7b324d5a272dc640cfc4162b746ac5341ccbd
DIFF:
https://github.com/llvm/llvm-project/commit/eaa7b324d5a272dc640cfc4162b746ac5341ccbd.diff
LOG:
Author: Brett Wilson
Date: 2022-09-20T17:55:47Z
New Revision: 4df84ac377dfc88da0217dc8cbb9aa69be6cbe55
URL:
https://github.com/llvm/llvm-project/commit/4df84ac377dfc88da0217dc8cbb9aa69be6cbe55
DIFF:
https://github.com/llvm/llvm-project/commit/4df84ac377dfc88da0217dc8cbb9aa69be6cbe55.diff
LOG:
Author: Brett Wilson
Date: 2022-09-27T23:31:41Z
New Revision: 0afc60858e1183344e0786eaa3b123f9faed185e
URL:
https://github.com/llvm/llvm-project/commit/0afc60858e1183344e0786eaa3b123f9faed185e
DIFF:
https://github.com/llvm/llvm-project/commit/0afc60858e1183344e0786eaa3b123f9faed185e.diff
LOG:
Author: Brett Wilson
Date: 2022-09-27T23:35:16Z
New Revision: eed22583fd78d4d657fb70b99e62fbdc1f83b8f9
URL:
https://github.com/llvm/llvm-project/commit/eed22583fd78d4d657fb70b99e62fbdc1f83b8f9
DIFF:
https://github.com/llvm/llvm-project/commit/eed22583fd78d4d657fb70b99e62fbdc1f83b8f9.diff
LOG:
Author: Paul Kirth
Date: 2023-01-25T23:55:59Z
New Revision: 881d151c527c0eaae89af5842f4167f7a2439a13
URL:
https://github.com/llvm/llvm-project/commit/881d151c527c0eaae89af5842f4167f7a2439a13
DIFF:
https://github.com/llvm/llvm-project/commit/881d151c527c0eaae89af5842f4167f7a2439a13.diff
LOG: [c
Author: Paul Kirth
Date: 2023-01-26T18:05:31Z
New Revision: 9470de65bb33a18842d64ab2ab777902613ee014
URL:
https://github.com/llvm/llvm-project/commit/9470de65bb33a18842d64ab2ab777902613ee014
DIFF:
https://github.com/llvm/llvm-project/commit/9470de65bb33a18842d64ab2ab777902613ee014.diff
LOG: [c
Author: Paul Kirth
Date: 2023-01-13T20:52:48Z
New Revision: 0a652c540556a118bbd9386ed3ab7fd9e60a9754
URL:
https://github.com/llvm/llvm-project/commit/0a652c540556a118bbd9386ed3ab7fd9e60a9754
DIFF:
https://github.com/llvm/llvm-project/commit/0a652c540556a118bbd9386ed3ab7fd9e60a9754.diff
LOG: [c
Author: Paul Kirth
Date: 2023-01-13T22:59:36Z
New Revision: fdc0bf6adceeb7f800ec152486f26a6bed8d2ccb
URL:
https://github.com/llvm/llvm-project/commit/fdc0bf6adceeb7f800ec152486f26a6bed8d2ccb
DIFF:
https://github.com/llvm/llvm-project/commit/fdc0bf6adceeb7f800ec152486f26a6bed8d2ccb.diff
LOG: Re
Author: Paul Kirth
Date: 2023-01-19T01:51:14Z
New Revision: 557a5bc336ffb9b03c53d4d13fd8f0bc9418ec96
URL:
https://github.com/llvm/llvm-project/commit/557a5bc336ffb9b03c53d4d13fd8f0bc9418ec96
DIFF:
https://github.com/llvm/llvm-project/commit/557a5bc336ffb9b03c53d4d13fd8f0bc9418ec96.diff
LOG: [c
@@ -106,9 +111,14 @@ static void emitSCSEpilogue(MachineFunction &MF,
MachineBasicBlock &MBB,
CSI, [&](CalleeSavedInfo &CSR) { return CSR.getReg() == RAReg; }))
return;
+ const RISCVInstrInfo *TII = STI.getInstrInfo();
+ if (STI.hasFeature(RISCV::FeatureStdExt
ilovepi wrote:
I think we may be seeing some issues with this patch, when building Fuchsia.
We're seeing the following error.
```
FAILED: host_x64/obj/sdk/lib/ld/test/ld-unittests.filter-view-tests.cc.o
../../prebuilt/third_party/clang/custom/bin/clang++ -MD -MF
host_x64/obj/sdk/lib/ld/test/ld
@@ -27,6 +27,11 @@
using namespace llvm;
+static cl::opt
ilovepi wrote:
is it possible to use something other than a `cl::opt`? I know we make heavy
use of them to control codegen options, but they tend to get dropped on the
floor easily if you have to fo
@@ -106,9 +111,14 @@ static void emitSCSEpilogue(MachineFunction &MF,
MachineBasicBlock &MBB,
CSI, [&](CalleeSavedInfo &CSR) { return CSR.getReg() == RAReg; }))
return;
+ const RISCVInstrInfo *TII = STI.getInstrInfo();
+ if (STI.hasFeature(RISCV::FeatureStdExt
@@ -106,9 +111,14 @@ static void emitSCSEpilogue(MachineFunction &MF,
MachineBasicBlock &MBB,
CSI, [&](CalleeSavedInfo &CSR) { return CSR.getReg() == RAReg; }))
return;
+ const RISCVInstrInfo *TII = STI.getInstrInfo();
+ if (STI.hasFeature(RISCV::FeatureStdExt
@@ -106,9 +111,14 @@ static void emitSCSEpilogue(MachineFunction &MF,
MachineBasicBlock &MBB,
CSI, [&](CalleeSavedInfo &CSR) { return CSR.getReg() == RAReg; }))
return;
+ const RISCVInstrInfo *TII = STI.getInstrInfo();
+ if (STI.hasFeature(RISCV::FeatureStdExt
ilovepi wrote:
I think your analysis and approach sounds correct, but probably worth checking
with someone a bit more familiar with all of the C++ nuance here.
https://github.com/llvm/llvm-project/pull/68379
___
cfe-commits mailing list
cfe-commits@li
Author: Paul Kirth
Date: 2023-07-17T16:26:21Z
New Revision: 610fc5cbcc8b68879c562f6458608afe2473ab7f
URL:
https://github.com/llvm/llvm-project/commit/610fc5cbcc8b68879c562f6458608afe2473ab7f
DIFF:
https://github.com/llvm/llvm-project/commit/610fc5cbcc8b68879c562f6458608afe2473ab7f.diff
LOG: [c
Author: Paul Kirth
Date: 2023-07-17T17:18:32Z
New Revision: 5784c47806cf276e8fcc1311201f437cb8169261
URL:
https://github.com/llvm/llvm-project/commit/5784c47806cf276e8fcc1311201f437cb8169261
DIFF:
https://github.com/llvm/llvm-project/commit/5784c47806cf276e8fcc1311201f437cb8169261.diff
LOG: [c
https://github.com/ilovepi submitted
https://github.com/llvm/llvm-project/pull/65185
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Paul Kirth
Date: 2022-11-22T19:14:54Z
New Revision: 48bb1471122d156bc0c4feaabc32de4487024ca5
URL:
https://github.com/llvm/llvm-project/commit/48bb1471122d156bc0c4feaabc32de4487024ca5
DIFF:
https://github.com/llvm/llvm-project/commit/48bb1471122d156bc0c4feaabc32de4487024ca5.diff
LOG: Re
Author: Paul Kirth
Date: 2023-04-10T17:43:49Z
New Revision: a78816a6b6debb548efbf1717aeeb490df42f401
URL:
https://github.com/llvm/llvm-project/commit/a78816a6b6debb548efbf1717aeeb490df42f401
DIFF:
https://github.com/llvm/llvm-project/commit/a78816a6b6debb548efbf1717aeeb490df42f401.diff
LOG: [c
Author: Paul Kirth
Date: 2023-04-12T18:01:47Z
New Revision: 723f7d3a0891d341b635f31086ae268aadd6d3d6
URL:
https://github.com/llvm/llvm-project/commit/723f7d3a0891d341b635f31086ae268aadd6d3d6
DIFF:
https://github.com/llvm/llvm-project/commit/723f7d3a0891d341b635f31086ae268aadd6d3d6.diff
LOG: [c
Author: Paul Kirth
Date: 2023-04-12T21:06:22Z
New Revision: aa1d2693c25622ea4a8ee2b622ba2a617e18ef88
URL:
https://github.com/llvm/llvm-project/commit/aa1d2693c25622ea4a8ee2b622ba2a617e18ef88
DIFF:
https://github.com/llvm/llvm-project/commit/aa1d2693c25622ea4a8ee2b622ba2a617e18ef88.diff
LOG: [C
Author: Paul Kirth
Date: 2023-04-27T21:19:46Z
New Revision: 61976af3ba9347935e9715067fcc0f5a568e6e7d
URL:
https://github.com/llvm/llvm-project/commit/61976af3ba9347935e9715067fcc0f5a568e6e7d
DIFF:
https://github.com/llvm/llvm-project/commit/61976af3ba9347935e9715067fcc0f5a568e6e7d.diff
LOG: [c
Author: Paul Kirth
Date: 2023-06-09T20:10:19Z
New Revision: b6a718016c0fd7a0d883214ba19d88b6f96e3ae1
URL:
https://github.com/llvm/llvm-project/commit/b6a718016c0fd7a0d883214ba19d88b6f96e3ae1
DIFF:
https://github.com/llvm/llvm-project/commit/b6a718016c0fd7a0d883214ba19d88b6f96e3ae1.diff
LOG: [c
Author: Paul Kirth
Date: 2023-06-09T23:41:32Z
New Revision: a28a46665529992cefb78049da79f2125f6b6c2d
URL:
https://github.com/llvm/llvm-project/commit/a28a46665529992cefb78049da79f2125f6b6c2d
DIFF:
https://github.com/llvm/llvm-project/commit/a28a46665529992cefb78049da79f2125f6b6c2d.diff
LOG: [c
https://github.com/ilovepi created
https://github.com/llvm/llvm-project/pull/82400
ARM's Clang and GCC embedded compilers default to allowing unaligned
access for ARMv7+. This patch changes the Clang driver default to match.
Users can opt out with `-mno-unaligned-access`.
Fixes #59560
>From 2
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/82400
>From 20634c2f54ae667ee8374d12e58e582aa6cdd051 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 20 Feb 2024 10:34:57 -0800
Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
ilovepi wrote:
> Hi - I like the change. We have this code in the downstream compiler, which
> also enables this for Armv6, but specifically disables it for v6m and
> v8m.baseline.
>
> ```
> if (VersionNum < 6 ||
> Triple.getSubArch() == llvm::Triple::SubArchType::ARMSubArch_v6
@@ -895,19 +895,17 @@ llvm::ARM::FPUKind arm::getARMTargetFeatures(const Driver
&D,
// defaults this bit to 0 and handles it as a system-wide (not
// per-process) setting. It is therefore safe to assume that ARMv7+
// Linux targets support unaligned accesses. The s
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/82400
>From 20634c2f54ae667ee8374d12e58e582aa6cdd051 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 20 Feb 2024 10:34:57 -0800
Subject: [PATCH 1/3] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/82400
>From 20634c2f54ae667ee8374d12e58e582aa6cdd051 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 20 Feb 2024 10:34:57 -0800
Subject: [PATCH 1/4] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
@@ -305,6 +305,16 @@ X86 Support
Arm and AArch64 Support
^^^
+- ARMv6+ targets now default to allowing unaligned access, except Armv6-M, and
+ Armv8-M without the Main Extension. Baremetal targets should check that the
+ new default will work with their s
@@ -886,28 +886,16 @@ llvm::ARM::FPUKind arm::getARMTargetFeatures(const Driver
&D,
} else {
// Assume pre-ARMv6 doesn't support unaligned accesses.
//
-// ARMv6 may or may not support unaligned accesses depending on the
-// SCTLR.U bit, which is architecture
@@ -886,28 +886,16 @@ llvm::ARM::FPUKind arm::getARMTargetFeatures(const Driver
&D,
} else {
// Assume pre-ARMv6 doesn't support unaligned accesses.
//
-// ARMv6 may or may not support unaligned accesses depending on the
-// SCTLR.U bit, which is architecture
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/82400
>From 20634c2f54ae667ee8374d12e58e582aa6cdd051 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 20 Feb 2024 10:34:57 -0800
Subject: [PATCH 1/5] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
https://github.com/ilovepi updated
https://github.com/llvm/llvm-project/pull/82400
>From 20634c2f54ae667ee8374d12e58e582aa6cdd051 Mon Sep 17 00:00:00 2001
From: Paul Kirth
Date: Tue, 20 Feb 2024 10:34:57 -0800
Subject: [PATCH 1/6] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
=?UTF-8
101 - 200 of 1144 matches
Mail list logo