1    /* 
     2     *  Copyright (c) 2008 Texas Instruments and others.
     3     *  All rights reserved. This program and the accompanying materials
     4     *  are made available under the terms of the Eclipse Public License v1.0
     5     *  which accompanies this distribution, and is available at
     6     *  http://www.eclipse.org/legal/epl-v10.html
     7     * 
     8     *  Contributors:
     9     *      Texas Instruments - initial implementation
    10     * 
    11     * */
    12    /*
    13     *  ======== C64T.xdc ========
    14     *
    15     */
    16    
    17    /*!
    18     *  ======== C64T ========
    19     *  TI C64T little endian target -- for ELF
    20     */
    21    metaonly module C64T inherits ITarget {
    22        override readonly config string name                 = "C64T";
    23        override readonly config string suffix               = "e64T";
    24        override readonly config string isa                  = "64T";
    25        override readonly config xdc.bld.ITarget.Model model = {
    26            endian: "little"
    27        };
    28        override readonly config xdc.bld.ITarget.Module base = ti.targets.C62;
    29    
    30        override readonly config string rts = "ti.targets.rts6000";
    31        override config string platform     = "ti.platforms.qtTesla";
    32        
    33        override readonly config ti.targets.ITarget.Command ar = {
    34            cmd: "ar6x",
    35            opts: "rq"
    36        };
    37    
    38        override readonly config ti.targets.ITarget.Command cc = {
    39            cmd: "cl6x -c",
    40            opts: "-mv=tesla --abi=elfabi"
    41        };
    42    
    43        override readonly config ti.targets.ITarget.Command vers = {
    44            cmd: "cl6x",
    45            opts: "-version"
    46        };
    47    
    48        override readonly config ti.targets.ITarget.Command asm = {
    49            cmd: "cl6x -c",
    50            opts: "-mv=tesla --abi=elfabi"
    51        };
    52    
    53        override readonly config ti.targets.ITarget.Command lnk = {
    54            cmd: "lnk6x",
    55            opts: "--abi=elfabi"
    56        };
    57        
    58        /*!
    59         *  ======== asmOpts ========
    60         *  User configurable assembler options.
    61         *
    62         *  Defaults:
    63         *  @p(dlist)
    64         *      -`-qq`
    65         *          super quiet mode
    66         */
    67        override config ti.targets.ITarget.Options asmOpts = {
    68            prefix: "-qq",
    69            suffix: ""
    70        };
    71    
    72        /*!
    73         *  ======== ccOpts ========
    74         *  User configurable compiler options.
    75         *
    76         *  Defaults:
    77         *  @p(dlist)
    78         *      -`-qq`
    79         *          super quiet mode
    80         *      -`-pdsw225`
    81         *          generate a warning for implicitly declared functions; i.e.,
    82         *          functions without prototypes
    83         */
    84        override config ti.targets.ITarget.Options ccOpts = {
    85            prefix: "-qq -pdsw225",
    86            suffix: ""
    87        };
    88    
    89        /*!
    90         *  ======== ccConfigOpts ========
    91         *  User configurable compiler options for the generated config C file.
    92         *
    93         *  -mo places all functions into subsections
    94         *  --no_compress helps with compile time with no real difference in
    95         *  code size since the generated config.c is mostly data and small
    96         *  function stubs.
    97         */
    98        override config ti.targets.ITarget.Options ccConfigOpts = {
    99            prefix: "$(ccOpts.prefix) -mo --no_compress",
   100            suffix: "$(ccOpts.suffix)"
   101        };
   102    
   103        /*!
   104         *  ======== lnkOpts ========
   105         *  User configurable linker options.
   106         *
   107         *  Defaults:
   108         *  @p(dlist)
   109         *      -`-w`
   110         *          Display linker warnings
   111         *      -`-q`
   112         *          Quite run
   113         *      -`-u`
   114         *          Place unresolved external symbol into symbol table
   115         *      -`-c`
   116         *          ROM autoinitialization model
   117         *      -`-m`
   118         *          create a map file
   119         *      -`-l`
   120         *          archive library file as linker input
   121         */
   122        override config ti.targets.ITarget.Options lnkOpts = {
   123            prefix: "-w -q -u _c_int00",
   124            suffix: "-c -m $(XDCCFGDIR)/$@.map -l $(rootDir)/lib/rtstesla_le_elf.lib"
   125        };
   126            
   127        override config string includeOpts = "-I$(rootDir)/include";
   128    
   129        override readonly config xdc.bld.ITarget.StdTypes stdTypes = 
   130            ti.targets.elf.C64P.stdTypes;
   131        
   132        override readonly config Int bitsPerChar = 
   133            ti.targets.C62.bitsPerChar;
   134    }
   135    /*
   136     *  @(#) ti.targets.elf; 1, 0, 0,87; 7-29-2009 16:35:09; /db/atree/library/trees/xdctargets/xdctargets-b12x/src/
   137     */
   138