1 2 3 4 5 6 7 8 9 10 11
12 13 14 15
16
17 /*!
18 * ======== C67P ========
19 * TI C67P little endian (ELF)
20 */
21 metaonly module C67P inherits ITarget {
22 override readonly config string name = "C67P";
23 override readonly config string suffix = "e67P";
24 override readonly config string isa = "67P";
25 override readonly config xdc.bld.ITarget.Model model = {
26 endian: "little",
27 shortEnums: false
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.sim6xxx:TMS320C6727";
33
34 override readonly config xdc.bld.ITarget2.Command ar = {
35 cmd: "ar6x",
36 opts: "rq"
37 };
38
39 override readonly config xdc.bld.ITarget2.Command cc = {
40 cmd: "cl6x -c",
41 opts: "-mv67p --abi=elfabi"
42 };
43
44 override readonly config xdc.bld.ITarget2.Command vers = {
45 cmd: "cl6x",
46 opts: "--compiler_revision"
47 };
48
49 override readonly config xdc.bld.ITarget2.Command asm = {
50 cmd: "cl6x -c",
51 opts: "-mv67p --abi=elfabi"
52 };
53
54 override readonly config xdc.bld.ITarget2.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 xdc.bld.ITarget2.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 xdc.bld.ITarget2.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 xdc.bld.ITarget2.Options ccConfigOpts = {
100 prefix: "$(ccOpts.prefix) -mo",
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 xdc.bld.ITarget2.Options lnkOpts = {
124 prefix: "-q -u _c_int00",
125 suffix: "-c -m $(XDCCFGDIR)/$@.map -l $(rootDir)/lib/rts67plus_elf.lib"
126 };
127
128 override config string includeOpts = "-I$(rootDir)/include";
129
130 override readonly config xdc.bld.ITarget.StdTypes stdTypes =
131 ti.targets.C62.stdTypes;
132
133 override readonly config Int bitsPerChar =
134 ti.targets.C62.bitsPerChar;
135 }
136
137 138 139
140