1 2 3 4 5 6 7 8 9 10 11
12 13 14 15
16
17 import xdc.bld.ITarget2;
18
19 /*!
20 * ======== C64T ========
21 * TI C64T default runtime model (little endian)
22 */
23 metaonly module C64T inherits ti.targets.ITarget {
24 override readonly config string name = "C64T";
25 override readonly config string suffix = "64T";
26 override readonly config string isa = "64T";
27 override readonly config xdc.bld.ITarget.Model model = {
28 endian: "little"
29 };
30 override readonly config xdc.bld.ITarget.Module base = ti.targets.C62;
31
32 override readonly config string rts = "ti.targets.rts6000";
33 override config string platform = "ti.platforms.sdp4430";
34 override readonly config string stdInclude = "ti/targets/std.h";
35
36 override readonly config ITarget2.Command ar = {
37 cmd: "ar6x",
38 opts: "rq"
39 };
40
41 override readonly config ITarget2.Command cc = {
42 cmd: "cl6x -c",
43 opts: "-mv=tesla --abi=coffabi"
44 };
45
46 override readonly config ITarget2.Command vers = {
47 cmd: "cl6x",
48 opts: "--compiler_revision"
49 };
50
51 override readonly config ITarget2.Command asm = {
52 cmd: "cl6x -c",
53 opts: "-mv=tesla --abi=coffabi"
54 };
55
56 override readonly config ITarget2.Command lnk = {
57 cmd: "lnk6x",
58 opts: "--abi=coffabi"
59 };
60
61 /*!
62 * ======== asmOpts ========
63 * User configurable assembler options.
64 *
65 * Defaults:
66 * @p(dlist)
67 * -`-qq`
68 * super quiet mode
69 */
70 override config ITarget2.Options asmOpts = {
71 prefix: "-qq",
72 suffix: ""
73 };
74
75 /*!
76 * ======== ccOpts ========
77 * User configurable compiler options.
78 *
79 * Defaults:
80 * @p(dlist)
81 * -`-qq`
82 * super quiet mode
83 * -`-pdsw225`
84 * generate a warning for implicitly declared functions; i.e.,
85 * functions without prototypes
86 */
87 override config ITarget2.Options ccOpts = {
88 prefix: "-qq -pdsw225",
89 suffix: ""
90 };
91
92 /*!
93 * ======== ccConfigOpts ========
94 * User configurable compiler options for the generated config C file.
95 *
96 * -mo places all functions into subsections
97 * --no_compress helps with compile time with no real difference in
98 * code size since the generated config.c is mostly data and small
99 * function stubs.
100 */
101 override config ITarget2.Options ccConfigOpts = {
102 prefix: "$(ccOpts.prefix) -mo --no_compress",
103 suffix: "$(ccOpts.suffix)"
104 };
105
106 override config string includeOpts = "-I$(rootDir)/include";
107
108 final override readonly config string sectMap[string] =
109 ti.targets.C62.sectMap;
110
111 final override readonly config Bool splitMap[string] =
112 ti.targets.C62.splitMap;
113
114 override readonly config xdc.bld.ITarget.StdTypes stdTypes =
115 ti.targets.C62.stdTypes;
116
117 override readonly config Int bitsPerChar =
118 ti.targets.C62.bitsPerChar;
119 }
120 121 122 123
124