summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2018-02-23 11:23:35 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-03 08:35:25 +0000
commit35549a7a45ef63f87f37b0a45a0a9fe1c2c59af0 (patch)
tree0f8de2303498f383f1f0f244ebea64d1a3f50ade /documentation/dev-manual
parent505a31c1a17bd6aad48864f947d0e79ce7940897 (diff)
downloadpoky-35549a7a45ef63f87f37b0a45a0a9fe1c2c59af0.tar.gz
dev-manual, concepts-manual: Moved x32 section
I had split up the section on x32 into a concept piece and a "how-to" piece earlier in order to satisfy outside pressure to isolate all "how-to" stuff in the dev-manual. Doing this put a "conceptual" blurb about x32 in the new concepts-manual. It has been decided that x32 is not a concept. It really does not fit into the ref-manual either. So, I have re-combined the intro blurb of the x32 stuff back as the beginning piece of the "Usingt x32 psABI" section in the dev-manual. (From yocto-docs rev: 6e8240cc1a90a8d78ff456d3138c525eceea3ee3) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual')
-rw-r--r--documentation/dev-manual/dev-manual-common-tasks.xml56
1 files changed, 51 insertions, 5 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml
index 60af73d0ed..20a38322b1 100644
--- a/documentation/dev-manual/dev-manual-common-tasks.xml
+++ b/documentation/dev-manual/dev-manual-common-tasks.xml
@@ -4799,11 +4799,57 @@
4799 is a native 32-bit processor-specific ABI for 4799 is a native 32-bit processor-specific ABI for
4800 <trademark class='registered'>Intel</trademark> 64 (x86-64) 4800 <trademark class='registered'>Intel</trademark> 64 (x86-64)
4801 architectures. 4801 architectures.
4802 <note> 4802 An ABI defines the calling conventions between functions in a
4803 For more information on x32 psABI, see the 4803 processing environment.
4804 "<ulink url='&YOCTO_DOCS_CM_URL;#x32'>x32 psABI</ulink>" 4804 The interface determines what registers are used and what the
4805 section in the Yocto Project Concepts Manual. 4805 sizes are for various C data types.
4806 </note> 4806 </para>
4807
4808 <para>
4809 Some processing environments prefer using 32-bit applications even
4810 when running on Intel 64-bit platforms.
4811 Consider the i386 psABI, which is a very old 32-bit ABI for Intel
4812 64-bit platforms.
4813 The i386 psABI does not provide efficient use and access of the
4814 Intel 64-bit processor resources, leaving the system underutilized.
4815 Now consider the x86_64 psABI.
4816 This ABI is newer and uses 64-bits for data sizes and program
4817 pointers.
4818 The extra bits increase the footprint size of the programs,
4819 libraries, and also increases the memory and file system size
4820 requirements.
4821 Executing under the x32 psABI enables user programs to utilize CPU
4822 and system resources more efficiently while keeping the memory
4823 footprint of the applications low.
4824 Extra bits are used for registers but not for addressing mechanisms.
4825 </para>
4826
4827 <para>
4828 The Yocto Project supports the final specifications of x32 psABI
4829 as follows:
4830 <itemizedlist>
4831 <listitem><para>
4832 You can create packages and images in x32 psABI format on
4833 x86_64 architecture targets.
4834 </para></listitem>
4835 <listitem><para>
4836 You can successfully build recipes with the x32 toolchain.
4837 </para></listitem>
4838 <listitem><para>
4839 You can create and boot
4840 <filename>core-image-minimal</filename> and
4841 <filename>core-image-sato</filename> images.
4842 </para></listitem>
4843 <listitem><para>
4844 RPM Package Manager (RPM) support exists for x32 binaries.
4845 </para></listitem>
4846 <listitem><para>
4847 Support for large images exists.
4848 </para></listitem>
4849 </itemizedlist>
4850 </para>
4851
4852 <para>
4807 To use the x32 psABI, you need to edit your 4853 To use the x32 psABI, you need to edit your
4808 <filename>conf/local.conf</filename> configuration file as 4854 <filename>conf/local.conf</filename> configuration file as
4809 follows: 4855 follows: