1 2 3 4 5 6 7 8 9 10 11
12 /*!
13 * ======== MVArm9.xdc ========
14 * MonteVista Arm9 little endian embedded Linux target
15 *
16 * This module defines a embedded target for Linux on Arm9.
17 *
18 * Arm nomenclature:
19 * @p(blist)
20 * Arm7* devices contain v4 Cores
21 * Arm9* devices contain v5 Cores
22 * Arm11* devices contain v6 thumb2 Cores
23 * @p
24 */
25 metaonly module MVArm9 inherits gnu.targets.ITarget {
26 override readonly config string name = "MVArm9";
27 override readonly config string os = "Linux";
28 override readonly config string suffix = "470MV";
29 override readonly config string isa = "v5T";
30 override readonly config xdc.bld.ITarget.Model model= {
31 endian: "little"
32 };
33
34 override readonly config string rts = "gnu.targets.rts470MV";
35 override config string platform = "ti.platforms.evmDM6446";
36
37 override config string LONGNAME = "bin/arm_v5t_le-gcc";
38
39 override readonly config Bool CYGWIN = true;
40
41 override config ITarget.Options ccOpts = {
42 prefix: "-fPIC -Wunused",
43 suffix: "-Dfar= "
44 };
45
46 override config ITarget.Options lnkOpts = {
47 prefix: "",
48 suffix: "-lstdc++ -L$(rootDir)/$(GCCTARG)/lib"
49 };
50
51 52 53
54 override config String compatibleSuffixes[] = ["v5T", "v5t"];
55
56 override readonly config xdc.bld.ITarget.StdTypes stdTypes = {
57 t_IArg : { size: 4, align: 4 },
58 t_Char : { size: 1, align: 1 },
59 t_Double : { size: 8, align: 4 },
60 t_Float : { size: 4, align: 4 },
61 t_Fxn : { size: 4, align: 4 },
62 t_Int : { size: 4, align: 4 },
63 t_Int8 : { size: 1, align: 1 },
64 t_Int16 : { size: 2, align: 2 },
65 t_Int32 : { size: 4, align: 4 },
66 t_Int64 : { size: 8, align: 4 },
67 t_Long : { size: 4, align: 4 },
68 t_LDouble : { size: 8, align: 4 },
69 t_LLong : { size: 8, align: 4 },
70 t_Ptr : { size: 4, align: 4 },
71 t_Short : { size: 2, align: 2 },
72 };
73 }
74 75 76
77