1 2 3 4 5 6 7 8 9 10 11
12 13 14 15
16
17 /*!
18 * ======== C62 ========
19 * TI C62 default runtime model (little endian)
20 */
21 metaonly module C62 inherits ti.targets.ITarget {
22 override readonly config string name = "C62";
23 override readonly config string suffix = "62";
24 override readonly config string isa = "62";
25 override readonly config xdc.bld.ITarget.Model model = {
26 endian: "little"
27 };
28 override readonly config string rts = "ti.targets.rts6000";
29 override config string platform = "ti.platforms.sim6xxx:TMS320C6211";
30
31 override readonly config xdc.bld.ITarget2.Command ar = {
32 cmd: "ar6x",
33 opts: "rq"
34 };
35
36 override readonly config xdc.bld.ITarget2.Command cc = {
37 cmd: "cl6x -c",
38 opts: ""
39 };
40
41 override readonly config xdc.bld.ITarget2.Command asm = {
42 cmd: "cl6x -c",
43 opts: ""
44 };
45
46 override readonly config xdc.bld.ITarget2.Command lnk = {
47 cmd: "lnk6x",
48 opts: ""
49 };
50
51 override readonly config xdc.bld.ITarget2.Command vers = {
52 cmd: "cl6x",
53 opts: "--compiler_revision"
54 };
55
56 /*!
57 * ======== asmOpts ========
58 * User configurable assembler options.
59 *
60 * Defaults:
61 * @p(dlist)
62 * -`-qq`
63 * super quiet mode
64 */
65 override config xdc.bld.ITarget2.Options asmOpts = {
66 prefix: "-qq",
67 suffix: ""
68 };
69
70 /*!
71 * ======== ccOpts ========
72 * User configurable compiler options.
73 *
74 * Defaults:
75 * @p(dlist)
76 * -`-qq`
77 * super quiet mode
78 * -`-pdsw225`
79 * generate a warning for implicitly declared functions; i.e.,
80 * functions without prototypes
81 */
82 override config xdc.bld.ITarget2.Options ccOpts = {
83 prefix: "-qq -pdsw225",
84 suffix: ""
85 };
86
87 /*!
88 * ======== lnkOpts ========
89 * User configurable linker options.
90 *
91 * Defaults:
92 * @p(dlist)
93 * -`-w`
94 * Display linker warnings
95 * -`-q`
96 * Quite run
97 * -`-u`
98 * Place unresolved external symbol into symbol table
99 * -`-c`
100 * ROM autoinitialization model
101 * -`-m`
102 * create a map file
103 * -`-l`
104 * archive library file as linker input
105 */
106 override config xdc.bld.ITarget2.Options lnkOpts = {
107 prefix: "-w -q -u _c_int00",
108 suffix: "-c -m $(XDCCFGDIR)/$@.map -l $(rootDir)/lib/rts6200.lib"
109 };
110
111 override config string includeOpts = "-I$(rootDir)/include";
112
113 final override readonly config string sectMap[string] = [
114 [".text", "code"],
115 [".stack", "stack"],
116 [".bss", "data"],
117 [".cinit", "data"],
118 [".pinit", "data"],
119 [".const", "data"],
120 [".data", "data"],
121 [".switch", "data"],
122 [".sysmem", "data"],
123 [".far", "data"],
124 [".args", "data"],
125 [".cio", "data"],
126 ];
127
128 override readonly config xdc.bld.ITarget.StdTypes stdTypes = {
129 t_IArg : { size: 4, align: 4 },
130 t_Char : { size: 1, align: 1 },
131 t_Double : { size: 8, align: 8 },
132 t_Float : { size: 4, align: 4 },
133 t_Fxn : { size: 4, align: 4 },
134 t_Int : { size: 4, align: 4 },
135 t_Int8 : { size: 1, align: 1 },
136 t_Int16 : { size: 2, align: 2 },
137 t_Int32 : { size: 4, align: 4 },
138 t_Int40 : { size: 8, align: 8 },
139 t_Int64 : { size: 8, align: 8 },
140 t_Long : { size: 8, align: 8 },
141 t_LDouble : { size: 8, align: 8 },
142 t_LLong : { size: 8, align: 8 },
143 t_Ptr : { size: 4, align: 4 },
144 t_Short : { size: 2, align: 2 },
145 t_Size : { size: 4, align: 4 },
146 };
147
148 override readonly config Int bitsPerChar = 8;
149 }
150
151 152 153 154
155