-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Commit
Compiling openzfs on aarch64 with gcc-8 and gcc-9 is failing currently. See issue #14965 for deeper context. On platforms without pointer authentication, .cfi_negate_ra_state can be defined to a no-op: https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=gdb/aarch64-tdep.c#l1413 I have tested this on Arm64 FreeBSD 13.2 and AlmaLinux-8. Reviewed-by: Andrew Turner <[email protected]> Signed-off-by: Tino Reichardt <[email protected]> Closes #14965 Closes #15784
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -32,6 +32,14 @@ | |
*/ | ||
|
||
#if defined(__aarch64__) | ||
|
||
/* make gcc <= 9 happy */ | ||
#if LD_VERSION >= 233010000 | ||
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong.
mcmilk
Author
Contributor
|
||
#define CFI_NEGATE_RA_STATE .cfi_negate_ra_state | ||
#else | ||
#define CFI_NEGATE_RA_STATE | ||
#endif | ||
|
||
.text | ||
.section .note.gnu.property,"a",@note | ||
.p2align 3 | ||
|
@@ -51,7 +59,7 @@ | |
zfs_blake3_compress_in_place_sse2: | ||
.cfi_startproc | ||
hint #25 | ||
.cfi_negate_ra_state | ||
CFI_NEGATE_RA_STATE | ||
sub sp, sp, #96 | ||
stp x29, x30, [sp, #64] | ||
add x29, sp, #64 | ||
|
@@ -555,7 +563,7 @@ compress_pre: | |
zfs_blake3_compress_xof_sse2: | ||
.cfi_startproc | ||
hint #25 | ||
.cfi_negate_ra_state | ||
CFI_NEGATE_RA_STATE | ||
sub sp, sp, #96 | ||
stp x29, x30, [sp, #64] | ||
add x29, sp, #64 | ||
|
@@ -608,7 +616,7 @@ zfs_blake3_compress_xof_sse2: | |
zfs_blake3_hash_many_sse2: | ||
.cfi_startproc | ||
hint #25 | ||
.cfi_negate_ra_state | ||
CFI_NEGATE_RA_STATE | ||
stp d15, d14, [sp, #-160]! | ||
stp d13, d12, [sp, #16] | ||
stp d11, d10, [sp, #32] | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -32,6 +32,14 @@ | |
*/ | ||
|
||
#if defined(__aarch64__) | ||
|
||
/* make gcc <= 9 happy */ | ||
#if LD_VERSION >= 233010000 | ||
This comment has been minimized.
Sorry, something went wrong.
mmatuska
Contributor
|
||
#define CFI_NEGATE_RA_STATE .cfi_negate_ra_state | ||
#else | ||
#define CFI_NEGATE_RA_STATE | ||
#endif | ||
|
||
.text | ||
.section .note.gnu.property,"a",@note | ||
.p2align 3 | ||
|
@@ -51,7 +59,7 @@ | |
zfs_blake3_compress_in_place_sse41: | ||
.cfi_startproc | ||
hint #25 | ||
.cfi_negate_ra_state | ||
CFI_NEGATE_RA_STATE | ||
sub sp, sp, #96 | ||
stp x29, x30, [sp, #64] | ||
add x29, sp, #64 | ||
|
@@ -565,7 +573,7 @@ compress_pre: | |
zfs_blake3_compress_xof_sse41: | ||
.cfi_startproc | ||
hint #25 | ||
.cfi_negate_ra_state | ||
CFI_NEGATE_RA_STATE | ||
sub sp, sp, #96 | ||
stp x29, x30, [sp, #64] | ||
add x29, sp, #64 | ||
|
@mcmilk shouldn't this be
if !defined(LD_VERSION) || LD_VERSION >= 233010000