diff options
author | Marc Zyngier <maz@kernel.org> | 2021-01-18 13:01:29 +0000 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2021-01-20 12:11:27 +0000 |
commit | 7001d4af926b26469a0604eca80dc73b80c5faa8 (patch) | |
tree | b0b9a6b3cb0157e26efb904065264f5b57a915e3 /arch/arm64/include/asm | |
parent | 19c329f6808995b142b3966301f217c831e7cf31 (diff) | |
download | lwn-7001d4af926b26469a0604eca80dc73b80c5faa8.tar.gz lwn-7001d4af926b26469a0604eca80dc73b80c5faa8.zip |
arm64: Drop workaround for broken 'S' constraint with GCC 4.9
Since GCC < 5.1 has been shown to be unsuitable for the arm64 kernel,
let's drop the workaround for the 'S' asm constraint that GCC 4.9
doesn't always grok.
This is effectively a revert of 9fd339a45be5 ("arm64: Work around
broken GCC 4.9 handling of "S" constraint").
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20210118130129.2875949-1-maz@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/include/asm')
-rw-r--r-- | arch/arm64/include/asm/kvm_asm.h | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/arch/arm64/include/asm/kvm_asm.h b/arch/arm64/include/asm/kvm_asm.h index 8a33d83ea843..7ccf770c53d9 100644 --- a/arch/arm64/include/asm/kvm_asm.h +++ b/arch/arm64/include/asm/kvm_asm.h @@ -199,12 +199,6 @@ extern void __vgic_v3_init_lrs(void); extern u32 __kvm_get_mdcr_el2(void); -#if defined(GCC_VERSION) && GCC_VERSION < 50000 -#define SYM_CONSTRAINT "i" -#else -#define SYM_CONSTRAINT "S" -#endif - /* * Obtain the PC-relative address of a kernel symbol * s: symbol @@ -221,7 +215,7 @@ extern u32 __kvm_get_mdcr_el2(void); typeof(s) *addr; \ asm("adrp %0, %1\n" \ "add %0, %0, :lo12:%1\n" \ - : "=r" (addr) : SYM_CONSTRAINT (&s)); \ + : "=r" (addr) : "S" (&s)); \ addr; \ }) |