From: Paul Walmsley <paul.walmsley@sifive.com> To: linux-riscv@lists.infradead.org Cc: linux-kernel@vger.kernel.org Subject: [PATCH 4/8] riscv: ensure RISC-V C model definitions are passed to static analyzers Date: Thu, 17 Oct 2019 17:49:25 -0700 [thread overview] Message-ID: <20191018004929.3445-5-paul.walmsley@sifive.com> (raw) In-Reply-To: <20191018004929.3445-1-paul.walmsley@sifive.com> Static analysis tools such as sparse don't set the RISC-V C model preprocessor directives such as "__riscv_cmodel_medany", set by the C compilers. This causes the static analyzers to evaluate different preprocessor paths than C compilers would. Fix this by defining the appropriate C model macros in the static analyzer command lines. Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com> --- arch/riscv/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile index f5e914210245..0247a90bd4d8 100644 --- a/arch/riscv/Makefile +++ b/arch/riscv/Makefile @@ -47,9 +47,11 @@ KBUILD_CFLAGS += -DCONFIG_PAGE_OFFSET=$(CONFIG_PAGE_OFFSET) ifeq ($(CONFIG_CMODEL_MEDLOW),y) KBUILD_CFLAGS += -mcmodel=medlow + CHECKFLAGS += -D__riscv_cmodel_medlow endif ifeq ($(CONFIG_CMODEL_MEDANY),y) KBUILD_CFLAGS += -mcmodel=medany + CHECKFLAGS += -D__riscv_cmodel_medany endif ifeq ($(CONFIG_MODULE_SECTIONS),y) KBUILD_LDS_MODULE += $(srctree)/arch/riscv/kernel/module.lds -- 2.23.0
WARNING: multiple messages have this Message-ID (diff)
From: Paul Walmsley <paul.walmsley@sifive.com> To: linux-riscv@lists.infradead.org Cc: linux-kernel@vger.kernel.org Subject: [PATCH 4/8] riscv: ensure RISC-V C model definitions are passed to static analyzers Date: Thu, 17 Oct 2019 17:49:25 -0700 [thread overview] Message-ID: <20191018004929.3445-5-paul.walmsley@sifive.com> (raw) In-Reply-To: <20191018004929.3445-1-paul.walmsley@sifive.com> Static analysis tools such as sparse don't set the RISC-V C model preprocessor directives such as "__riscv_cmodel_medany", set by the C compilers. This causes the static analyzers to evaluate different preprocessor paths than C compilers would. Fix this by defining the appropriate C model macros in the static analyzer command lines. Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com> --- arch/riscv/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile index f5e914210245..0247a90bd4d8 100644 --- a/arch/riscv/Makefile +++ b/arch/riscv/Makefile @@ -47,9 +47,11 @@ KBUILD_CFLAGS += -DCONFIG_PAGE_OFFSET=$(CONFIG_PAGE_OFFSET) ifeq ($(CONFIG_CMODEL_MEDLOW),y) KBUILD_CFLAGS += -mcmodel=medlow + CHECKFLAGS += -D__riscv_cmodel_medlow endif ifeq ($(CONFIG_CMODEL_MEDANY),y) KBUILD_CFLAGS += -mcmodel=medany + CHECKFLAGS += -D__riscv_cmodel_medany endif ifeq ($(CONFIG_MODULE_SECTIONS),y) KBUILD_LDS_MODULE += $(srctree)/arch/riscv/kernel/module.lds -- 2.23.0 _______________________________________________ linux-riscv mailing list linux-riscv@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2019-10-18 0:50 UTC|newest] Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-10-18 0:49 [PATCH 0/8] riscv: resolve most warnings from sparse Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 1/8] riscv: add prototypes for assembly language functions from entry.S Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 2/8] riscv: add prototypes for assembly language functions from head.S Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 1:15 ` Paul Walmsley 2019-10-18 1:15 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 3/8] riscv: init: merge split string literals in preprocessor directive Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 4:02 ` Luc Van Oostenryck 2019-10-18 4:02 ` Luc Van Oostenryck 2019-10-18 4:38 ` Paul Walmsley 2019-10-18 4:38 ` Paul Walmsley 2019-10-18 5:28 ` Luc Van Oostenryck 2019-10-18 5:28 ` Luc Van Oostenryck 2019-10-18 5:47 ` Luc Van Oostenryck 2019-10-18 5:47 ` Luc Van Oostenryck 2019-10-18 6:08 ` Paul Walmsley 2019-10-18 6:08 ` Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley [this message] 2019-10-18 0:49 ` [PATCH 4/8] riscv: ensure RISC-V C model definitions are passed to static analyzers Paul Walmsley 2019-10-18 4:06 ` Luc Van Oostenryck 2019-10-18 4:06 ` Luc Van Oostenryck 2019-10-18 4:39 ` Paul Walmsley 2019-10-18 4:39 ` Paul Walmsley 2019-10-18 5:25 ` Luc Van Oostenryck 2019-10-18 5:25 ` Luc Van Oostenryck 2019-10-22 15:09 ` Palmer Dabbelt 2019-10-22 15:09 ` Palmer Dabbelt 2019-10-28 22:11 ` Luc Van Oostenryck 2019-10-28 22:11 ` Luc Van Oostenryck 2019-10-18 0:49 ` [PATCH 5/8] riscv: add missing prototypes Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 4:15 ` Luc Van Oostenryck 2019-10-18 4:15 ` Luc Van Oostenryck 2019-10-18 6:06 ` Paul Walmsley 2019-10-18 6:06 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 6/8] riscv: mark some code and data as file-static Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 7/8] riscv: add missing header file includes Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 0:49 ` [PATCH 8/8] riscv: fp: add missing __user pointer annotations Paul Walmsley 2019-10-18 0:49 ` Paul Walmsley 2019-10-18 3:12 ` [PATCH 0/8] riscv: resolve most warnings from sparse Anup Patel 2019-10-18 3:12 ` Anup Patel
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191018004929.3445-5-paul.walmsley@sifive.com \ --to=paul.walmsley@sifive.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-riscv@lists.infradead.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.