Include machine/acle-compat.h in cdefs.h on arm if the compiler doesn't
authorian <ian@FreeBSD.org>
Wed, 25 May 2016 19:44:26 +0000 (19:44 +0000)
committerian <ian@FreeBSD.org>
Wed, 25 May 2016 19:44:26 +0000 (19:44 +0000)
commit8d8c35656ee44a38e24d3e78e45afecf0c29a92c
tree90464adcd35c6df87f88394a1cb3a9fbcf8f1857
parent24dfc68c5cf50551cd4f342ba0f5496c53557d9d
Include machine/acle-compat.h in cdefs.h on arm if the compiler doesn't
have ACLE support built in.  The ACLE (ARM C Language Extensions) defines
a set of standardized symbols which indicate the architecture version and
features available.  ACLE support is built in to modern compilers (both
clang and gcc), but absent from gcc prior to 4.4.

ARM (the company) provides the acle-compat.h header file to define the
right symbols for older versions of gcc.  Basically, acle-compat.h does
for arm about the same thing cdefs.h does for freebsd: defines
standardized macros that work no matter which compiler you use.  If ARM
hadn't provided this file we would have ended up with a big #ifdef __arm__
section in cdefs.h with our own compatibility shims.

Remove #include <machine/acle-compat.h> from the zillion other places (an
ever-growing list) that it appears.  Since style(9) requires sys/types.h
or sys/param.h early in the include list, and both of those lead to
including cdefs.h, only a couple special cases still need to include
acle-compat.h directly.

Loves it:     imp
42 files changed:
sys/arm/arm/bcopyinout.S
sys/arm/arm/bcopyinout_xscale.S
sys/arm/arm/bus_space_base.c
sys/arm/arm/copystr.S
sys/arm/arm/cpu_asm-v6.S
sys/arm/arm/cpufunc.c
sys/arm/arm/disassem.c
sys/arm/arm/elf_machdep.c
sys/arm/arm/exception.S
sys/arm/arm/fiq.c
sys/arm/arm/fusu.S
sys/arm/arm/genassym.c
sys/arm/arm/locore-v6.S
sys/arm/arm/machdep.c
sys/arm/arm/mem.c
sys/arm/arm/mp_machdep.c
sys/arm/arm/stdatomic.c
sys/arm/arm/swtch-v4.S
sys/arm/arm/swtch-v6.S
sys/arm/arm/sys_machdep.c
sys/arm/arm/trap-v6.c
sys/arm/arm/vm_machdep.c
sys/arm/include/armreg.h
sys/arm/include/asm.h
sys/arm/include/atomic.h
sys/arm/include/bus.h
sys/arm/include/cpu-v4.h
sys/arm/include/cpu-v6.h
sys/arm/include/cpu.h
sys/arm/include/db_machdep.h
sys/arm/include/machdep.h
sys/arm/include/param.h
sys/arm/include/pcpu.h
sys/arm/include/pmap.h
sys/arm/include/sf_buf.h
sys/arm/include/sysarch.h
sys/arm/include/sysreg.h
sys/arm/include/vm.h
sys/arm/mv/mv_machdep.c
sys/kern/imgact_elf.c
sys/kern/subr_devmap.c
sys/sys/cdefs.h