]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/doc/gccint/machine-descriptions.rst
sphinx: copy files from texi2rst-generated repository
[thirdparty/gcc.git] / gcc / doc / gccint / machine-descriptions.rst
1 ..
2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
5
6 .. index:: machine descriptions
7
8 .. _machine-desc:
9
10 Machine Descriptions
11 --------------------
12
13 A machine description has two parts: a file of instruction patterns
14 (:samp:`.md` file) and a C header file of macro definitions.
15
16 The :samp:`.md` file for a target machine contains a pattern for each
17 instruction that the target machine supports (or at least each instruction
18 that is worth telling the compiler about). It may also contain comments.
19 A semicolon causes the rest of the line to be a comment, unless the semicolon
20 is inside a quoted string.
21
22 See the next chapter for information on the C header file.
23
24 .. toctree::
25 :maxdepth: 2
26
27 machine-descriptions/overview-of-how-the-machine-description-is-used
28 machine-descriptions/everything-about-instruction-patterns
29 machine-descriptions/example-of-defineinsn
30 machine-descriptions/rtl-template
31 machine-descriptions/output-templates-and-operand-substitution
32 machine-descriptions/c-statements-for-assembler-output
33 machine-descriptions/predicates
34 machine-descriptions/operand-constraints
35 machine-descriptions/standard-pattern-names-for-generation
36 machine-descriptions/when-the-order-of-patterns-matters
37 machine-descriptions/interdependence-of-patterns
38 machine-descriptions/defining-jump-instruction-patterns
39 machine-descriptions/defining-looping-instruction-patterns
40 machine-descriptions/canonicalization-of-instructions
41 machine-descriptions/defining-rtl-sequences-for-code-generation
42 machine-descriptions/defining-how-to-split-instructions
43 machine-descriptions/including-patterns-in-machine-descriptions
44 machine-descriptions/machine-specific-peephole-optimizers
45 machine-descriptions/instruction-attributes
46 machine-descriptions/conditional-execution
47 machine-descriptions/rtl-templates-transformations
48 machine-descriptions/constant-definitions
49 machine-descriptions/iterators