1  /* ELF definitions for TI C6X
       2     Copyright (C) 2010-2023 Free Software Foundation, Inc.
       3     Contributed by Andrew Jenner <andrew@codesourcery.com>
       4     Contributed by Bernd Schmidt <bernds@codesourcery.com>
       5  
       6     This file is part of GCC.
       7  
       8     GCC is free software; you can redistribute it and/or modify it
       9     under the terms of the GNU General Public License as published
      10     by the Free Software Foundation; either version 3, or (at your
      11     option) any later version.
      12  
      13     GCC is distributed in the hope that it will be useful, but WITHOUT
      14     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
      15     or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
      16     License for more details.
      17  
      18     You should have received a copy of the GNU General Public License
      19     along with GCC; see the file COPYING3.  If not see
      20     <http://www.gnu.org/licenses/>.  */
      21  
      22  /* Controlling the Compilation Driver.  */
      23  #define ENDIAN_LINK_SPEC "%{mbig-endian:-EB} %{mlittle-endian:-EL} "
      24  
      25  #undef ASM_SPEC
      26  #define ASM_SPEC "%{march=*:-march=%*} %{mbig-endian:-mbig-endian} \
      27   %{mdsbt:-mdsbt %{" NO_FPIC2_SPEC ":-mpid=near} \
      28     %{" FPIC2_SPEC ":-mpid=far -mpic} %{" FPIC1_SPEC ":-mpic}} \
      29   %{!mdsbt:%{" FPIC1_SPEC ":-mpic -mpid=near} \
      30     %{" FPIC2_SPEC ":-mpic -mpid=far}}"
      31  
      32  #undef DATA_SECTION_ASM_OP
      33  #define DATA_SECTION_ASM_OP "\t.section\t\".fardata\",\"aw\""
      34  #undef READONLY_DATA_SECTION_ASM_OP
      35  #define READONLY_DATA_SECTION_ASM_OP "\t.section\t\".const\",\"a\",@progbits"
      36  #define BSS_SECTION_ASM_OP "\t.section\t\".far\",\"aw\",@nobits"
      37  #define SDATA_SECTION_ASM_OP "\t.section\t\".neardata\",\"aw\""
      38  #define SBSS_SECTION_ASM_OP "\t.section\t\".bss\",\"aw\",@nobits"
      39  #define TARGET_LIBGCC_SDATA_SECTION ".neardata"