1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
6 <title>Architecture/platform information for compiler writers</title>
7 <link rel="stylesheet" href="llvm.css" type="text/css">
10 <div class="doc_title">
11 Architecture/platform information for compiler writers
14 <div class="doc_warning">
15 <p>Note: This document is a work-in-progress. Additions and clarifications
20 <li><a href="#hw">Hardware</a>
22 <li><a href="#alpha">Alpha</a></li>
23 <li><a href="#arm">ARM</a></li>
24 <li><a href="#ia64">Itanium</a></li>
25 <li><a href="#mips">MIPS</a></li>
26 <li><a href="#ppc">PowerPC</a></li>
27 <li><a href="#sparc">SPARC</a></li>
28 <li><a href="#x86">X86</a></li>
29 <li><a href="#other">Other lists</a></li>
31 <li><a href="#abi">Application Binary Interface (ABI)</a>
33 <li><a href="#linux">Linux</a></li>
34 <li><a href="#osx">OS X</a></li>
36 <li><a href="#misc">Miscellaneous resources</a></li>
39 <div class="doc_author">
40 <p>Compiled by <a href="http://misha.brukman.net">Misha Brukman</a></p>
43 <!-- *********************************************************************** -->
44 <div class="doc_section"><a name="hw">Hardware</a></div>
45 <!-- *********************************************************************** -->
47 <!-- ======================================================================= -->
48 <div class="doc_subsection"><a name="alpha">Alpha</a></div>
50 <div class="doc_text">
53 href="http://ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html">Alpha manuals</a>
58 <!-- ======================================================================= -->
59 <div class="doc_subsection"><a name="arm">ARM</a></div>
61 <div class="doc_text">
63 <li><a href="http://www.arm.com/documentation/">ARM documentation</a>
64 (<a href="http://www.arm.com/documentation/ARMProcessor_Cores/">Processor
69 <!-- ======================================================================= -->
70 <div class="doc_subsection"><a name="ia64">Itanium (ia64)</a></div>
72 <div class="doc_text">
75 href="http://developer.intel.com/design/itanium2/documentation.htm">Itanium documentation</a>
80 <!-- ======================================================================= -->
81 <div class="doc_subsection"><a name="mips">MIPS</a></div>
83 <div class="doc_text">
86 href="http://mips.com/content/Documentation/MIPSDocumentation/ProcessorArchitecture/doclibrary">MIPS
87 Processor Architecture</a></li>
91 <!-- ======================================================================= -->
92 <div class="doc_subsection"><a name="ppc">PowerPC</a></div>
94 <!-- _______________________________________________________________________ -->
95 <div class="doc_subsubsection">IBM - Official manuals and docs</div>
97 <div class="doc_text">
101 href="http://www-106.ibm.com/developerworks/eserver/articles/archguide.html">PowerPC
102 Architecture Book</a>
105 href="http://www-106.ibm.com/developerworks/eserver/pdfs/archpub1.pdf">PowerPC
106 User Instruction Set Architecture</a></li>
108 href="http://www-106.ibm.com/developerworks/eserver/pdfs/archpub2.pdf">PowerPC
109 Virtual Environment Architecture</a></li>
111 href="http://www-106.ibm.com/developerworks/eserver/pdfs/archpub3.pdf">PowerPC
112 Operating Environment Architecture</a></li>
115 href="http://www-3.ibm.com/chips/techlib/techlib.nsf/techdocs/852569B20050FF7785256996007558C6">PowerPC
116 Compiler Writer's Guide</a></li>
118 href="http://www-3.ibm.com/chips/techlib/techlib.nsf/products/PowerPC">PowerPC
119 Processor Manuals</a></li>
121 href="http://www-106.ibm.com/developerworks/linux/library/l-powarch/">Intro to
122 PowerPC architecture</a></li>
123 <li><a href="http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/aixassem/alangref/alangreftfrm.htm">IBM AIX/5L for POWER Assembly reference</a></li>
128 <!-- _______________________________________________________________________ -->
129 <div class="doc_subsubsection">Other documents, collections, notes</div>
131 <div class="doc_text">
134 <li><a href="http://penguinppc.org/dev/#library">PowerPC ABI documents</a></li>
135 <li><a href="http://gcc.gnu.org/ml/gcc-patches/2003-09/msg00997.html">PowerPC64
136 alignment of long doubles (from GCC)</a></li>
137 <li><a href="http://sources.redhat.com/ml/binutils/2002-04/msg00573.html">Long
138 branch stubs for powerpc64-linux (from binutils)</a></li>
143 <!-- ======================================================================= -->
144 <div class="doc_subsection"><a name="sparc">SPARC</a></div>
146 <div class="doc_text">
149 <li><a href="http://www.sparc.org/resource.htm">SPARC resources</a></li>
150 <li><a href="http://www.sparc.org/standards.html">SPARC standards</a></li>
155 <!-- ======================================================================= -->
156 <div class="doc_subsection"><a name="x86">X86</a></div>
158 <!-- _______________________________________________________________________ -->
159 <div class="doc_subsubsection">AMD - Official manuals and docs</div>
161 <div class="doc_text">
164 href="http://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_739,00.html">AMD processor manuals</a></li>
165 <li><a href="http://www.x86-64.org/documentation">X86-64 ABI</a></li>
169 <!-- _______________________________________________________________________ -->
170 <div class="doc_subsubsection">Intel - Official manuals and docs</div>
172 <div class="doc_text">
175 href="http://developer.intel.com/design/pentium4/manuals/index_new.htm">IA-32
178 href="http://www.intel.com/design/itanium/documentation.htm?iid=ipp_srvr_proc_itanium2+techdocs">Intel
179 Itanium documentation</a></li>
183 <!-- _______________________________________________________________________ -->
184 <div class="doc_subsubsection">Other x86-specific information</div>
186 <div class="doc_text">
188 <li><a href="http://www.agner.org/assem/calling_conventions.pdf">Calling
189 conventions for different C++ compilers and operating systems</a></li>
193 <!-- ======================================================================= -->
194 <div class="doc_subsection"><a name="other">Other relevant lists</a></div>
196 <div class="doc_text">
199 <li><a href="http://gcc.gnu.org/readings.html">GCC reading list</a></li>
204 <!-- *********************************************************************** -->
205 <div class="doc_section"><a name="abi">ABI</a></div>
206 <!-- *********************************************************************** -->
208 <!-- ======================================================================= -->
209 <div class="doc_subsection"><a name="linux">Linux</a></div>
211 <div class="doc_text">
213 <li><a href="http://www.linuxbase.org/spec/ELF/ppc64/">PowerPC 64-bit ELF ABI
218 <!-- ======================================================================= -->
219 <div class="doc_subsection"><a name="osx">OS X</a></div>
221 <div class="doc_text">
224 href="http://developer.apple.com/documentation/Darwin/RuntimeArchitecture-date.html">Mach-O
225 Runtime Architecture</a></li>
226 <li><a href="http://www.unsanity.org/archives/000044.php">Notes on Mach-O
232 <!-- *********************************************************************** -->
233 <div class="doc_section"><a name="misc">Miscellaneous resources</a></div>
234 <!-- *********************************************************************** -->
238 href="http://www.nondot.org/sabre/os/articles/ExecutableFileFormats/">Executable
239 File Format library</a></li>
240 <li><a href="http://gcc.gnu.org/projects/prefetch.html">GCC prefetch project</a>
241 page has a good survey of the prefetching capabilities of a variety of modern
245 <!-- *********************************************************************** -->
249 <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
250 src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"></a>
251 <a href="http://validator.w3.org/check/referer"><img
252 src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a>
254 <a href="http://misha.brukman.net">Misha Brukman</a><br>
255 <a href="http://llvm.cs.uiuc.edu">LLVM Compiler Infrastructure</a><br>
256 Last modified: $Date$