1 2 3 4 5 6 7 8 9 10 11
12 /*!
13 * ======== IM4 ========
14 * Interface for IAR Cortex M4 based targets
15 */
16 metaonly interface IM4 inherits ITarget
17 {
18 override readonly config String isa = "v7M4";
19
20 /*!
21 * ======== model ========
22 * Little endian, thumb2 model
23 */
24 override readonly config xdc.bld.ITarget.Model model = {
25 endian: "little",
26 codeModel: "thumb2",
27 shortEnums: true
28 };
29
30 /*!
31 * ======== profiles ========
32 * Standard options profiles.
33 */
34 override config xdc.bld.ITarget.OptionSet profiles[string] = [
35 ["debug", {
36 compileOpts: {
37 copts: "--debug --dlib_config $(rootDir)/inc/c/DLib_Config_Normal.h",
38 },
39 linkOpts: "--semihosting=iar_breakpoint $(rootDir)/lib/dlpp7M_tl_ne.a",
40 }],
41 ["release", {
42 compileOpts: {
43 copts: "-Ohs --dlib_config $(rootDir)/inc/c/DLib_Config_Normal.h",
44 },
45 linkOpts: "--semihosting=iar_breakpoint $(rootDir)/lib/dlpp7M_tl_ne.a",
46 }],
47 ["debug_full", {
48 compileOpts: {
49 copts: "--debug --dlib_config $(rootDir)/inc/c/DLib_Config_Full.h",
50 },
51 linkOpts: "--semihosting=iar_breakpoint $(rootDir)/lib/dlpp7M_tl_fe.a",
52 }],
53 ["release_full", {
54 compileOpts: {
55 copts: "-Ohs --dlib_config $(rootDir)/inc/c/DLib_Config_Full.h",
56 },
57 linkOpts: "--semihosting=iar_breakpoint $(rootDir)/lib/dlpp7M_tl_fe.a",
58 }],
59 ];
60 }
61 62 63 64
65