Home | History | Annotate | Download | only in emultempl
      1 # This shell script emits a C file. -*- C -*-
      2 #   Copyright (C) 2010-2014 Free Software Foundation, Inc.
      3 #
      4 # This file is part of the GNU Binutils.
      5 #
      6 # This program is free software; you can redistribute it and/or modify
      7 # it under the terms of the GNU General Public License as published by
      8 # the Free Software Foundation; either version 3 of the License, or
      9 # (at your option) any later version.
     10 #
     11 # This program is distributed in the hope that it will be useful,
     12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 # GNU General Public License for more details.
     15 #
     16 # You should have received a copy of the GNU General Public License
     17 # along with this program; if not, write to the Free Software
     18 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     19 # MA 02110-1301, USA.
     20 #
     21 
     22 # This file is sourced from elf32.em, and defines extra bfin-elf
     23 # specific routines.
     24 #
     25 fragment <<EOF
     26 
     27 #include "elf-bfd.h"
     28 
     29 /* Whether to put code in Blackfin L1 SRAM.  */
     30 extern bfd_boolean elf32_bfin_code_in_l1;
     31 
     32 /* Whether to put (writable) data in Blackfin L1 SRAM.  */
     33 extern bfd_boolean elf32_bfin_data_in_l1;
     34 
     35 EOF
     36 
     37 
     38 # Define some shell vars to insert bits of code into the standard elf
     39 # parse_args and list_options functions.
     40 #
     41 PARSE_AND_LIST_PROLOGUE='
     42 #define OPTION_CODE_IN_L1		300
     43 #define OPTION_DATA_IN_L1		301
     44 '
     45 
     46 PARSE_AND_LIST_LONGOPTS='
     47   { "code-in-l1", no_argument, NULL, OPTION_CODE_IN_L1 },
     48   { "data-in-l1", no_argument, NULL, OPTION_DATA_IN_L1 },
     49 '
     50 
     51 PARSE_AND_LIST_OPTIONS='
     52   fprintf (file, _("\
     53   --code-in-l1                Put code in L1.\n\
     54   --data-in-l1                Put data in L1.\n"
     55 		   ));
     56 '
     57 
     58 PARSE_AND_LIST_ARGS_CASES='
     59     case OPTION_CODE_IN_L1:
     60       elf32_bfin_code_in_l1 = TRUE;
     61       break;
     62     case OPTION_DATA_IN_L1:
     63       elf32_bfin_data_in_l1 = TRUE;
     64       break;
     65 '
     66