binutils-gdb/ld/emulparams
Andrew Jenner b8891f8d62 Add support for the C_SKY series of processors.
This patch series is a new binutils port for C-SKY processors, including support for both the V1 and V2 processor variants.  V1 is derived from the MCore architecture while V2 is substantially different, with mixed 16- and 32-bit instructions, a larger register set, a different (but overlapping) ABI, etc.  There is support for bare-metal ELF targets and Linux with both glibc and uClibc.

This code is being contributed jointly by C-SKY Microsystems and Mentor Graphics.  C-SKY is responsible for the technical content and has proposed Lifang Xia and Yunhai Shang as port maintainers.  (Note that C-SKY does have a corporate copyright assignment on file with the FSF.) Mentor Graphics' role has been cleaning up the code, adding documentation and additional test cases, etc, to address issues we anticipated reviewers would complain about.

bfd     * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): Add C-SKY.
        (BFD32_BACKENDS, BFD_BACKENDS_CFILES): Likewise.
        * Makefile.in: Regenerated.
        * archures.c (enum bfd_architecture): Add bfd_arch_csky and
        related bfd_mach defines.
        (bfd_csky_arch): Declare.
        (bfd_archures_list): Add C-SKY.
        * bfd-in.h (elf32_csky_build_stubs): Declare.
        (elf32_csky_size_stubs): Declare.
        (elf32_csky_next_input_section: Declare.
        (elf32_csky_setup_section_lists): Declare.
        * bfd-in2.h: Regenerated.
        * config.bfd: Add C-SKY.
        * configure.ac: Likewise.
        * configure: Regenerated.
        * cpu-csky.c: New file.
        * elf-bfd.h (enum elf_target_id): Add C-SKY.
        * elf32-csky.c: New file.
        * libbfd.h: Regenerated.
        * reloc.c: Add C-SKY relocations.
        * targets.c (csky_elf32_be_vec, csky_elf32_le_vec): Declare.
        (_bfd_target_vector): Add C-SKY target vector entries.

binutils* readelf.c: Include elf/csky.h.
        (guess_is_rela): Handle EM_CSKY.
        (dump_relocations): Likewise.
        (get_machine_name): Likewise.
        (is_32bit_abs_reloc): Likewise.

include  * dis-asm.h (csky_symbol_is_valid): Declare.
         * opcode/csky.h: New file.

opcodes  * Makefile.am (TARGET_LIBOPCODES_CFILES): Add csky-dis.c.
         * Makefile.in: Regenerated.
         * configure.ac: Add C-SKY.
         * configure: Regenerated.
         * csky-dis.c: New file.
         * csky-opc.h: New file.
         * disassemble.c (ARCH_csky): Define.
         (disassembler, disassemble_init_for_target): Add case for ARCH_csky.
         * disassemble.h (print_insn_csky, csky_get_disassembler): Declare.

gas      * Makefile.am (TARGET_CPU_CFILES): Add entry for C-SKY.
         (TARGET_CPU_HFILES, TARGET_ENV_HFILES): Likewise.
         * Makefile.in: Regenerated.
         * config/tc-csky.c: New file.
         * config/tc-csky.h: New file.
         * config/te-csky_abiv1.h: New file.
         * config/te-csky_abiv1_linux.h: New file.
         * config/te-csky_abiv2.h: New file.
         * config/te-csky_abiv2_linux.h: New file.
         * configure.tgt: Add C-SKY.
         * doc/Makefile.am (CPU_DOCS): Add entry for C-SKY.
         * doc/Makefile.in: Regenerated.
         * doc/all.texi: Set CSKY feature.
         * doc/as.texi (Overview): Add C-SKY options.
         (Machine Dependencies): Likewise.
         * doc/c-csky.texi: New file.
         * testsuite/gas/csky/*: New test cases.

ld      * Makefile.am (ALL_EMULATION_SOURCES): Add C-SKY emulations.
        (ecskyelf.c, ecskyelf_linux.c): New rules.
        * Makefile.in: Regenerated.
        * configure.tgt: Add C-SKY.
        * emulparams/cskyelf.sh: New file.
        * emulparams/cskyelf_linux.sh: New file.
        * emultempl/cskyelf.em: New file.
        * gen-doc.texi: Add C-SKY.
        * ld.texi: Likewise.
        (Options specific to C-SKY targets): New section.
        * testsuite/ld-csky/*: New tests.
2018-07-30 12:24:14 +01:00
..
aarch64cloudabi.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
aarch64cloudabib.sh
aarch64elf32.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
aarch64elf32b.sh
aarch64elf.sh Fix syntax error in AArch64 default linker scripts when invoked with -shared. 2018-06-12 12:45:49 +01:00
aarch64elfb.sh
aarch64fbsd.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
aarch64fbsdb.sh
aarch64linux32.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
aarch64linux32b.sh
aarch64linux.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
aarch64linuxb.sh
aix5ppc.sh
aix5rs6.sh
aixppc.sh
aixrs6.sh
alpha.sh
alphavms.sh
arc-endianness.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
arc-nps.sh [ARC] Add new linker emulation for nps 2017-01-10 10:55:13 +00:00
arcelf_prof.sh
arcelf.sh [ARC] Add JLI support. 2017-07-19 09:56:55 +02:00
arclinux_nps.sh [ARC] Add new linker emulation for nps 2017-01-10 10:55:13 +00:00
arclinux_prof.sh arc/ld: Remove duplicate TEMPLATE_NAME from emulparam file 2016-11-28 22:30:17 +00:00
arclinux.sh [ARC] Emulation and default script template changes. 2016-05-19 15:06:50 +02:00
arcv2elf.sh [ARC] Add JLI support. 2017-07-19 09:56:55 +02:00
arcv2elfx.sh [ARC] Add JLI support. 2017-07-19 09:56:55 +02:00
arm_wince_pe.sh
armelf_fbsd.sh
armelf_fuchsia.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
armelf_linux_eabi.sh
armelf_linux_fdpiceabi.sh [ARM] Implement FDPIC relocations. 2018-04-25 20:53:01 +00:00
armelf_linux.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
armelf_nacl.sh
armelf_nbsd.sh
armelf_phoenix.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
armelf_vxworks.sh
armelf.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
armelfb_fbsd.sh
armelfb_fuchsia.sh Add support for Fushia OS. 2016-12-02 10:44:29 +00:00
armelfb_linux_eabi.sh
armelfb_linux_fdpiceabi.sh [ARM] Add armelf_linux_fdpiceabi and armelfb_linux_fdpiceabi BFD backends 2018-04-25 20:47:43 +00:00
armelfb_linux.sh
armelfb_nacl.sh
armelfb_nbsd.sh
armelfb.sh
armnto.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
armpe.sh
armsymbian.sh
avr1.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr2.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr3.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr4.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr5.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr6.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr25.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr31.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr35.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avr51.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrtiny.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega1.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega2.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega3.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega4.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega5.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega6.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
avrxmega7.sh Replace multiple AVR scripts with a single, customizable linker script. 2017-06-13 16:50:26 +01:00
call_nop.sh ld error/warning messages 2018-02-26 10:51:12 +10:30
cet.sh ld error/warning messages 2018-02-26 10:51:12 +10:30
crisaout.sh
criself.sh Fix long-standing buglet and fallout from now-default initfini-array. 2017-01-29 13:53:58 +01:00
crislinux.sh
cskyelf_linux.sh Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
cskyelf.sh Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
d10velf.sh
d30v_e.sh
d30v_o.sh
d30velf.sh
dynamic_undefined_weak.sh Implement -z dynamic-undefined-weak 2017-04-19 20:39:52 +09:30
elf32_dlx.sh
elf32_sparc_sol2.sh
elf32_sparc_vxworks.sh
elf32_sparc.sh
elf32_spu.sh
elf32_tic6x_be.sh
elf32_tic6x_elf_be.sh
elf32_tic6x_elf_le.sh
elf32_tic6x_le.sh TIC6X __c6xabi_DSBT_BASE 2018-06-07 09:07:32 +09:30
elf32_tic6x_linux_be.sh
elf32_tic6x_linux_le.sh
elf32_x86_64_nacl.sh
elf32_x86_64.sh ld: Add OTHER_PLT_SECTIONS 2017-11-12 07:25:36 -08:00
elf32am33lin.sh
elf32b4300.sh
elf32bfin.sh
elf32bfinfd.sh
elf32bmip.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32bmipn32-defs.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32bmipn32.sh EXECUTABLE_SYMBOLS -> OTHER_SYMBOLS 2018-06-07 09:10:15 +09:30
elf32bsmip.sh
elf32btsmip_fbsd.sh
elf32btsmip.sh
elf32btsmipn32_fbsd.sh
elf32btsmipn32.sh
elf32cr16.sh
elf32cr16c.sh
elf32crx.sh
elf32ebmip.sh
elf32ebmipvxworks.sh
elf32elmip.sh
elf32elmipvxworks.sh
elf32epiphany_4x4.sh
elf32epiphany.sh
elf32fr30.sh
elf32frv.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32frvfd.sh
elf32ft32.sh
elf32ip2k.sh
elf32iq10.sh
elf32iq2000.sh
elf32l4300.sh
elf32lm32.sh
elf32lm32fd.sh
elf32lmip.sh
elf32lppc.sh
elf32lppclinux.sh
elf32lppcnto.sh
elf32lppcsim.sh
elf32lr5900.sh
elf32lr5900n32.sh
elf32lriscv_ilp32.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf32lriscv_ilp32f.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf32lriscv-defs.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32lriscv.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf32lsmip.sh
elf32ltsmip_fbsd.sh
elf32ltsmip.sh
elf32ltsmipn32_fbsd.sh
elf32ltsmipn32.sh
elf32m32c.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
elf32mb_linux.sh
elf32mbel_linux.sh
elf32mcore.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32mep.sh
elf32metag.sh Support -z relro on metag 2017-01-02 22:44:29 +10:30
elf32microblaze.sh
elf32microblazeel.sh
elf32mipswindiss.sh MIPS/LD: Correct `mips-*-windiss' target emulation configuration 2018-01-26 23:05:06 +00:00
elf32moxie.sh
elf32mt.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
elf32or1k_linux.sh
elf32or1k.sh
elf32ppc_fbsd.sh
elf32ppc.sh Support PLT16 relocs against local symbols 2018-04-09 17:05:09 +09:30
elf32ppccommon.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32ppclinux.sh
elf32ppcnto.sh
elf32ppcsim.sh
elf32ppcvxworks.sh
elf32ppcwindiss.sh powerpc-lynxos and powerpc-windiss fixes 2018-04-14 17:53:22 +09:30
elf32rl78.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
elf32rx.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
elf32tilegx_be.sh
elf32tilegx.sh
elf32tilepro.sh
elf32vax.sh
elf32visium.sh
elf32xc16x.sh
elf32xc16xl.sh
elf32xc16xs.sh
elf32xstormy16.sh
elf32xtensa.sh xtensa: ld: support -z relro 2018-03-07 13:05:12 -08:00
elf64_aix.sh
elf64_ia64_fbsd.sh
elf64_ia64_vms.sh
elf64_ia64.sh Stop the IA64 linker from removing unwind tables when garbage collecting. 2018-04-05 14:44:05 +01:00
elf64_s390.sh S/390: Improve partial relro support for 64 bit 2018-07-18 13:20:06 +02:00
elf64_sparc_fbsd.sh
elf64_sparc_sol2.sh
elf64_sparc.sh
elf64alpha_fbsd.sh
elf64alpha_nbsd.sh
elf64alpha.sh
elf64bmip-defs.sh
elf64bmip.sh EXECUTABLE_SYMBOLS -> OTHER_SYMBOLS 2018-06-07 09:10:15 +09:30
elf64btsmip_fbsd.sh
elf64btsmip.sh
elf64hppa.sh EXECUTABLE_SYMBOLS -> OTHER_SYMBOLS 2018-06-07 09:10:15 +09:30
elf64lppc.sh
elf64lriscv_lp64.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf64lriscv_lp64f.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf64lriscv-defs.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf64lriscv.sh RISC-V: New emulations to make path searches follow glibc ABI. 2018-05-08 13:34:03 -07:00
elf64ltsmip_fbsd.sh
elf64ltsmip.sh
elf64mmix.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
elf64ppc_fbsd.sh
elf64ppc.sh
elf64rdos.sh
elf64tilegx_be.sh
elf64tilegx.sh
elf_fbsd.sh
elf_i386_be.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_i386_chaos.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_i386_fbsd.sh
elf_i386_ldso.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_i386_nacl.sh
elf_i386_sol2.sh
elf_i386_vxworks.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_i386.sh ld: Add OTHER_PLT_SECTIONS 2017-11-12 07:25:36 -08:00
elf_iamcu.sh ld: Add OTHER_PLT_SECTIONS 2017-11-12 07:25:36 -08:00
elf_k1om_fbsd.sh
elf_k1om.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_l1om_fbsd.sh
elf_l1om.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
elf_nacl.sh
elf_s390.sh
elf_x86_64_cloudabi.sh
elf_x86_64_fbsd.sh
elf_x86_64_nacl.sh
elf_x86_64_sol2.sh
elf_x86_64.sh ld: Add OTHER_PLT_SECTIONS 2017-11-12 07:25:36 -08:00
extern_protected_data.sh
h8300elf_linux.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
h8300elf.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
h8300helf_linux.sh
h8300helf.sh
h8300hnelf.sh
h8300self_linux.sh
h8300self.sh
h8300snelf.sh
h8300sxelf_linux.sh
h8300sxelf.sh
h8300sxnelf.sh
hppa64linux.sh
hppaelf.sh
hppalinux.sh Support -z relro on hppa 2017-01-02 22:42:45 +10:30
hppanbsd.sh
hppaobsd.sh
i386aout.sh
i386beos.sh
i386bsd.sh
i386go32.sh
i386lynx.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
i386moss.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
i386msdos.sh
i386nto.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
i386pe_posix.sh
i386pe.sh
i386pep.sh
m9s12zelf.sh Add support for the Freescale s12z processor. 2018-05-18 15:26:18 +01:00
m32relf_linux.sh
m32relf.sh
m32rlelf_linux.sh
m32rlelf.sh
m68hc11elf.sh
m68hc11elfb.sh
m68hc12elf.sh
m68hc12elfb.sh
m68kelf.sh
m68kelfnbsd.sh
mcorepe.sh
mmo.sh
mn10200.sh
mn10300.sh
moxiebox.sh
msp430elf.sh
msp430X.sh
nds32belf16m.sh
nds32belf_linux.sh
nds32belf.sh
nds32elf16m.sh
nds32elf_linux.sh
nds32elf.sh
nios2elf.sh Disable -shared support in nios2-elf-ld. 2018-02-02 23:00:02 -08:00
nios2linux.sh
ns32knbsd.sh
pc532macha.sh
pdp11.sh
pjelf.sh
pjlelf.sh
plt_unwind.sh
ppclynx.sh powerpc-lynxos and powerpc-windiss fixes 2018-04-14 17:53:22 +09:30
ppcmacos.sh
ppcpe.sh
pruelf.sh PRU LD Port 2016-12-31 12:04:11 +10:30
README Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
reloc_overflow.sh
score3_elf.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
score7_elf.sh
sh.sh
shelf_fd.sh
shelf_linux.sh
shelf_nbsd.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
shelf_nto.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
shelf_uclinux.sh Move .stack before debug sections 2017-02-20 19:33:28 +10:30
shelf_vxworks.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
shelf.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
shl.sh
shlelf_fd.sh
shlelf_linux.sh ELF: Call check_relocs after opening all inputs 2017-10-16 03:50:13 -07:00
shlelf_nbsd.sh
shlelf_nto.sh Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
shlelf_vxworks.sh
shlelf.sh
shpe.sh
solaris2.sh
tic3xcoff_onchip.sh
tic3xcoff.sh
tic4xcoff.sh
tic30aout.sh
tic30coff.sh
tic54xcoff.sh
tic80coff.sh
v850_rh850.sh
v850.sh
vanilla.sh
vaxnbsd.sh
vxworks.sh ld whitespace fixes 2017-10-12 23:30:43 +10:30
xgateelf.sh xgate cleanup 2018-07-10 23:59:07 +09:30
z80.sh
z8001.sh
z8002.sh

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

The files in this directory are read by genscripts.sh as shell commands.
They set parameters for the emulations.

Copyright (C) 2012-2018 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.