Existing Targets

From RTSC-Pedia

Jump to: navigation, search
revision tip
—— LANDSCAPE orientation
[printable version]  [offline version]offline version generated on 29-Mar-2017 09:03 UTC

Existing Targets

Targets suppled with XDCtools



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.


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


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


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.

 *  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("!Name\n!Compiler Options\n!Description");
    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());
/* ======== link ======== */
function link(mod)
    var a = mod.$name.split('.');
    var modName = a[a.length - 1];
    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"
!Compiler Options
|<tt> -W3 -Zp1 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT=""</tt>
|  Microsoft Windows 32-bit target using the Visual C/C++ 6.x compiler
|<tt> -Zp1 -W3 -DWIN32 -D_DLL -D_AFXDLL -DEXPORT=""</tt>
|  Microsoft Windows 32-bit target using the Visual C/C++ compiler
|<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 29-Mar-2017 09:03 UTC
Copyright © 2008 The Eclipse Foundation. All Rights Reserved
Personal tools
package reference