Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sparc: Drop the "-ansi" from the asflags

In the very early kernel 1.x days, assembler files were pre-processed
with the "-traditional" flag. With kernel 1.1.85, the sparc subsystem
was changed to use "-ansi" instead while the other parts of the kernel
continued to use "-traditional". That "-traditional" got removed from
the other architectures in the course of time, but the sparc part
kept the "-ansi" until today.

This is bad since it comes with some disadvantages nowadays: You have
to make sure to not include any header that contains a "//" C++ comment
by accident (there are now some in the tree that use these for SPDX
identifiers for example), and with "-ansi" we also do not get the
pre-defined __ASSEMBLER__ macro which we'd like to use instead of the
kernel-only __ASSEMBLY__ macro in the future.

Since there does not seem to be any compelling reason anymore to use
"-ansi" nowadays, let's simply drop the "-ansi" flag from the sparc
subsystem now to get rid of those disadvantages.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Andreas Larsson <andreas@gaisler.com>
Tested-by: Andreas Larsson <andreas@gaisler.com>
Signed-off-by: Andreas Larsson <andreas@gaisler.com>

authored by

Thomas Huth and committed by
Andreas Larsson
dc356bf3 302c0411

+1 -6
-2
arch/sparc/kernel/Makefile
··· 4 4 # Makefile for the linux kernel. 5 5 # 6 6 7 - asflags-y := -ansi 8 - 9 7 # Undefine sparc when processing vmlinux.lds - it is used 10 8 # And teach CPP we are doing $(BITS) builds (for this case) 11 9 CPPFLAGS_vmlinux.lds := -Usparc -m$(BITS)
+1 -1
arch/sparc/lib/Makefile
··· 2 2 # Makefile for Sparc library files.. 3 3 # 4 4 5 - asflags-y := -ansi -DST_DIV0=0x02 5 + asflags-y := -DST_DIV0=0x02 6 6 7 7 lib-$(CONFIG_SPARC32) += ashrdi3.o 8 8 lib-$(CONFIG_SPARC32) += memcpy.o memset.o
-2
arch/sparc/mm/Makefile
··· 2 2 # Makefile for the linux Sparc-specific parts of the memory manager. 3 3 # 4 4 5 - asflags-y := -ansi 6 - 7 5 obj-$(CONFIG_SPARC64) += ultra.o tlb.o tsb.o 8 6 obj-y += fault_$(BITS).o 9 7 obj-y += init_$(BITS).o
-1
arch/sparc/prom/Makefile
··· 2 2 # Makefile for the Sun Boot PROM interface library under 3 3 # Linux. 4 4 # 5 - asflags := -ansi 6 5 7 6 lib-y := bootstr_$(BITS).o 8 7 lib-y += init_$(BITS).o