0
|
1 Right now there is no documentation for the GCC tree -> rtl interfaces
|
|
2 (or more generally the interfaces for adding new languages).
|
|
3
|
|
4 Such documentation would be of great benefit to the project. Until such
|
|
5 time as we can formally start documenting the interface this file will
|
|
6 serve as a repository for information on these interface and any incompatable
|
|
7 changes we've made.
|
|
8
|
|
9 2004-09-09:
|
|
10 In an effort to decrease execution time, single char tree code
|
|
11 classes were changed to enumerated values.
|
|
12
|
|
13 Old way:
|
|
14
|
|
15 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0)
|
|
16
|
|
17 New way:
|
|
18
|
|
19 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", tcc_declaration, 0)
|
|
20
|
|
21 2001-02-26:
|
|
22 A DECL_INITIAL of NULL_TREE or error_mark_node in a VAR_DECL is no longer
|
|
23 taken to signify a tentative definition which should not be emitted until
|
|
24 end-of-file. Frontends which want that behavior should set
|
|
25 DECL_DEFER_OUTPUT before calling rest_of_decl_compilation.
|
|
26
|
|
27 Feb 1, 1998:
|
|
28
|
|
29 GCC used to store structure sizes & offsets to elements as bitsize
|
|
30 quantities. This causes problems because a structure can only be
|
|
31 (target memsize / 8) bytes long (this may effect arrays too). This
|
|
32 is particularly problematical on machines with small address spaces.
|
|
33
|
|
34 So:
|
|
35
|
|
36 All trees that represent sizes in bits should have a TREE_TYPE of
|
|
37 bitsizetype (rather than sizetype).
|
|
38
|
|
39 Accordingly, when such values are computed / initialized, care has to
|
|
40 be takes to use / compute the proper type.
|
|
41
|
|
42 When a size in bits is converted into a size in bytes, which is expressed
|
|
43 in trees, care should be taken to change the tree's type again to sizetype.
|
|
44
|
|
45 ?? 1997:
|
|
46
|
|
47 In an effort to decrease cache thrashing and useless loads we've changed the
|
|
48 third argument to the DEFTREECODE macro to be a single char. This will
|
|
49 affect languages that defined their own tree codes (usually in a .def file).
|
|
50
|
|
51 Old way:
|
|
52
|
|
53 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", "d", 0)
|
|
54
|
|
55 New way:
|
|
56
|
|
57 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0)
|