Lines Matching +full:8 +full:- +full:cpu
1 .\" Copyright (c) 2016-2017 The FreeBSD Foundation.
32 .Nd Architecture-specific details
34 Differences between CPU architectures and platforms supported by
40 For full details consult the processor-specific ABI supplement
83 This table shows currently supported CPU architectures along with the first
86 .Bl -column -offset indent "Architecture" "Initial Release"
100 .Bl -column -offset indent "Architecture" "Initial Release" "Final Release"
128 .Bl -tag -width "Dv ILP32"
133 types machine representations all have 4-byte size.
141 are 8 bytes.
147 Typically these are 64-bit machines, where the
153 environment, which was the historical 32-bit predecessor for 64-bit evolution.
155 .Bl -column -offset indent "powerpc64" "ILP32 counterpart"
165 binaries if the CPU implements
171 .Bl -column -offset indent "long long" "Size"
176 .It long long Ta 8
178 .It double Ta 8
186 require only 4-byte alignment for 64-bit integers.
188 Machine-dependent type sizes:
189 .Bl -column -offset indent "Architecture" "void *" "long double" "time_t"
191 .It aarch64 Ta 8 Ta 16 Ta 8
192 .It amd64 Ta 8 Ta 16 Ta 8
193 .It armv7 Ta 4 Ta 8 Ta 8
195 .It powerpc Ta 4 Ta 8 Ta 8
196 .It powerpcspe Ta 4 Ta 8 Ta 8
197 .It powerpc64 Ta 8 Ta 8 Ta 8
198 .It powerpc64le Ta 8 Ta 8 Ta 8
199 .It riscv64 Ta 8 Ta 16 Ta 8
203 is 8 bytes on all supported architectures except i386.
205 .Bl -column -offset indent "Architecture" "Endianness" "char Signedness"
218 .Bl -column -offset indent "Architecture" "Page Sizes"
231 .Bl -column -offset indent "Architecture" "float, double" "long double"
247 as the default compiler on all supported CPU architectures,
266 .Bl -column -offset indent "Dv MACHINE" "Dv MACHINE_CPUARCH" "Dv MACHINE_ARCH"
277 Some of these provide architecture-specific details and are explained below.
282 .Bd -literal -offset indent
283 cc -x c -dM -E /dev/null
287 .Bl -column -offset indent "BYTE_ORDER" "Meaning"
289 .It Dv __LP64__ Ta 64-bit (8-byte) long and pointer, 32-bit (4-byte) int
290 .It Dv __ILP32__ Ta 32-bit (4-byte) int, long and pointer
297 Architecture-specific macros:
298 .Bl -column -offset indent "Architecture" "Predefined macros"
311 Compilers may define additional variants of architecture-specific macros.
320 .Bl -tag -width "MACHINE_CPUARCH"
330 Each CPU architecture may have multiple hardware platforms it supports
335 .Xr config 8
339 just as one CPU architecture can be implemented by many different
340 hardware platforms, one hardware platform may support multiple CPU
344 of i386 supported the IBM-AT hardware platform while the
346 of pc98 supported the Japanese company NEC's PC-9801 and PC-9821
358 Represents the CPU processor architecture.
363 It defines the CPU instruction family supported.
364 It may also encode a variation in the byte ordering of multi-byte
374 Generally, the plain CPU name specifies the most common (or at least
375 first) variant of the CPU.
378 If we ever were to support the so-called x32 ABI (using 32-bit
380 as amd64-x32.
381 It is unfortunate that amd64 specifies the 64-bit evolution of the x86 platform
406 It is used to optimize the build for a specific CPU / core that the