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