From: Jojo Date: Fri, 17 Aug 2018 19:00:25 +0000 (+0000) Subject: C-SKY port: Configury X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=56856b587e08ccf096756327adc59a5b1f2ae3af;p=gcc.git C-SKY port: Configury 2018-08-17 Jojo Huibin Wang Sandra Loosemore Chung-Lin Tang Andrew Jenner C-SKY port: Configury gcc/ * config.gcc (csky-*-*): New. * configure.ac: Add csky to targets for dwarf2 debug_line support. * configure: Regenerated. contrib/ * config-list.mk (LIST): Add csky-elf and csky-linux-gnu. Co-Authored-By: Andrew Jenner Co-Authored-By: Chung-Lin Tang Co-Authored-By: Huibin Wang Co-Authored-By: Sandra Loosemore From-SVN: r263627 --- diff --git a/contrib/ChangeLog b/contrib/ChangeLog index dc493ddd9ec..97ed2002247 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,13 @@ +2018-08-17 Jojo + Huibin Wang + Sandra Loosemore + Chung-Lin Tang + Andrew Jenner + + C-SKY port: Configury + + * config-list.mk (LIST): Add csky-elf and csky-linux-gnu. + 2018-07-13 Tom de Vries * maintainers-verify.sh: New file. diff --git a/contrib/config-list.mk b/contrib/config-list.mk index c3537d298b9..d9e48a952f2 100644 --- a/contrib/config-list.mk +++ b/contrib/config-list.mk @@ -40,6 +40,7 @@ LIST = aarch64-elf aarch64-linux-gnu aarch64-rtems \ arm-symbianelf avr-elf \ bfin-elf bfin-uclinux bfin-linux-uclibc bfin-rtems bfin-openbsd \ c6x-elf c6x-uclinux cr16-elf cris-elf cris-linux crisv32-elf crisv32-linux \ + csky-elf csky-linux-gnu \ epiphany-elf epiphany-elfOPT-with-stack-offset=16 fido-elf \ fr30-elf frv-elf frv-linux ft32-elf h8300-elf hppa-linux-gnu \ hppa-linux-gnuOPT-enable-sjlj-exceptions=yes hppa64-linux-gnu \ diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f51e30abf21..b1367f752b2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2018-08-17 Jojo + Huibin Wang + Sandra Loosemore + Chung-Lin Tang + Andrew Jenner + + C-SKY port: Configury + + * config.gcc (csky-*-*): New. + * configure.ac: Add csky to targets for dwarf2 debug_line support. + * configure: Regenerated. + 2018-08-17 David Malcolm * dump-context.h: Include "dumpfile.h". diff --git a/gcc/config.gcc b/gcc/config.gcc index 17ca0cf0615..f81cf76ad4f 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1278,6 +1278,70 @@ crisv32-*-linux* | cris-*-linux*) ;; esac ;; +csky-*-*) + if test x${with_endian} != x; then + case ${with_endian} in + big|little) ;; + *) + echo "with_endian=${with_endian} not supported." + exit 1 + ;; + esac + fi + if test x${with_float} != x; then + case ${with_float} in + soft | hard) ;; + *) echo + "Unknown floating point type used in --with-float=$with_float" + exit 1 + ;; + esac + fi + tm_file="csky/csky.h" + md_file="csky/csky.md" + out_file="csky/csky.c" + tm_p_file="${tm_p_file} csky/csky-protos.h" + extra_options="${extra_options} csky/csky_tables.opt" + + if test x${enable_tpf_debug} = xyes; then + tm_defines="${tm_defines} ENABLE_TPF_DEBUG" + fi + + case ${target} in + csky-*-elf*) + tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file} csky/csky-elf.h" + tmake_file="csky/t-csky csky/t-csky-elf" + default_use_cxa_atexit=no + ;; + csky-*-linux*) + tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} csky/csky-linux-elf.h" + tmake_file="${tmake_file} csky/t-csky csky/t-csky-linux" + + if test "x${enable_multilib}" = xyes ; then + tm_file="$tm_file ./sysroot-suffix.h" + tmake_file="${tmake_file} csky/t-sysroot-suffix" + fi + + case ${target} in + csky-*-linux-gnu*) + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_GLIBC" + ;; + csky-*-linux-uclibc*) + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC" + default_use_cxa_atexit=no + ;; + *) + echo "Unknown target $target" + exit 1 + ;; + esac + ;; + *) + echo "Unknown target $target" + exit 1 + ;; + esac + ;; epiphany-*-elf | epiphany-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h" tmake_file="${tmake_file} epiphany/t-epiphany" @@ -3795,6 +3859,10 @@ case "${target}" in fi ;; + csky-*-*) + supported_defaults="cpu endian float" + ;; + arm*-*-*) supported_defaults="arch cpu float tune fpu abi mode tls" for which in cpu tune arch; do diff --git a/gcc/configure b/gcc/configure index 80ac4a3d478..b7a8e364377 100755 --- a/gcc/configure +++ b/gcc/configure @@ -27838,7 +27838,7 @@ esac # ??? Once 2.11 is released, probably need to add first known working # version to the per-target configury. case "$cpu_type" in - aarch64 | alpha | arc | arm | avr | bfin | cris | i386 | m32c | m68k \ + aarch64 | alpha | arc | arm | avr | bfin | cris | csky | i386 | m32c | m68k \ | microblaze | mips | nios2 | pa | riscv | rs6000 | score | sparc | spu \ | tilegx | tilepro | visium | xstormy16 | xtensa) insn="nop" diff --git a/gcc/configure.ac b/gcc/configure.ac index 4fc851c644e..65f9c92ec85 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -4932,7 +4932,7 @@ esac # ??? Once 2.11 is released, probably need to add first known working # version to the per-target configury. case "$cpu_type" in - aarch64 | alpha | arc | arm | avr | bfin | cris | i386 | m32c | m68k \ + aarch64 | alpha | arc | arm | avr | bfin | cris | csky | i386 | m32c | m68k \ | microblaze | mips | nios2 | pa | riscv | rs6000 | score | sparc | spu \ | tilegx | tilepro | visium | xstormy16 | xtensa) insn="nop"