1 2 3 4 5 6 7 8 9 10 11
12
13 14 15 16
17
18 /*!
19 * ======== C64T_big_endian ========
20 */
21 metaonly module C64T_big_endian inherits ITarget {
22 override readonly config string name = "C64T_big_endian";
23 override readonly config string suffix = "e64Te";
24 override readonly config string isa = "64T";
25 override readonly config xdc.bld.ITarget.Model model = {
26 endian: "big",
27 shortEnums: true
28 };
29 override readonly config xdc.bld.ITarget.Module base = ti.targets.C62;
30
31 override readonly config string rts = "ti.targets.rts6000";
32 override config string platform = "ti.platforms.qtTesla";
33
34 override readonly config ti.targets.ITarget.Command ar = {
35 cmd: "ar6x",
36 opts: "rq"
37 };
38
39 override readonly config ti.targets.ITarget.Command cc = {
40 cmd: "cl6x -c",
41 opts: "-me -mv=tesla --abi=elfabi"
42 };
43
44 override readonly config ti.targets.ITarget.Command vers = {
45 cmd: "cl6x",
46 opts: "-version"
47 };
48
49 override readonly config ti.targets.ITarget.Command asm = {
50 cmd: "cl6x -c",
51 opts: "-me -mv=tesla --abi=elfabi"
52 };
53
54 override readonly config ti.targets.ITarget.Command lnk = {
55 cmd: "lnk6x",
56 opts: "--abi=elfabi"
57 };
58
59 /*!
60 * ======== asmOpts ========
61 * User configurable assembler options.
62 *
63 * Defaults:
64 * @p(dlist)
65 * -`-qq`
66 * super quiet mode
67 */
68 override config ti.targets.ITarget.Options asmOpts = {
69 prefix: "-qq",
70 suffix: ""
71 };
72
73 /*!
74 * ======== ccOpts ========
75 * User configurable compiler options.
76 *
77 * Defaults:
78 * @p(dlist)
79 * -`-qq`
80 * super quiet mode
81 * -`-pdsw225`
82 * generate a warning for implicitly declared functions; i.e.,
83 * functions without prototypes
84 */
85 override config ti.targets.ITarget.Options ccOpts = {
86 prefix: "-qq -pdsw225",
87 suffix: ""
88 };
89
90 /*!
91 * ======== ccConfigOpts ========
92 * User configurable compiler options for the generated config C file.
93 *
94 * -mo places all functions into subsections
95 * --no_compress helps with compile time with no real difference in
96 * code size since the generated config.c is mostly data and small
97 * function stubs.
98 */
99 override config ti.targets.ITarget.Options ccConfigOpts = {
100 prefix: "$(ccOpts.prefix) -mo --no_compress",
101 suffix: "$(ccOpts.suffix)"
102 };
103
104 /*!
105 * ======== lnkOpts ========
106 * User configurable linker options.
107 *
108 * Defaults:
109 * @p(dlist)
110 * -`-w`
111 * Display linker warnings
112 * -`-q`
113 * Quite run
114 * -`-u`
115 * Place unresolved external symbol into symbol table
116 * -`-c`
117 * ROM autoinitialization model
118 * -`-m`
119 * create a map file
120 * -`-l`
121 * archive library file as linker input
122 */
123 override config ti.targets.ITarget.Options lnkOpts = {
124 prefix: "-w -q -u _c_int00",
125 suffix: "-c -m $(XDCCFGDIR)/$@.map -l $(rootDir)/lib/rtstesla_be_elf.lib"
126 };
127
128 override config string includeOpts = "-I$(rootDir)/include";
129
130 override readonly config Int bitsPerChar = C64T.bitsPerChar;
131 }
132 133 134
135