1 2 3 4 5 6 7 8 9 10 11
12
13 /*!
14 * ======== UCArm9.xdc ========
15 * uClibc Arm9 little endian embedded Linux target
16 *
17 * Arm nomenclature:
18 * @p(blist)
19 * Arm7* devices contain v4 Cores
20 * Arm9* devices contain v5 Cores
21 * Arm11* devices contain v6 thumb2 Cores
22 * @p
23 */
24 metaonly module UCArm9 inherits gnu.targets.ITarget {
25 override readonly config string name = "UCArm9";
26 override readonly config string os = "Linux";
27 override readonly config string suffix = "470uC";
28 override readonly config string isa = "v5T";
29 override readonly config xdc.bld.ITarget.Model model= {
30 endian: "little"
31 };
32
33 override readonly config string rts = "gnu.targets.rts470uC";
34 override config string platform = "ti.platforms.evmDM6446";
35
36 override config string LONGNAME = "/bin/arm-linux-gcc";
37
38 override config xdc.bld.ITarget2.Options ccOpts = {
39 prefix: "-Wunused",
40 suffix: "-Dfar= "
41 };
42
43 override config xdc.bld.ITarget2.Options lnkOpts = {
44 prefix: "-static",
45 suffix: "-L$(rootDir)/lib"
46 };
47
48 49 50
51 override config xdc.bld.ITarget.OptionSet profiles[string] = [
52 ["debug", {
53 compileOpts: {
54 copts: "-g",
55 defs: "-D_DEBUG_=1",
56 },
57 linkOpts: "-g",
58 }],
59
60 ["release", {
61 compileOpts: {
62 copts: "-O2 -ffunction-sections -fdata-sections",
63 },
64 linkOpts: "",
65 }],
66
67 ["profile", {
68 compileOpts: {
69 copts: "-g -pg",
70 },
71 linkOpts: "-pg"
72 }],
73
74 ["coverage", {
75 compileOpts: {
76 copts: "-fprofile-arcs -ftest-coverage",
77 },
78 linkOpts: "-fprofile-arcs -ftest-coverage",
79 }],
80 ];
81
82 /*!
83 * ======== versionMap ========
84 * This map translates version string information from the compiler
85 * into a compatibility key. The compatibilty key is used to
86 * validate consistency among a collection of packages used in
87 * a configuration.
88 *
89 * The compiler version string is "gcc<ver>", where <ver> is
90 * GCCVERS.
91 *
92 * If a compiler version is not found in this map the default is
93 * "1,0,<ver>", where <ver> is the compiler version number. Thus,
94 * the user only needs to extend this table when a significant
95 * incompatibility occurs or when two versions of the compiler should
96 * be treated as 100% compatible.
97 */
98 override config string versionMap[string] = [
99 ["gcc3.2", "1,0,3.2,0"],
100 ];
101
102 override readonly config xdc.bld.ITarget.StdTypes stdTypes = {
103 t_IArg : { size: 4, align: 4 },
104 t_Char : { size: 1, align: 1 },
105 t_Double : { size: 8, align: 4 },
106 t_Float : { size: 4, align: 4 },
107 t_Fxn : { size: 4, align: 4 },
108 t_Int : { size: 4, align: 4 },
109 t_Int8 : { size: 1, align: 1 },
110 t_Int16 : { size: 2, align: 2 },
111 t_Int32 : { size: 4, align: 4 },
112 t_Int64 : { size: 8, align: 4 },
113 t_Long : { size: 4, align: 4 },
114 t_LDouble : { size: 8, align: 4 },
115 t_LLong : { size: 8, align: 4 },
116 t_Ptr : { size: 4, align: 4 },
117 t_Short : { size: 2, align: 2 },
118 };
119 }
120 121 122
123