# HG changeset patch # User cslag # Date 1468075173 -7200 # Node ID b0cca984c7408aa6573668365a444a52fcba7d37 # Parent 21537652361e9d8365e3ca28cc4055b838da15e1 - manual update, started splitting platform overview in EP and EL for some platforms diff -r 21537652361e -r b0cca984c740 ToDo --- a/ToDo Thu Jul 07 14:51:30 2016 +0200 +++ b/ToDo Sat Jul 09 16:39:33 2016 +0200 @@ -56,7 +56,8 @@ - other syscalls - MIPS32 softfloat support (-msoft-float) - MIPS64 little-endian needs testing (current port works on openbsd/octeon, which is big endian) -- implement MIPS64 N32 (gcc -mabi=n32); both, little and big-endian +- implement MIPS64 N32 (gcc -mabi=n32); both, little and big-endian (looks like NetNBSD on and + EdgeRouter lite uses this: https://blog.netbsd.org/tnf/entry/hands_on_experience_with_edgerouter) - implement MIPS64 EABI (gcc -mabi=eabi); both, little and big-endian dynload: @@ -80,7 +81,8 @@ - MIPS32 softfloat support (-msoft-float) - test MIPS o32 big endian (current port works on netbsd/pmax, which is little endian, and gcc -EB doesn't work on there) - test MIPS n64 little endian (current port works on openbsd/octeon, which is big endian) -- implement MIPS64 N32 (gcc -mabi=n32); both, little and big-endian +- implement MIPS64 N32 (gcc -mabi=n32); both, little and big-endian (looks like NetNBSD on and + EdgeRouter lite uses this: https://blog.netbsd.org/tnf/entry/hands_on_experience_with_edgerouter) - implement MIPS64 EABI (gcc -mabi=eabi); both, little and big-endian bindings: diff -r 21537652361e -r b0cca984c740 doc/manual/callconvs/callconv_ppc64.tex --- a/doc/manual/callconvs/callconv_ppc64.tex Thu Jul 07 14:51:30 2016 +0200 +++ b/doc/manual/callconvs/callconv_ppc64.tex Sat Jul 09 16:39:33 2016 +0200 @@ -45,8 +45,8 @@ \paragraph{Parameter passing} +@@@ \begin{itemize} -@@@ \item integer parameters \textless\ 64 bit are right-justified (meaning occupy higher-address bytes) in their 8-byte slot on the stack, requiring extra-care for big-endian targets \end{itemize} diff -r 21537652361e -r b0cca984c740 doc/manual/manual.tex --- a/doc/manual/manual.tex Thu Jul 07 14:51:30 2016 +0200 +++ b/doc/manual/manual.tex Sat Jul 09 16:39:33 2016 +0200 @@ -92,8 +92,7 @@ %\setlength{\parindent}{0mm} %\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} -\newcommand{\ninetyb}{\begin{sideways}} -\newcommand{\ninetye}{\end{sideways}} +\newcommand{\ninety}[1]{\begin{sideways}#1\end{sideways}} \renewcommand{\paragraph}[1]{% \par\vspace{12pt}% diff -r 21537652361e -r b0cca984c740 doc/manual/manual_overview.tex --- a/doc/manual/manual_overview.tex Thu Jul 07 14:51:30 2016 +0200 +++ b/doc/manual/manual_overview.tex Sat Jul 09 16:39:33 2016 +0200 @@ -156,24 +156,23 @@ For detailed info about a platform's support consult the calling convention appendix. \begin{table}[h] -\begin{tabular}{r|*{15}{c}} - - & & & & & & & & & & & & & & & \\ - & \ninetyb {\bf Alpha}\ninetye & \ninetyb {\bf ARM}\ninetye & \ninetyb {\bf ARM64}\ninetye & \ninetyb {\bf MIPS}\ninetye & \ninetyb {\bf MIPS64}\ninetye & \ninetyb {\bf SuperH}\ninetye & \ninetyb {\bf PowerPC}\ninetye & \ninetyb {\bf PowerPC64}\ninetye & \ninetyb {\bf m68k}\ninetye & \ninetyb {\bf m88k}\ninetye & \ninetyb {\bf x86}\ninetye & \ninetyb {\bf x64}\ninetye & \ninetyb {\bf Itanium}\ninetye & \ninetyb {\bf SPARC}\ninetye & \ninetyb {\bf SPARC64}\ninetye \\ -\hline -{\bf Windows family} & \marknotx & \markunkn & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknimp & \marknotx & \marknotx \\ -{\bf Linux} & \marknimp & \markcmpl & \markcmpl & \markunkn & \markunkn & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \markimpl & \markimpl \\ -{\bf Mac OS X / iOS / Darwin} & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx & \markcmpl & \markunkn & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx \\ -{\bf FreeBSD} & \marknimp & \markcmpl & \markcmpl & \markunkn & \markunkn & \marknimp & \markimpl & \markcmpl & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknimp & \markunkn & \markunkn \\ -{\bf NetBSD} & \marknimp & \markcmpl & \marknotx & \markcmpl & \markunkn & \marknimp & \markimpl & \marknotx & \marknimp & \marknimp & \markcmpl & \markcmpl & \marknimp & \markimpl & \markunkn \\ -{\bf OpenBSD} & \marknimp & \markcmpl & \marknotx & \markunkn & \markcmpl & \marknimp & \markunkn & \marknotx & \marknimp & \marknimp & \markcmpl & \markcmpl & \marknimp & \markimpl & \markimpl \\ -{\bf DragonFlyBSD} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx \\ -{\bf Solaris} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \markimpl & \markimpl \\ -{\bf Plan 9 / 9front} & \marknimp & \marknimp & \marknotx & \marknimp & \marknotx & \marknotx & \marknimp & \marknotx & \marknotx & \marknotx & \markcmpl & \marknimp & \marknotx & \marknimp & \marknotx \\ -{\bf Haiku / BeOS} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx \\ -{\bf Minix} & \marknotx & \markunkn & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx \\ -{\bf Playstation Portable} & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx \\ -{\bf Nintendo DS} & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx \\ +\begin{tabular}{r|*{3}{c!{\color{gray2}\vrule}}*{4}{c!{\color{gray2}\vrule}}*{10}{c!{\color{gray2}\vrule}}} + & \ninety{\bf Alpha} & \ninety{\bf ARM} & \ninety{\bf ARM64} & \multicolumn{2}{c!{\color{gray2}\vrule}}{\ninety{\bf MIPS}} & \multicolumn{2}{c!{\color{gray2}\vrule}}{\ninety{\bf MIPS64}} & \ninety{\bf SuperH} & \ninety{\bf PowerPC} & \ninety{\bf PowerPC64} & \ninety{\bf m68k} & \ninety{\bf m88k} & \ninety{\bf x86} & \ninety{\bf x64} & \ninety{\bf Itanium} & \ninety{\bf SPARC} & \ninety{\bf SPARC64} \\ + & & & & \ninety{\tiny EB} & \ninety{\tiny EL} & \ninety{\tiny EB} & \ninety{\tiny EL} & & & & & & & & & & \\ +\hline +{\bf Windows family} & \marknotx & \markunkn & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknimp & \marknotx & \marknotx \\ +{\bf Linux} & \marknimp & \markcmpl & \markcmpl & \markunkn & \markunkn & \markunkn & \markunkn & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \markimpl & \markimpl \\ +{\bf macOS / iOS / Darwin} & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markunkn & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx \\ +{\bf FreeBSD} & \marknimp & \markcmpl & \markcmpl & \markunkn & \markunkn & \markunkn & \markunkn & \marknimp & \markimpl & \markcmpl & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknimp & \markunkn & \markunkn \\ +{\bf NetBSD} & \marknimp & \markcmpl & \marknotx & \markunkn & \markcmpl & \markunkn & \markunkn & \marknimp & \markimpl & \marknotx & \marknimp & \marknimp & \markcmpl & \markcmpl & \marknimp & \markimpl & \markunkn \\ +{\bf OpenBSD} & \marknimp & \markcmpl & \marknotx & \markunkn & \markunkn & \markcmpl & \markunkn & \marknimp & \markunkn & \marknotx & \marknimp & \marknimp & \markcmpl & \markcmpl & \marknimp & \markimpl & \markimpl \\ +{\bf DragonFlyBSD} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \marknotx & \marknotx \\ +{\bf Solaris} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \markcmpl & \marknotx & \markimpl & \markimpl \\ +{\bf Plan 9 / 9front} & \marknimp & \marknimp & \marknotx & \marknimp & \marknimp & \marknotx & \marknotx & \marknotx & \marknimp & \marknotx & \marknotx & \marknotx & \markcmpl & \marknimp & \marknotx & \marknimp & \marknotx \\ +{\bf Haiku / BeOS} & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx \\ +{\bf Minix} & \marknotx & \markunkn & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx \\ +{\bf Playstation Portable} & \marknotx & \marknotx & \marknotx & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx \\ +{\bf Nintendo DS} & \marknotx & \markcmpl & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx & \marknotx \\ \end{tabular} \caption{Supported platforms}% \end{table}