[PATCH v3 1/2] Makefile: Fix -mno-save-restore compile warning with CLANG

Dong Du dd_nirvana at sjtu.edu.cn
Thu Dec 2 04:48:49 PST 2021



On Dec 2, 2021, at 8:29 PM, anup patel anup.patel at wdc.com wrote:

> 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>

Looks good to me.

Reviewed-by: Dong Du <Dd_nirvana at sjtu.edu.cn>

> ---
> 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
> 
> 
> --
> opensbi mailing list
> opensbi at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/opensbi



More information about the opensbi mailing list