changeset 34:645307d37731

- started section for armhf in doc
author cslag
date Tue, 15 Dec 2015 11:19:57 +0100
parents 8449fa6dabc7
children 61edd9cf8026
files ToDo doc/manual/callconvs/callconv_arm32.tex
diffstat 2 files changed, 31 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/ToDo	Fri Nov 27 01:18:22 2015 +0100
+++ b/ToDo	Tue Dec 15 11:19:57 2015 +0100
@@ -16,7 +16,7 @@
 - fix Minix/x86 callbacks (see callback_suite)
 - fix Linux/rpi callbacks (call_suite)
 - armhf callback support
-- armhf ellipsis suppor
+- armhf ellipsis support
 - armhf callconv manual entry
 - add portable "make install"
 - support Solaris11 CFLAGS with -D_FILE_OFFSET_BITS=64
--- a/doc/manual/callconvs/callconv_arm32.tex	Fri Nov 27 01:18:22 2015 +0100
+++ b/doc/manual/callconvs/callconv_arm32.tex	Tue Dec 15 11:19:57 2015 +0100
@@ -288,17 +288,40 @@
 \item R9 is scratch since iOS 3.0, was preserved before.
 \end{itemize}
 
+
+\subsubsection{ARM hard float (armhf)}
+
+
+Most debian-based Linux systems on ARMv7 platforms use a calling convention referred to as armhf, using
+16 64-bit floating point registers of the FPU of the VFPv3-D16 extension to the ARM architecture. Code
+is using the Thumb-2 instruction set.
+
+\paragraph{Register usage}
+
+\begin{table}[h]
+\begin{tabular}{3 B}
+\hline
+Name         & Brief description\\
+\hline
+... tbd
+\hline
+\end{tabular}
+\caption{Register usage on armhf}
+\end{table}
+
+
 \subsubsection{Architectures}
 
 The ARM architecture family contains several revisions with capabilities and
-extensions (such as thumb-interworking and more vector registers) 
-The following table summaries important properties of the various 
-architecture standards.
+extensions (such as thumb-interworking, more vector registers, ...) 
+The following table sums up the most important properties of the various 
+architecture standards, from a calling convention perspective.
 
 % iPhone 3GS : ARM Cortex-A8
 % Nintendo DS: ARM 7 and ARM 9
 % ARM 7: ARMv4T
 % ARM 9: ARMv4T, HTC Wizard
+% Cortex-*: ARMv7, Raspberry Pi 2, ...
 
 \begin{table}[h]
 \begin{tabular}{lll}
@@ -308,11 +331,13 @@
 \hline
 ARMv4T & ARM 7, ARM 9, Neo FreeRunner (OpenMoko) & \\
 \hline
-ARMv5  & & BLX instruction available \\
+ARMv5  & ARM 9E & BLX instruction available \\
 \hline
 ARMv6  & & No vector registers available in thumb \\
 \hline
-ARMv7  & iPod touch, iPhone 3GS/4 & \\ 
+ARMv7  & iPod touch, iPhone 3GS/4, Raspberry Pi 2 & VFP throughout available, armhf calling convention on some platforms \\ 
+\hline
+ARMv8  & iPhone 6 and higher & 64bit support \\ 
 \hline
 \end{tabular}
 \caption{Overview of ARM Architecture, Platforms and Details}