https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/129142
>From ac5609c09e6423ab30b77cc9a18d24a33ba16048 Mon Sep 17 00:00:00 2001
From: Daniel Paoliello
Date: Thu, 27 Feb 2025 15:08:36 -0800
Subject: [PATCH] [win][x64] Unwind v2 3/n: Add support for emitting unwind
@@ -500,7 +500,8 @@ MCSymbol *MCStreamer::emitLineTableLabel() {
MCSymbol *MCStreamer::emitCFILabel() {
// Return a dummy non-null value so that label fields appear filled in when
// generating textual assembly.
- return (MCSymbol *)1;
+ static size_t DummyLabelValue = 0;
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/129142
>From 151e8f8e3204a0a7ef6c43ce99a7a60774cb041b Mon Sep 17 00:00:00 2001
From: Daniel Paoliello
Date: Thu, 27 Feb 2025 15:08:36 -0800
Subject: [PATCH] [win][x64] Unwind v2 3/n: Add support for emitting unwind
dpaoliello wrote:
Thanks for the info!
For the different terminators, I'd prefer to keep to my current "assume 1-byte"
trick: the implementation is simple, and it will reduce the amount of unwind
data we need to emit.
But for the "too many unwind codes" and "too far from the end" scenarios, i
dpaoliello wrote:
> Any further thoughts on splitting unwind info, as we discussed in #110338?
Unfortunately, this isn't going to work. @pmsjt informs me that we can't have
epilogs in chained unwind tables, since they are only for additional savereg
codes. Using the "assume terminator is 1-byt
@@ -500,7 +500,8 @@ MCSymbol *MCStreamer::emitLineTableLabel() {
MCSymbol *MCStreamer::emitCFILabel() {
// Return a dummy non-null value so that label fields appear filled in when
// generating textual assembly.
- return (MCSymbol *)1;
+ static size_t DummyLabelValue = 0;
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/129142
Adds support for emitting Windows x64 Unwind V2 information, includes support
`/d2epilogunwind` in clang-cl.
Unwind v2 adds information about the epilogs in functions such that the
unwinder can unwind even
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/125320
>From 7e68b84f5d2ebdc8d4ac35af97b163f10bcaf455 Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Fri, 31 Jan 2025 16:47:23 -0800
Subject: [PATCH] [aarch64][x86][win] Add support for MSVC's /fun
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/125320
>From fe5b7ada3eae41bac26639d90e3d0d105a30be8f Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Fri, 31 Jan 2025 16:47:23 -0800
Subject: [PATCH] [aarch64][x86][win] Add support for MSVC's /fun
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/125320
>From dc48eeb8b8ae51a8ee5a5289de4d0b6eb8cd0b68 Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Fri, 31 Jan 2025 16:47:23 -0800
Subject: [PATCH] [aarch64][x86][win] Add support for MSVC's /fun
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/125320
>From f6b91ae8062ce1b8d1b6bb39b631a6971c06612b Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Fri, 31 Jan 2025 16:47:23 -0800
Subject: [PATCH] [aarch64][x86][win] Add support for MSVC's /fun
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/125320
>From 061d2521e8db70c591e9c0d8f2e6348120cb55c1 Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Fri, 31 Jan 2025 16:47:23 -0800
Subject: [PATCH] [aarch64][x86][win] Add support for MSVC's /fun
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/125320
Adds support for MSVC's undocumented `/funcoverride` flag, which marks
functions as being replaceable by the Windows kernel loader. This is used to
allow functions to be upgraded depending on the capabilitie
https://github.com/dpaoliello closed
https://github.com/llvm/llvm-project/pull/122831
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/122831
>From 91aa313945ee120d4e4d0c984e04159e29689fd6 Mon Sep 17 00:00:00 2001
From: Daniel Paoliello
Date: Mon, 13 Jan 2025 15:28:11 -0800
Subject: [PATCH] [aarch64][win] Add a clang flag and module attribute for
@@ -945,7 +944,7 @@ void AArch64AsmPrinter::emitEndOfAsmFile(Module &M) {
// If import call optimization is enabled, emit the appropriate section.
// We do this whether or not we recorded any import calls.
- if (EnableImportCallOptimization && TT.isOSBinFormatCOFF()) {
+
@@ -945,7 +944,7 @@ void AArch64AsmPrinter::emitEndOfAsmFile(Module &M) {
// If import call optimization is enabled, emit the appropriate section.
// We do this whether or not we recorded any import calls.
- if (EnableImportCallOptimization && TT.isOSBinFormatCOFF()) {
+
https://github.com/dpaoliello closed
https://github.com/llvm/llvm-project/pull/117752
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dpaoliello wrote:
> Sorry, just spotted an issue: I don't think you're emitting the operations in
> the correct order. You need to emit both arguments before you read the
> register or load the value.
>
> If you have some non-trivial operation like a call in one of the arguments,
> you don't
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/117752
>From acbd8132ac9d9156abcaac1ab3bb2e1e2e434216 Mon Sep 17 00:00:00 2001
From: Daniel Paoliello
Date: Tue, 26 Nov 2024 09:27:54 -0800
Subject: [PATCH] [AArch64] Add support for the
__{inc|add}x18{byte|word|dw
https://github.com/dpaoliello edited
https://github.com/llvm/llvm-project/pull/117752
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/117752
Adds support for the following MSVC intrinsics:
* `__addx18byte`
* `__addx18word`
* `__addx18dword`
* `__addx18qword`
* `__incx18byte`
* `__incx18word`
* `__incx18dword`
* `__incx18qword`
These are documented
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/117645
Adds support for the following MSVC intrinsics:
* `_InterlockedCompareExchangePointer_acq`
* `_InterlockedCompareExchangePointer_rel`
* `_InterlockedExchangePointer_acq`
* `_InterlockedExchangePointer_nf`
* `_
https://github.com/dpaoliello closed
https://github.com/llvm/llvm-project/pull/116847
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -8719,6 +8719,18 @@ Attribute used by `clspv`_ (OpenCL-C to Vulkan SPIR-V
compiler) to identify func
}];
}
+def NoTrivialAutoVarInitDocs : Documentation {
+ let Category = DocCatDecl;
+ let Content = [{
+The ``__declspec(no_init_all)`` attribute disables the automatic
i
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/116847
>From d14059d2d7cb529fc0315c2cb1fbe869ebaab58d Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Tue, 19 Nov 2024 09:34:51 -0800
Subject: [PATCH] [clang] Add support for __declspec(no_init_all)
dpaoliello wrote:
> I'd still like to have a basic description in documentation for reference,
> especially since there isn't any corresponding MSVC compiler documentation.
Done
https://github.com/llvm/llvm-project/pull/116847
___
cfe-commits maili
https://github.com/dpaoliello edited
https://github.com/llvm/llvm-project/pull/116847
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/116847
>From d97c75c91d5b4a8b6c490ce125f3c7cf0f62b234 Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Tue, 19 Nov 2024 09:34:51 -0800
Subject: [PATCH] [clang] Add support for __declspec(no_init_all)
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/116847
>From bacaeb4e7a0653cee26698f47a63fa549ef7a8ce Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Tue, 19 Nov 2024 09:34:51 -0800
Subject: [PATCH] [clang] Add support for __declspec(no_init_all)
https://github.com/dpaoliello edited
https://github.com/llvm/llvm-project/pull/116707
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello edited
https://github.com/llvm/llvm-project/pull/116707
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/116707
>From 5cd8b328c83f3c959b443b5548330e17f35a432b Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Mon, 18 Nov 2024 14:46:42 -0800
Subject: [PATCH] [aarch64][clang][llvm] Allow AArch64 TLB mainte
dpaoliello wrote:
> If we're going to treat `/d1initall` as an alias for
> `-ftrivial-auto-var-init`, can we just treat `__declspec(no_init_all)` as an
> alias for `__attribute__((uninitialized))`?
`uninitialized` currently only applied to local variable declarations, whereas
`__declspec(no_i
dpaoliello wrote:
> Could you give more details about why you would want these added?
These instructions are being used in the hand-written assembly for a
hypervisor. The hypervisor will check at runtime if the instructions are
available on the current CPU before calling this code.
https://
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/116847
In MSVC, when `/d1initall` is enabled, `__declspec(no_init_all)` can be applied
to a type to suppress auto-initialization for all instances of that type or to
a function to suppress auto-initialization for a
dpaoliello wrote:
> `__ARM_FEATURE_*` defines are, as far as I know, supposed to be defined in
> the ACLE. So there needs to be an issue/PR for the ACLE spec. Once Arm
> reviews that, we can merge the corresponding patches here.
Ah, interesting, any objection to not adding the detection macros
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/116707
Enables `xs` and `tlb-rmi` target features to be enabled via `-march` and adds
new target defines for them in Clang.
>From 50e4cbc9d15941feecf2cff8fb1e36ecc3b9c6a9 Mon Sep 17 00:00:00 2001
From: "Daniel Paol
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/112767
>From 20f602b8c28d966a7cc957a3ca4c6ed43e71258e Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Thu, 17 Oct 2024 12:21:25 -0700
Subject: [PATCH 1/3] Fix build break in SemaHLSL.cpp on MSVC 202
https://github.com/dpaoliello closed
https://github.com/llvm/llvm-project/pull/112767
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello edited
https://github.com/llvm/llvm-project/pull/112767
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -102,6 +102,7 @@ static ResourceClass getResourceClass(RegisterType RT) {
return ResourceClass::Sampler;
case RegisterType::C:
case RegisterType::I:
+ default:
llvm_unreachable("unexpected RegisterType value");
}
dpaoliello wrote:
> It soun
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/112767
>From 20f602b8c28d966a7cc957a3ca4c6ed43e71258e Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Thu, 17 Oct 2024 12:21:25 -0700
Subject: [PATCH 1/2] Fix build break in SemaHLSL.cpp on MSVC 202
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/112767
Adds a default case to the switch to the existing `llvm_unreachable` statement.
Build break was introduced by #111203
It was not caught by the builders as they use Visual Studio 2019, whereas this
warning o
dpaoliello wrote:
> Need to make sure the autoupgraded string matches the new string, but
> otherwise should be fine. (I remember last time we made major changes for
> x86, the 128-bit integer alignment change, it was sort of tricky, but the
> issue mostly wasn't the layout string itself.)
Th
@@ -1,5 +1,6 @@
// RUN: %clang_cc1 -triple x86_64-windows-msvc -fms-extensions -emit-llvm -O2
< %s | FileCheck %s --check-prefixes=X64,ALL
// RUN: %clang_cc1 -triple i386-pc-win32 -fms-extensions -emit-llvm -O2 < %s |
FileCheck %s --check-prefixes=X86,ALL
+// RUN: %clang_cc1 -
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/111879
>From 0f2017d7b9d3a8b0d1eee21f25e22ace58a398cc Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Wed, 9 Oct 2024 16:47:57 -0700
Subject: [PATCH] [clang][aarch64] Add support for the MS qualifie
@@ -32,6 +58,8 @@ class LLVM_LIBRARY_VISIBILITY AArch64TargetInfo : public
TargetInfo {
SveMode = (1 << 2),
};
+ enum AddrSpace { ptr32_sptr = 270, ptr32_uptr = 271, ptr64 = 272 };
dpaoliello wrote:
Definitely prefer that - this whole thing has **way*
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/111879
>From ec2b533ef344f58f61fc59fe5a9c55043eef8718 Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Wed, 9 Oct 2024 16:47:57 -0700
Subject: [PATCH] [clang][aarch64] Add support for the MS qualifie
https://github.com/dpaoliello updated
https://github.com/llvm/llvm-project/pull/111879
>From 281a05c90b1b7df7e75743012d93efeb484901fd Mon Sep 17 00:00:00 2001
From: "Daniel Paoliello (HE/HIM)"
Date: Wed, 9 Oct 2024 16:47:57 -0700
Subject: [PATCH] [clang][aarch64] Add support for the MS qualifie
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/111879
MSVC has a set of qualifiers to allow using 32-bit signed/unsigned pointers
when building 64-bit targets. This is useful for WoW code (i.e., the part of
Windows that handles running 32-bit application on a 6
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Poussineau ,
=?utf-8?q?Hervé?= Po
https://github.com/dpaoliello approved this pull request.
https://github.com/llvm/llvm-project/pull/96578
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello closed
https://github.com/llvm/llvm-project/pull/93235
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello created
https://github.com/llvm/llvm-project/pull/93235
#67174 added the `__prefetch` intrinsic, however it used the wrong signature:
the argument should be `const void*`, not `void*`.
Docs:
https://learn.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics?view=m
https://github.com/dpaoliello approved this pull request.
https://github.com/llvm/llvm-project/pull/91281
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello approved this pull request.
Did the exact same thing for Rust :)
https://github.com/llvm/llvm-project/pull/89171
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
https://github.com/dpaoliello approved this pull request.
https://github.com/llvm/llvm-project/pull/88572
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dpaoliello approved this pull request.
https://github.com/llvm/llvm-project/pull/79067
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
59 matches
Mail list logo