annotate doc/ir.rst @ 400:0374c65cb437

Move compiler to seperate repo
author Windel Bouwman
date Mon, 14 Jul 2014 22:23:55 +0200
parents 0615b5308710
children
rev   line source
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
1
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
2
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
3 IR-code
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
4 =======
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
5
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
6 Front ends generate this IR-code. Backends transform it into machine code.
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
7
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
8 The IR-code is implemented in the ir package.
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
9
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
10 .. autoclass:: ppci.ir.Module
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
11
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
12 .. autoclass:: ppci.ir.Function
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
13
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
14 .. autoclass:: ppci.ir.Block
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
15
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
16 A block contains a sequence of statements.
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
17
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
18 .. autoclass:: ppci.ir.Statement
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
19
305
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
20 .. autoclass:: ppci.ir.Move
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
21
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
22 Jump instructions:
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
23
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
24 .. autoclass:: ppci.ir.Jump
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
25
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
26 .. autoclass:: ppci.ir.CJump
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
27
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
28 Statements can contain again expressions.
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
29
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
30 .. autoclass:: ppci.ir.Expression
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
31
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
32 .. autoclass:: ppci.ir.Const
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
33
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
34 .. autoclass:: ppci.ir.Binop
299
674789d9ff37 Added a doc
Windel Bouwman
parents:
diff changeset
35
305
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
36 .. autoclass:: ppci.ir.Call
304
fa99f36fabb5 Fix docs
Windel Bouwman
parents: 299
diff changeset
37
305
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
38 .. autoclass:: ppci.ir.Eseq
0615b5308710 Updated docs
Windel Bouwman
parents: 304
diff changeset
39