1    /* 
     2     *  Copyright (c) 2009 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    /*
    14     *  ======== C64P_big_endian.xdc ========
    15     *
    16     */
    17    
    18    /*!
    19     *  ======== C64P_big_endian ========
    20     *  TI C64P big endian target
    21     */
    22    metaonly module C64P_big_endian inherits ITarget {
    23        override readonly config string name                 = "C64P_big_endian";
    24        override readonly config string suffix               = "e64Pe";
    25        override readonly config string isa                  = "64P"; 
    26        override readonly config xdc.bld.ITarget.Model model = {
    27            endian: "big",
    28            shortEnums: true
    29        };
    30        override readonly config xdc.bld.ITarget.Module base = ti.targets.C62;
    31    
    32        override readonly config string rts = "ti.targets.rts6000";
    33        override config string platform     = "ti.platforms.sim6xxx:TMS320CDM420";
    34        
    35        override readonly config ti.targets.ITarget.Command ar = {
    36            cmd: "ar6x",
    37            opts: "rq"
    38        };
    39    
    40        override readonly config ti.targets.ITarget.Command cc = {
    41            cmd: "cl6x -c",
    42            opts: "-me -mv64p --abi=elfabi"
    43        };
    44    
    45        override readonly config ti.targets.ITarget.Command vers = {
    46            cmd: "cl6x",
    47            opts: "-version"
    48        };
    49    
    50        override readonly config ti.targets.ITarget.Command asm = {
    51            cmd: "cl6x -c",
    52            opts: "-me -mv64p --abi=elfabi"
    53        };
    54    
    55        override readonly config ti.targets.ITarget.Command lnk = {
    56            cmd: "lnk6x",
    57            opts: "--abi=elfabi"
    58        };
    59    
    60        /*!
    61         *  ======== asmOpts ========
    62         *  User configurable assembler options.
    63         *
    64         *  Defaults:
    65         *  @p(dlist)
    66         *      -`-qq`
    67         *          super quiet mode
    68         */
    69        override config ti.targets.ITarget.Options asmOpts = {
    70            prefix: "-qq",
    71            suffix: ""
    72        };
    73    
    74        /*!
    75         *  ======== ccOpts ========
    76         *  User configurable compiler options.
    77         *
    78         *  Defaults:
    79         *  @p(dlist)
    80         *      -`-qq`
    81         *          super quiet mode
    82         *      -`-pdsw225`
    83         *          generate a warning for implicitly declared functions; i.e.,
    84         *          functions without prototypes
    85         */
    86        override config ti.targets.ITarget.Options ccOpts = {
    87            prefix: "-qq -pdsw225",
    88            suffix: ""
    89        };
    90    
    91        /*!
    92         *  ======== ccConfigOpts ========
    93         *  User configurable compiler options for the generated config C file.
    94         *
    95         *  -mo places all functions into subsections
    96         *  --no_compress helps with compile time with no real difference in
    97         *  code size since the generated config.c is mostly data and small
    98         *  function stubs
    99         */
   100        override config ti.targets.ITarget.Options ccConfigOpts = {
   101            prefix: "$(ccOpts.prefix) -mo --no_compress",
   102            suffix: "$(ccOpts.suffix)"
   103        };
   104    
   105        /*!
   106         *  ======== lnkOpts ========
   107         *  User configurable linker options.
   108         *
   109         *  Defaults:
   110         *  @p(dlist)
   111         *      -`-w`
   112         *          Display linker warnings
   113         *      -`-q`
   114         *          Quite run
   115         *      -`-u`
   116         *          Place unresolved external symbol into symbol table
   117         *      -`-c`
   118         *          ROM autoinitialization model
   119         *      -`-m`
   120         *          create a map file
   121         *      -`-l`
   122         *          archive library file as linker input
   123         */
   124        override config ti.targets.ITarget.Options lnkOpts = {
   125            prefix: "-w -q -u _c_int00",
   126            suffix: "-c -m $(XDCCFGDIR)/$@.map -l $(rootDir)/lib/rts64pluse_elf.lib"
   127        };
   128            
   129        override config string includeOpts = "-I$(rootDir)/include";
   130    
   131        override readonly config Int bitsPerChar = C64P.bitsPerChar;
   132    }
   133    /*
   134     *  @(#) ti.targets.elf; 1, 0, 0,158; 6-17-2010 13:26:00; /db/ztree/library/trees/xdctargets/xdctargets-b38x/src/
   135     */
   136