(gcc.info)Machine Desc


Next: Target Macros Prev: RTL Up: Top

Machine Descriptions
********************

   A machine description has two parts: a file of instruction patterns
(`.md' file) and a C header file of macro definitions.

   The `.md' file for a target machine contains a pattern for each
instruction that the target machine supports (or at least each
instruction that is worth telling the compiler about).  It may also
contain comments.  A semicolon causes the rest of the line to be a
comment, unless the semicolon is inside a quoted string.

   See the next chapter for information on the C header file.

* Patterns
How to write instruction patterns.
* Example
An explained example of a `define_insn' pattern.
* RTL Template
The RTL template defines what insns match a pattern.
* Output Template
The output template says how to make assembler code from such an insn.
* Output Statement
For more generality, write C code to output the assembler code.
* Constraints
When not all operands are general operands.
* Standard Names
Names mark patterns to use for code generation.
* Pattern Ordering
When the order of patterns makes a difference.
* Dependent Patterns
Having one pattern may make you need another.
* Jump Patterns
Special considerations for patterns for jump insns.
* Insn Canonicalizations
Canonicalization of Instructions
* Peephole Definitions
Defining machine-specific peephole optimizations.
* Expander Definitions
Generating a sequence of several RTL insns for a standard operation.
* Insn Splitting
Splitting Instructions into Multiple Instructions
* Insn Attributes
Specifying the value of attributes for generated insns.

automatically generated by info2www