Navigation
index
next
|
previous
|
LLVM Home
|
Documentation
»
Architecture & Platform Information for Compiler Writers
¶
Hardware
ARM
AArch64
Itanium (ia64)
MIPS
PowerPC
IBM - Official manuals and docs
Other documents, collections, notes
SPARC
X86
AMD - Official manuals and docs
Intel - Official manuals and docs
Other x86-specific information
Other relevant lists
ABI
Linux
OS X
NVPTX
Miscellaneous Resources
Note
This document is a work-in-progress. Additions and clarifications are welcome.
Hardware
¶
ARM
¶
ARM documentation
(
Processor Cores
Cores)
ABI
ARM C Language Extensions
AArch64
¶
ARMv8 Instruction Set Overview
ARM C Language Extensions
Itanium (ia64)
¶
Itanium documentation
MIPS
¶
MIPS Processor Architecture
PowerPC
¶
IBM - Official manuals and docs
¶
Power Instruction Set Architecture, Versions 2.03 through 2.06 (authentication required, free sign-up)
PowerPC Compiler Writer’s Guide
Intro to PowerPC Architecture
PowerPC Processor Manuals (embedded)
Various IBM specifications and white papers
IBM AIX/5L for POWER Assembly Reference
Other documents, collections, notes
¶
PowerPC ABI documents
PowerPC64 alignment of long doubles (from GCC)
Long branch stubs for powerpc64-linux (from binutils)
SPARC
¶
SPARC resources
SPARC standards
X86
¶
AMD - Official manuals and docs
¶
AMD processor manuals
X86-64 ABI
Intel - Official manuals and docs
¶
Intel 64 and IA-32 manuals
Intel Itanium documentation
Other x86-specific information
¶
Calling conventions for different C++ compilers and operating systems
Other relevant lists
¶
GCC reading list
ABI
¶
Linux
¶
PowerPC 64-bit ELF ABI Supplement
Procedure Call Standard for the AArch64 Architecture
ELF for the ARM 64-bit Architecture (AArch64)
OS X
¶
Mach-O Runtime Architecture
Notes on Mach-O ABI
NVPTX
¶
CUDA Documentation
includes the PTX ISA and Driver API documentation
Miscellaneous Resources
¶
Executable File Format library
GCC prefetch project
page has a good survey of the prefetching capabilities of a variety of modern processors.
Navigation
index
next
|
previous
|
LLVM Home
|
Documentation
»