[PATCH v3 1/2] Makefile: Fix -mno-save-restore compile warning with CLANG
Xiang W
wxjstz at 126.com
Thu Dec 2 06:28:21 PST 2021
在 2021-12-02星期四的 17:59 +0530,Anup Patel写道:
> The riscv target of CLANG does not support -m(no-)save-restore option
> so we get compile warnings. This patch fixes compile warning by using
> -m(no-)save-restore option only for GCC.
>
> Signed-off-by: Anup Patel <anup.patel at wdc.com>
➜ /tmp clang -target riscv64 -mno-save-restore -O2 -S test.c
➜ /tmp clang -target riscv64 -msave-restore -O2 -S test.c
➜ /tmp clang --version
Debian clang version 11.0.1-2
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
➜ /tmp lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
➜ /tmp
clang supports -m(no-)save-restore option on my computer
Regards,
Xiang W
> ---
> Makefile | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 8623c1c..1e35dc0 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -275,8 +275,10 @@ GENFLAGS += $(platform-genflags-y)
> GENFLAGS += $(firmware-genflags-y)
>
> CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -
> fno-stack-protector -fno-strict-aliasing -O2
> -CFLAGS += -fno-omit-frame-pointer -fno-optimize-
> sibling-calls
> -CFLAGS += -mno-save-restore -mstrict-align
> +CFLAGS += -fno-omit-frame-pointer -fno-optimize-
> sibling-calls -mstrict-align
> +ifneq ($(CC_IS_CLANG),y)
> +CFLAGS += -mno-save-restore
> +endif
> CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -
> march=$(PLATFORM_RISCV_ISA)
> CFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL)
> CFLAGS += $(RELAX_FLAG)
> @@ -290,8 +292,10 @@ CPPFLAGS += $(platform-cppflags-y)
> CPPFLAGS += $(firmware-cppflags-y)
>
> ASFLAGS = -g -Wall -nostdlib
> -ASFLAGS += -fno-omit-frame-pointer -fno-
> optimize-sibling-calls
> -ASFLAGS += -mno-save-restore -mstrict-align
> +ASFLAGS += -fno-omit-frame-pointer -fno-
> optimize-sibling-calls -mstrict-align
> +ifneq ($(CC_IS_CLANG),y)
> +ASFLAGS += -mno-save-restore
> +endif
> ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -
> march=$(PLATFORM_RISCV_ISA)
> ASFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL)
> ASFLAGS += $(RELAX_FLAG)
> --
> 2.25.1
>
>
More information about the opensbi
mailing list