From RTSC-Pedia
[printable version] [offline version] | offline version generated on 02-Oct-2009 22:10 UTC |
Existing Targets
Targets suppled with XDCtools
Contents |
Introduction
The sections below enumerate the targets currently supplied with XDCtools (as of 6/00/08) and the compiler options that define these targets.
Since targets can be supplied outside the XDCtools bundle and new releases may include targets that not shown here it is best to open the CDOC online documentation (see Using the CDOC reference help system) and expand the ti.targets, microsoft.targets, and gnu.targets packages to see a list of currently supported targets as well as details about compiler options required by these targets.
To determine the code generation options that define the target, look at the cc.opts property of the target. For example, examining ti.targets.C64P.cc indicates that the -mv64p option defines the ti.targets.C64P target.
ti.targets
Name | Compiler Options | Description |
---|---|---|
ti.targets.C62 | TI C62 little endian target | |
ti.targets.C62_big_endian | -me | TI C62 big endian target |
ti.targets.C64 | -mv6400 | TI C64 little endian target |
ti.targets.C64_big_endian | -me -mv6400 | TI C64 big endian target |
ti.targets.C64P | -mv64p | TI C64P little endian target |
ti.targets.C64P_big_endian | -me -mv64p | TI C64P big endian target |
ti.targets.C674 | -mv6740 | TI C674 little endian target |
ti.targets.C674_big_endian | -me -mv6740 | TI C674 big endian target |
ti.targets.C67 | -mv6700 | TI C67 little endian target |
ti.targets.C67_big_endian | -me -mv6700 | TI C67 big endian target |
ti.targets.C67P | -mv67p | TI C67P little endian target |
ti.targets.C67P_big_endian | -me -mv67p | TI C67P big endian target |
ti.targets.C54 | TI C54 target | |
ti.targets.C54_far | -mf -v548 | TI C54 far model target |
ti.targets.C55 | TI C55 target | |
ti.targets.C55_large | -ml | TI C55 large model target |
ti.targets.C55_huge | --memory_model=huge | TI C55 huge model target |
ti.targets.C55P_word | --memory_model=huge | TI C55P word mode target |
ti.targets.C55P_byte | --memory_model=huge --byte_mode | TI C55P byte mode target |
ti.targets.C28 | -v28 -mo | TI C28 target |
ti.targets.C28_large | -v28 -DLARGE_MODEL=1 -ml | TI C28 large model target |
ti.targets.C28_float | -v28 -DLARGE_MODEL=1 -ml -mo --float_support=fpu32 | TI C28 with float point support (fpu32) target |
ti.targets.TMS470 | -me -mv4 | TI TMS470 (Arm) little endian target |
ti.targets.TMS470_big_endian | -mv4 | TI TMS470 (Arm) big endian target |
ti.targets.MSP430 | -vmsp | TI MSP430 little endian target |
microsoft.targets
Name | Compiler Options | Description |
---|---|---|
microsoft.targets.VC98 | -W3 -Zp1 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT="" | Microsoft Windows 32-bit target using the Visual C/C++ 6.x compiler |
microsoft.targets.Win32 | -Zp1 -W3 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT="" | Microsoft Windows 32-bit target using the Visual C/C++ compiler |
microsoft.targets.Net32 | -nologo -c | Microsoft .Net 32-bit native target |
gnu.targets
Name | Compiler Options | Description |
---|---|---|
gnu.targets.Sparc | -B$(rootDir)/lib/gcc/$(GCCTARG)/$(GCCVERS)/ -B$(rootDir)/lib/gcc-lib/$(GCCTARG)/$(GCCVERS)/ | Native Sparc Solaris target |
gnu.targets.Linux86 | Native x86 Linux target | |
gnu.targets.Mingw | MinGW native Windows target | |
gnu.targets.MVArm9 | MonteVista Arm9 little endian embedded Linux target | |
gnu.targets.UCArm9 | uClibc Arm9 little endian embedded Linux target |
How the tables were created
The target tables in the previous sections were all created by running the script shown below on the XDCtools 3.10 release.
gentt.xs | |
| /* * Generate Target Table for mwiki * * usage: xs -c gentt.xs target-package */ var ITarget = xdc.module("xdc.bld.ITarget"); /* ======== main ======== */ function main(args) { var pkg = xdc.loadPackage(args[0]); print('{|cellpadding="4" cellspacing="2" border="1"'); print("|-"); print("!Name\n!Compiler Options\n!Description"); print("|-"); for each (var mod in xdc.om.$modules) { if (mod instanceof ITarget.Module && mod.$name.match("^" + args[0])) { var xdoc = mod.$spec.makeXDoc(); print("|" + link(mod)); print("|<tt> " + mod.cc.opts + "</tt>"); print("|" + xdoc.getSummary()); print("|-"); } } print("|}"); } /* ======== link ======== */ function link(mod) { var a = mod.$name.split('.'); var modName = a[a.length - 1]; a.pop(); var pkgName = a.join('.'); return ("{{#tag:cdoc|name=" + pkgName + ":" + modName + "|" + mod + "}\ } |
For example, running the script above on the microsoft.targets package produces the output shown below.
% xs -c gentt.xs microsoft.targets {|cellpadding="4" cellspacing="2" border="1" |- !Name !Compiler Options !Description |- |{{#tag:cdoc|name=microsoft.targets:VC98|microsoft.targets.VC98}} |<tt> -W3 -Zp1 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT=""</tt> | Microsoft Windows 32-bit target using the Visual C/C++ 6.x compiler |- |{{#tag:cdoc|name=microsoft.targets:Win32|microsoft.targets.Win32}} |<tt> -Zp1 -W3 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT=""</tt> | Microsoft Windows 32-bit target using the Visual C/C++ compiler |- |{{#tag:cdoc|name=microsoft.targets:Net32|microsoft.targets.Net32}} |<tt> -nologo -c</tt> | Microsoft .Net 32-bit native target |- |}
For information about how to create additional XDCscript tools, see The XDCscript Language.
[printable version] [offline version] | offline version generated on 02-Oct-2009 22:10 UTC |