Home | History | Annotate | Download | only in include
History log of /src/sys/arch/arm/include/cdefs.h
RevisionDateAuthorComments
 1.19  01-Dec-2020  rin Switch earmv6{,hf}eb to BE8 in kernel side.

My strategy here is to define _ARM_ARCH_BE8 macro in arm/cdefs.h, if
__ARMEB__ && _ARM_ARCH_6.

Use this macro to determine whether system is compiled for and running on
BE8 mode or not.

Note that, for __ARMEB__, some conditions become compile-time constants
determined by _ARM_ARCH_BE8 macro, e.g., whether BE8 or BE32 are accepted
as a userland binary, or unaligned memory access is possible or not.
 1.18  03-Nov-2020  skrll The ARM C Language Extenstion document defines __ARCH_ARM as the integer
macro indicating the current ARM instruction set. Let's use it.

PR/55778: evbarm64 GENERIC64 kernel fails to build with clang

XXX Handle the fact that for an ARM architecture ARMvX.Y then,
XXX __ARM_ARCH= X * 100 + Y. E.g. for ARMv8.1 __ARM_ARCH = 801.
 1.17  11-Oct-2020  skrll branches: 1.17.2;
Define _ARM_ARCH_8 when __ARM_ARCH_8A (no trailing double underscore) as
it is defined by gcc.

__ARM_ARCH_8A__ (with trailing double underscore) seems to be a typo (or
maybe historical)
 1.16  02-Aug-2019  joerg ARMv6KZ has been misspelled by GCC since forever, but clang only
provides the correct name. Support both.
 1.15  23-Jun-2014  christos branches: 1.15.28;
unbreak lint
 1.14  24-Mar-2014  matt branches: 1.14.2;
Use sizeof(__int128_t) for aarch64 and sizeof(long long) for ARM EABI
 1.13  18-Mar-2014  christos Make all __ALIGNBYTES macros return the same type (size_t)
 1.12  29-Jan-2014  matt Fix inverted GCC version test
 1.11  29-Jan-2014  matt Add a check for minimum compiler compatible with gcc 4.1
__ARM_PCS_AAPCS64 also requires __ALIGNBYTES to be 7
 1.10  28-Jan-2014  matt Deal with __ARM_ARCH_8A__
 1.9  17-Aug-2013  matt Add _ARM_ARCH_5T (needed for blx <reg> support)
 1.8  15-Aug-2013  matt Add _ARM_ARCH_T2 to indicate Thumb2 support
Don't define _ARM_ARCH_DWORD_OK disappear if compiling for Thumb1
 1.7  05-Aug-2012  matt branches: 1.7.2; 1.7.4;
Add a macro for determining whether we can use LDRD/STRD instructions
 1.6  31-Jul-2012  matt If we are using EABI (aapcs-linux), then ALIGNBYTES needs to deal with
8-byte long types.
 1.5  12-Jul-2012  matt Add more arm7 and arm6 variants.
 1.4  20-Jan-2012  joerg branches: 1.4.4;
Change CMSG_SPACE and CMSG_LEN to provide Integer Constant Expressions
again. This was changed in sys/socket.h r1.51 to work around fallout
from the IPv6 aux data migration. It broke the historic ABI on some
platforms. This commit restores compatibility for netbsd32 code on such
platforms and provides a template for future changes to the CMSG_*
alignment. Revert PCC/Clang workarounds in postfix and tmux.
 1.3  17-Oct-2007  garbled branches: 1.3.38; 1.3.54; 1.3.58;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.2  26-Aug-2007  matt Move _ARM_ARCH_* from asm.h to cdefs.h so everyone can use them.
Add _END/END/ASEND which every port's asm.h should have.
Add GET_CPUFINO(rX). Reserved for future use. :)
Use %foo instead of #foo
 1.1  10-Jan-2001  bjh21 branches: 1.1.2; 1.1.44; 1.1.86; 1.1.94; 1.1.100; 1.1.102; 1.1.104; 1.1.106;
Header files which don't differ between arm32 and arm26 and can thus be
shared.
 1.1.106.1  01-Jan-2008  chris Sync with HEAD.
 1.1.104.1  03-Sep-2007  jmcneill Sync with HEAD.
 1.1.102.1  01-Nov-2007  rjs Sync with HEAD.
 1.1.100.1  03-Sep-2007  skrll Sync with HEAD.
 1.1.94.1  03-Oct-2007  garbled Sync with HEAD
 1.1.86.1  09-Oct-2007  ad Sync with head.
 1.1.44.1  03-Sep-2007  yamt sync with head.
 1.1.2.2  10-Jan-2001  bjh21 Header files which don't differ between arm32 and arm26 and can thus be
shared.
 1.1.2.1  10-Jan-2001  bjh21 file cdefs.h was added on branch thorpej_scsipi on 2001-01-10 19:02:06 +0000
 1.3.58.1  18-Feb-2012  mrg merge to -current.
 1.3.54.3  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.3.54.2  30-Oct-2012  yamt sync with head
 1.3.54.1  17-Apr-2012  yamt sync with head
 1.3.38.2  26-Mar-2014  matt Make the minimal alignment 8 if EABI or ldrd/strd are supported.
 1.3.38.1  19-Dec-2013  matt Pull from HEAD (for post armv6 defines).
 1.4.4.1  28-Nov-2012  matt Merge improved arm support (especially Cortex) from HEAD
including OMAP and BCM53xx support.
 1.7.4.2  18-May-2014  rmind sync with head
 1.7.4.1  28-Aug-2013  rmind sync with head
 1.7.2.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.14.2.1  10-Aug-2014  tls Rebase.
 1.15.28.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.17.2.1  14-Dec-2020  thorpej Sync w/ HEAD.

RSS XML Feed