• Using as
  • Overview
    • Structure of this Manual
    • The GNU Assembler
    • Object File Formats
    • Command Line
    • Input Files
    • Output (Object) File
    • Error and Warning Messages
  • Command-Line Options
    • Enable Listings: -a[cdghlns]
    • --alternate
    • -D
    • Work Faster: -f
    • .include Search Path: -I path
    • Difference Tables: -K
    • Include Local Symbols: -L
    • Configuring listing output: --listing
    • Assemble in MRI Compatibility Mode: -M
    • Dependency Tracking: --MD
    • Name the Object File: -o
    • Join Data and Text Sections: -R
    • Display Assembly Statistics: --statistics
    • Compatible Output: --traditional-format
    • Announce Version: -v
    • Control Warnings: -W, --warn, --no-warn, --fatal-warnings
    • Generate Object File in Spite of Errors: -Z
  • Syntax
    • Preprocessing
    • Whitespace
    • Comments
    • Symbols
    • Statements
    • Constants
      • Character Constants
        • Strings
        • Characters
      • Number Constants
        • Integers
        • Bignums
        • Flonums
  • Sections and Relocation
    • Background
    • Linker Sections
    • Assembler Internal Sections
    • Sub-Sections
    • bss Section
  • Symbols
    • Labels
    • Giving Symbols Other Values
    • Symbol Names
    • The Special Dot Symbol
    • Symbol Attributes
      • Value
      • Type
      • Symbol Attributes: a.out
        • Descriptor
        • Other
      • Symbol Attributes for COFF
        • Primary Attributes
        • Auxiliary Attributes
      • Symbol Attributes for SOM
  • Expressions
    • Empty Expressions
    • Integer Expressions
      • Arguments
      • Operators
      • Prefix Operator
      • Infix Operators
  • Assembler Directives
    • .abort
    • .ABORT (COFF)
    • .align abs-expr, abs-expr, abs-expr
    • .ascii "string"...
    • .asciz "string"...
    • .balign[wl] abs-expr, abs-expr, abs-expr
    • .byte expressions
    • .comm symbol , length
    • .cfi_startproc [simple]
    • .cfi_endproc
    • .cfi_personality encoding [, exp]
    • .cfi_lsda encoding [, exp]
    • .cfi_def_cfa register, offset
    • .cfi_def_cfa_register register
    • .cfi_def_cfa_offset offset
    • .cfi_adjust_cfa_offset offset
    • .cfi_offset register, offset
    • .cfi_rel_offset register, offset
    • .cfi_register register1, register2
    • .cfi_restore register
    • .cfi_undefined register
    • .cfi_same_value register
    • .cfi_remember_state,
    • .cfi_return_column register
    • .cfi_signal_frame
    • .cfi_window_save
    • .cfi_escape expression[, ...]
    • .cfi_val_encoded_addr register, encoding, label
    • .file fileno filename
    • .loc fileno lineno [column] [options]
    • .loc_mark_labels enable
    • .data subsection
    • .def name
    • .desc symbol, abs-expression
    • .dim
    • .double flonums
    • .eject
    • .else
    • .elseif
    • .end
    • .endef
    • .endfunc
    • .endif
    • .equ symbol, expression
    • .equiv symbol, expression
    • .eqv symbol, expression
    • .err
    • .error
    • .exitm
    • .extern
    • .fail expression
    • .file string
    • .fill repeat , size , value
    • .float flonums
    • .func name[,label]
    • .global symbol, .globl symbol
    • .gnu_attribute tag,value
    • .hidden names
    • .hword expressions
    • .ident
    • .if absolute expression
    • .incbin "file"[,skip[,count]]
    • .include "file"
    • .int expressions
    • .internal names
    • .irp symbol,values...
    • .irpc symbol,values...
    • .lcomm symbol , length
    • .lflags
    • .line line-number
    • .linkonce [type]
    • .ln line-number
    • .mri val
    • .list
    • .long expressions
    • .macro
    • .altmacro
    • .noaltmacro
    • .nolist
    • .octa bignums
    • .org new-lc , fill
    • .p2align[wl] abs-expr, abs-expr, abs-expr
    • .previous
    • .popsection
    • .print string
    • .protected names
    • .psize lines , columns
    • .purgem name
    • .pushsection name [, subsection] [, "flags"[, @type[,arguments]]]
    • .quad bignums
    • .reloc offset, reloc_name[, expression]
    • .rept count
    • .sbttl "subheading"
    • .scl class
    • .section name
    • .set symbol, expression
    • .short expressions
    • .single flonums
    • .size
    • .sleb128 expressions
    • .skip size , fill
    • .space size , fill
    • .stabd, .stabn, .stabs
    • .string "str", .string8 "str", .string16
    • .struct expression
    • .subsection name
    • .symver
    • .tag structname
    • .text subsection
    • .title "heading"
    • .type
    • .uleb128 expressions
    • .val addr
    • .version "string"
    • .vtable_entry table, offset
    • .vtable_inherit child, parent
    • .warning "string"
    • .weak names
    • .weakref alias, target
    • .word expressions
    • Deprecated Directives
  • Object Attributes
    • gnu Object Attributes
      • Common gnu attributes
      • MIPS Attributes
      • PowerPC Attributes
    • Defining New Object Attributes
  • Machine Dependent Features
    • Alpha Dependent Features
      • Notes
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Relocations
      • Floating Point
      • Alpha Assembler Directives
      • Opcodes
    • ARC Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
      • Floating Point
      • ARC Machine Directives
      • Opcodes
    • ARM Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
      • Floating Point
        • ARM relocation generation
      • ARM Machine Directives
      • Opcodes
      • Mapping Symbols
      • Unwinding
    • AVR Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Relocatable Expression Modifiers
      • Opcodes
    • AVR32 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Symbol references
        • Symbol modifiers
      • Directives
      • Opcodes
    • Blackfin Dependent Features
      • Syntax
      • Directives
    • CR16 Dependent Features
      • CR16 Operand Qualifiers
    • CRIS Dependent Features
      • Command-line Options
      • Instruction expansion
      • Symbols
      • Syntax
        • Special Characters
        • Symbols in position-independent code
        • Register names
        • Assembler Directives
    • D10V Dependent Features
      • D10V Options
      • Syntax
        • Size Modifiers
        • Sub-Instructions
        • Special Characters
        • Register Names
        • Addressing Modes
        • @WORD Modifier
      • Floating Point
      • Opcodes
    • D30V Dependent Features
      • D30V Options
      • Syntax
        • Size Modifiers
        • Sub-Instructions
        • Special Characters
        • Guarded Execution
        • Register Names
        • Addressing Modes
      • Floating Point
      • Opcodes
    • H8/300 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Addressing Modes
      • Floating Point
      • H8/300 Machine Directives
      • Opcodes
    • HPPA Dependent Features
      • Notes
      • Options
      • Syntax
      • Floating Point
      • HPPA Assembler Directives
      • Opcodes
    • ESA/390 Dependent Features
      • Notes
      • Options
      • Syntax
      • Floating Point
      • ESA/390 Assembler Directives
      • Opcodes
    • 80386 Dependent Features
      • Options
      • x86 specific Directives
      • AT&T Syntax versus Intel Syntax
      • Instruction Naming
      • AT&T Mnemonic versus Intel Mnemonic
      • Register Naming
      • Instruction Prefixes
      • Memory References
      • Handling of Jump Instructions
      • Floating Point
      • Intel's MMX and AMD's 3DNow! SIMD Operations
      • Writing 16-bit Code
      • AT&T Syntax bugs
      • Specifying CPU Architecture
      • Notes
    • Intel i860 Dependent Features
      • i860 Notes
      • i860 Command-line Options
        • SVR4 compatibility options
        • Other options
      • i860 Machine Directives
      • i860 Opcodes
        • Other instruction support (pseudo-instructions)
    • Intel 80960 Dependent Features
      • i960 Command-line Options
      • Floating Point
      • i960 Machine Directives
      • i960 Opcodes
        • callj
        • Compare-and-Branch
    • IA-64 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • IA-64 Processor-Status-Register (PSR) Bit Names
      • Opcodes
    • IP2K Dependent Features
      • IP2K Options
    • M32C Dependent Features
      • M32C Options
      • Symbolic Operand Modifiers
    • M32R Dependent Features
      • M32R Options
      • M32R Directives
      • M32R Warnings
    • M680x0 Dependent Features
      • M680x0 Options
      • Syntax
      • Motorola Syntax
      • Floating Point
      • 680x0 Machine Directives
      • Opcodes
        • Branch Improvement
        • Special Characters
    • M68HC11 and M68HC12 Dependent Features
      • M68HC11 and M68HC12 Options
      • Syntax
      • Symbolic Operand Modifiers
      • Assembler Directives
      • Floating Point
      • Opcodes
        • Branch Improvement
    • MIPS Dependent Features
      • Assembler options
      • MIPS ECOFF object code
      • Directives for debugging information
      • Directives to override the size of symbols
      • Directives to override the ISA level
      • Directives for extending MIPS 16 bit instructions
      • Directive to mark data as an instruction
      • Directives to save and restore options
      • Directives to control generation of MIPS ASE instructions
      • Directives to override floating-point options
    • MMIX Dependent Features
      • Command-line Options
      • Instruction expansion
      • Syntax
        • Special Characters
        • Symbols
        • Register names
        • Assembler Directives
      • Differences to mmixal
    • MSP 430 Dependent Features
      • Options
      • Syntax
        • Macros
        • Special Characters
        • Register Names
        • Assembler Extensions
      • Floating Point
      • MSP 430 Machine Directives
      • Opcodes
      • Profiling Capability
    • PDP-11 Dependent Features
      • Options
        • Code Generation Options
        • Instruction Set Extension Options
        • CPU Model Options
        • Machine Model Options
      • Assembler Directives
      • PDP-11 Assembly Language Syntax
      • Instruction Naming
      • Synthetic Instructions
    • picoJava Dependent Features
      • Options
    • PowerPC Dependent Features
      • Options
      • PowerPC Assembler Directives
    • Renesas / SuperH SH Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Addressing Modes
      • Floating Point
      • SH Machine Directives
      • Opcodes
    • SuperH SH64 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Addressing Modes
      • SH64 Machine Directives
      • Opcodes
    • SPARC Dependent Features
      • Options
      • Enforcing aligned data
      • Sparc Syntax
        • Special Characters
        • Register Names
        • Constants
        • Relocations
        • Size Translations
      • Floating Point
      • Sparc Machine Directives
    • TIC54X Dependent Features
      • Options
      • Blocking
      • Environment Settings
      • Constants Syntax
      • String Substitution
      • Local Labels
      • Math Builtins
      • Extended Addressing
      • Directives
      • Macros
      • Memory-mapped Registers
    • Z80 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Case Sensitivity
      • Floating Point
      • Z80 Assembler Directives
      • Opcodes
    • Z8000 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
        • Addressing Modes
      • Assembler Directives for the Z8000
      • Opcodes
    • VAX Dependent Features
      • VAX Command-Line Options
      • VAX Floating Point
      • Vax Machine Directives
      • VAX Opcodes
      • VAX Branch Improvement
      • VAX Operands
      • Not Supported on VAX
    • v850 Dependent Features
      • Options
      • Syntax
        • Special Characters
        • Register Names
      • Floating Point
      • V850 Machine Directives
      • Opcodes
    • Xtensa Dependent Features
      • Command Line Options
      • Assembler Syntax
        • Opcode Names
        • Register Names
      • Xtensa Optimizations
        • Using Density Instructions
        • Automatic Instruction Alignment
      • Xtensa Relaxation
        • Conditional Branch Relaxation
        • Function Call Relaxation
        • Other Immediate Field Relaxation
      • Directives
        • schedule
        • longcalls
        • transform
        • literal
        • literal_position
        • literal_prefix
        • absolute-literals
  • Reporting Bugs
    • Have You Found a Bug?
    • How to Report Bugs
  • Acknowledgements