OpenCores
URL https://opencores.org/ocsvn/zipcpu/zipcpu/trunk

Subversion Repositories zipcpu

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /zipcpu
    from Rev 141 to Rev 142
    Reverse comparison

Rev 141 → Rev 142

/trunk/sw/gcc-zippatch.patch
138,7 → 138,7
+
+struct gcc_targetm_common targetm_common = TARGETM_COMMON_INITIALIZER;
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/aarch64/aarch64-linux.h gcc-5.3.0-zip/gcc/config/aarch64/aarch64-linux.h
--- gcc-5.3.0-original/gcc/config/aarch64/aarch64-linux.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/aarch64/aarch64-linux.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/aarch64/aarch64-linux.h 2015-07-24 12:00:26.000000000 -0400
@@ -21,7 +21,7 @@
#ifndef GCC_AARCH64_LINUX_H
150,7 → 150,7
#undef ASAN_CC1_SPEC
#define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/alpha/linux-elf.h gcc-5.3.0-zip/gcc/config/alpha/linux-elf.h
--- gcc-5.3.0-original/gcc/config/alpha/linux-elf.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/alpha/linux-elf.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/alpha/linux-elf.h 2015-01-05 07:33:28.000000000 -0500
@@ -23,8 +23,8 @@
#define EXTRA_SPECS \
164,7 → 164,7
#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
#elif DEFAULT_LIBC == LIBC_GLIBC
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/arm/linux-eabi.h gcc-5.3.0-zip/gcc/config/arm/linux-eabi.h
--- gcc-5.3.0-original/gcc/config/arm/linux-eabi.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/arm/linux-eabi.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/arm/linux-eabi.h 2015-01-05 07:33:28.000000000 -0500
@@ -68,8 +68,8 @@
GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */
178,7 → 178,7
#define GLIBC_DYNAMIC_LINKER \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/arm/linux-elf.h gcc-5.3.0-zip/gcc/config/arm/linux-elf.h
--- gcc-5.3.0-original/gcc/config/arm/linux-elf.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/arm/linux-elf.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/arm/linux-elf.h 2015-06-23 05:26:54.000000000 -0400
@@ -62,7 +62,7 @@
190,7 → 190,7
#define LINUX_TARGET_LINK_SPEC "%{h*} \
%{static:-Bstatic} \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/bfin/linux.h gcc-5.3.0-zip/gcc/config/bfin/linux.h
--- gcc-5.3.0-original/gcc/config/bfin/linux.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/bfin/linux.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/bfin/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -45,7 +45,7 @@
%{shared:-G -Bdynamic} \
202,7 → 202,7
#undef TARGET_SUPPORTS_SYNC_CALLS
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/cris/linux.h gcc-5.3.0-zip/gcc/config/cris/linux.h
--- gcc-5.3.0-original/gcc/config/cris/linux.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/cris/linux.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/cris/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -102,7 +102,7 @@
#undef CRIS_DEFAULT_CPU_VERSION
214,7 → 214,7
#undef CRIS_LINK_SUBTARGET_SPEC
#define CRIS_LINK_SUBTARGET_SPEC \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/freebsd-spec.h gcc-5.3.0-zip/gcc/config/freebsd-spec.h
--- gcc-5.3.0-original/gcc/config/freebsd-spec.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/freebsd-spec.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/freebsd-spec.h 2015-06-25 13:53:14.000000000 -0400
@@ -129,9 +129,9 @@
#endif
229,7 → 229,7
/* NOTE: The freebsd-spec.h header is included also for various
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/frv/linux.h gcc-5.3.0-zip/gcc/config/frv/linux.h
--- gcc-5.3.0-original/gcc/config/frv/linux.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/frv/linux.h 2016-05-11 20:53:17.315195621 -0400
+++ gcc-5.3.0-zip/gcc/config/frv/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -34,7 +34,7 @@
#define ENDFILE_SPEC \
241,7 → 241,7
#undef LINK_SPEC
#define LINK_SPEC "\
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/i386/gnu.h gcc-5.3.0-zip/gcc/config/i386/gnu.h
--- gcc-5.3.0-original/gcc/config/i386/gnu.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/i386/gnu.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/i386/gnu.h 2015-01-05 07:33:28.000000000 -0500
@@ -22,7 +22,7 @@
#define GNU_USER_LINK_EMULATION "elf_i386"
253,7 → 253,7
#undef STARTFILE_SPEC
#if defined HAVE_LD_PIE
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu64.h gcc-5.3.0-zip/gcc/config/i386/kfreebsd-gnu64.h
--- gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu64.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu64.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/i386/kfreebsd-gnu64.h 2015-01-05 07:33:28.000000000 -0500
@@ -22,6 +22,6 @@
#define GNU_USER_LINK_EMULATION64 "elf_x86_64_fbsd"
266,7 → 266,7
+#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-kfreebsd-x86-64.so.1"
+#define GLIBC_DYNAMIC_LINKERX32 "/lib/ld-kfreebsd-x32.so.1"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu.h gcc-5.3.0-zip/gcc/config/i386/kfreebsd-gnu.h
--- gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu.h 2016-05-06 10:50:31.943799053 -0400
--- gcc-5.3.0-original/gcc/config/i386/kfreebsd-gnu.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/i386/kfreebsd-gnu.h 2015-01-05 07:33:28.000000000 -0500
@@ -19,4 +19,4 @@
<http://www.gnu.org/licenses/>. */
275,7 → 275,7
-#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/i386/linux64.h gcc-5.3.0-zip/gcc/config/i386/linux64.h
--- gcc-5.3.0-original/gcc/config/i386/linux64.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/i386/linux64.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/i386/linux64.h 2015-01-05 07:33:28.000000000 -0500
@@ -27,6 +27,6 @@
#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
288,7 → 288,7
+#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/i386/linux.h gcc-5.3.0-zip/gcc/config/i386/linux.h
--- gcc-5.3.0-original/gcc/config/i386/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/i386/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/i386/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -20,4 +20,4 @@
<http://www.gnu.org/licenses/>. */
297,7 → 297,7
-#define GLIBC_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/ia64/linux.h gcc-5.3.0-zip/gcc/config/ia64/linux.h
--- gcc-5.3.0-original/gcc/config/ia64/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/ia64/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/ia64/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -55,7 +55,7 @@
/* Define this for shared library support because it isn't in the main
309,7 → 309,7
#undef LINK_SPEC
#define LINK_SPEC "\
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/knetbsd-gnu.h gcc-5.3.0-zip/gcc/config/knetbsd-gnu.h
--- gcc-5.3.0-original/gcc/config/knetbsd-gnu.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/knetbsd-gnu.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/knetbsd-gnu.h 2015-01-05 07:33:28.000000000 -0500
@@ -32,4 +32,4 @@
318,7 → 318,7
-#define GNU_USER_DYNAMIC_LINKER "/tools/lib/ld.so.1"
+#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/kopensolaris-gnu.h gcc-5.3.0-zip/gcc/config/kopensolaris-gnu.h
--- gcc-5.3.0-original/gcc/config/kopensolaris-gnu.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/kopensolaris-gnu.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/kopensolaris-gnu.h 2015-01-05 07:33:28.000000000 -0500
@@ -31,5 +31,4 @@
while (0)
328,7 → 328,7
-
+#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/linux.h gcc-5.3.0-zip/gcc/config/linux.h
--- gcc-5.3.0-original/gcc/config/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -73,10 +73,10 @@
GLIBC_DYNAMIC_LINKER must be defined for each target using them, or
346,7 → 346,7
#define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
#define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/lm32/uclinux-elf.h gcc-5.3.0-zip/gcc/config/lm32/uclinux-elf.h
--- gcc-5.3.0-original/gcc/config/lm32/uclinux-elf.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/lm32/uclinux-elf.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/lm32/uclinux-elf.h 2015-01-05 07:33:28.000000000 -0500
@@ -67,7 +67,7 @@
%{shared:-shared} \
358,7 → 358,7
#define TARGET_OS_CPP_BUILTINS() GNU_USER_TARGET_OS_CPP_BUILTINS()
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/m68k/linux.h gcc-5.3.0-zip/gcc/config/m68k/linux.h
--- gcc-5.3.0-original/gcc/config/m68k/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/m68k/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/m68k/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -71,7 +71,7 @@
When the -shared link option is used a final link is not being
370,7 → 370,7
#undef LINK_SPEC
#define LINK_SPEC "-m m68kelf %{shared} \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/microblaze/linux.h gcc-5.3.0-zip/gcc/config/microblaze/linux.h
--- gcc-5.3.0-original/gcc/config/microblaze/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/microblaze/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/microblaze/linux.h 2015-05-28 10:08:19.000000000 -0400
@@ -28,7 +28,7 @@
#undef TLS_NEEDS_GOT
382,7 → 382,7
#define SUBTARGET_EXTRA_SPECS \
{ "dynamic_linker", DYNAMIC_LINKER }
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/mips/linux.h gcc-5.3.0-zip/gcc/config/mips/linux.h
--- gcc-5.3.0-original/gcc/config/mips/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/mips/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/mips/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -22,20 +22,20 @@
#define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
412,7 → 412,7
#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
#define GNU_USER_DYNAMIC_LINKERN32 \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/mn10300/linux.h gcc-5.3.0-zip/gcc/config/mn10300/linux.h
--- gcc-5.3.0-original/gcc/config/mn10300/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/mn10300/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/mn10300/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -32,7 +32,7 @@
#undef ASM_SPEC
424,7 → 424,7
#undef LINK_SPEC
#define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/pa/pa-linux.h gcc-5.3.0-zip/gcc/config/pa/pa-linux.h
--- gcc-5.3.0-original/gcc/config/pa/pa-linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/pa/pa-linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/pa/pa-linux.h 2015-09-24 20:04:26.000000000 -0400
@@ -37,7 +37,7 @@
/* Define this for shared library support because it isn't in the main
436,7 → 436,7
#undef LINK_SPEC
#define LINK_SPEC "\
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/rs6000/linux64.h gcc-5.3.0-zip/gcc/config/rs6000/linux64.h
--- gcc-5.3.0-original/gcc/config/rs6000/linux64.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/rs6000/linux64.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/rs6000/linux64.h 2015-03-09 19:18:57.000000000 -0400
@@ -357,14 +357,14 @@
#undef LINK_OS_DEFAULT_SPEC
459,7 → 459,7
#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
#elif DEFAULT_LIBC == LIBC_GLIBC
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/rs6000/sysv4.h gcc-5.3.0-zip/gcc/config/rs6000/sysv4.h
--- gcc-5.3.0-original/gcc/config/rs6000/sysv4.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/rs6000/sysv4.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/rs6000/sysv4.h 2015-09-24 09:46:45.000000000 -0400
@@ -757,8 +757,8 @@
473,7 → 473,7
#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
#elif !defined (DEFAULT_LIBC) || DEFAULT_LIBC == LIBC_GLIBC
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/s390/linux.h gcc-5.3.0-zip/gcc/config/s390/linux.h
--- gcc-5.3.0-original/gcc/config/s390/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/s390/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/s390/linux.h 2015-05-11 03:14:10.000000000 -0400
@@ -60,8 +60,8 @@
#define MULTILIB_DEFAULTS { "m31" }
487,7 → 487,7
#undef LINK_SPEC
#define LINK_SPEC \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/sh/linux.h gcc-5.3.0-zip/gcc/config/sh/linux.h
--- gcc-5.3.0-original/gcc/config/sh/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/sh/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/sh/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -43,7 +43,7 @@
499,7 → 499,7
#undef SUBTARGET_LINK_EMUL_SUFFIX
#define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/sparc/linux64.h gcc-5.3.0-zip/gcc/config/sparc/linux64.h
--- gcc-5.3.0-original/gcc/config/sparc/linux64.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/sparc/linux64.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/sparc/linux64.h 2015-01-05 07:33:28.000000000 -0500
@@ -84,8 +84,8 @@
When the -shared link option is used a final link is not being
522,7 → 522,7
%{!static: \
%{rdynamic:-export-dynamic} \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/sparc/linux.h gcc-5.3.0-zip/gcc/config/sparc/linux.h
--- gcc-5.3.0-original/gcc/config/sparc/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/sparc/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/sparc/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -83,7 +83,7 @@
When the -shared link option is used a final link is not being
534,7 → 534,7
#undef LINK_SPEC
#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/vax/linux.h gcc-5.3.0-zip/gcc/config/vax/linux.h
--- gcc-5.3.0-original/gcc/config/vax/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/vax/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/vax/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -41,7 +41,7 @@
%{!shared: \
546,7 → 546,7
#undef WCHAR_TYPE
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/xtensa/linux.h gcc-5.3.0-zip/gcc/config/xtensa/linux.h
--- gcc-5.3.0-original/gcc/config/xtensa/linux.h 2016-05-06 10:50:31.947799027 -0400
--- gcc-5.3.0-original/gcc/config/xtensa/linux.h 2016-05-11 20:53:17.319195598 -0400
+++ gcc-5.3.0-zip/gcc/config/xtensa/linux.h 2015-01-05 07:33:28.000000000 -0500
@@ -44,7 +44,7 @@
%{mlongcalls:--longcalls} \
696,8 → 696,8
+
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/zip/zip.c gcc-5.3.0-zip/gcc/config/zip/zip.c
--- gcc-5.3.0-original/gcc/config/zip/zip.c 1969-12-31 19:00:00.000000000 -0500
+++ gcc-5.3.0-zip/gcc/config/zip/zip.c 2016-05-02 21:56:27.075389925 -0400
@@ -0,0 +1,2185 @@
+++ gcc-5.3.0-zip/gcc/config/zip/zip.c 2016-05-09 11:40:35.637861735 -0400
@@ -0,0 +1,2286 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Filename: zip.c
808,8 → 808,8
+static unsigned HOST_WIDE_INT zip_const_anchor = 0x20000;
+static HOST_WIDE_INT zip_min_opb_imm = -0x20000;
+static HOST_WIDE_INT zip_max_opb_imm = 0x1ffff;
+static HOST_WIDE_INT zip_min_anchor_offset = -0x20000;
+static HOST_WIDE_INT zip_max_anchor_offset = 0x1ffff;
+static HOST_WIDE_INT zip_min_anchor_offset = -0x2000;
+static HOST_WIDE_INT zip_max_anchor_offset = 0x1fff;
+static HOST_WIDE_INT zip_min_mov_offset = -0x1000;
+static HOST_WIDE_INT zip_max_mov_offset = 0x0fff;
+static int zip_sched_issue_rate(void) { return 1; }
2285,6 → 2285,24
+}
+
+void
+zip_debug_ccode(int ccode) {
+ switch(ccode) {
+ case EQ: fprintf(stderr, "EQ"); break;
+ case NE: fprintf(stderr, "NE"); break;
+ case GT: fprintf(stderr, "GT"); break;
+ case GE: fprintf(stderr, "GE"); break;
+ case LT: fprintf(stderr, "LT"); break;
+ case LE: fprintf(stderr, "LE"); break;
+ case GTU: fprintf(stderr, "GTU"); break;
+ case GEU: fprintf(stderr, "GEU"); break;
+ case LTU: fprintf(stderr, "LTU"); break;
+ case LEU: fprintf(stderr, "LEU"); break;
+ default:
+ fprintf(stderr, "%d", ccode); break;
+ }
+}
+
+void
+zip_debug_insn(rtx_insn *insn ATTRIBUTE_UNUSED) {
+}
+
2654,8 → 2672,9
+ } return false;
+}
+
+void
+bool
+zip_expand_movsicc(rtx dst, rtx condition, rtx iftrue, rtx iffalse) {
+ rtx_insn *insn;
+ const bool dbg = ((ALL_DEBUG_ON)||(false))&&(!ALL_DEBUG_OFF);
+ if (dbg) fprintf(stderr, "ZIP::MOVSICC\n");
+ if (dbg) zip_debug_rtx_pfx("DST", dst);
2667,11 → 2686,25
+ rtx cmpa = XEXP(condition,0), cmpb=XEXP(condition,1);
+ enum rtx_code cmpcode = GET_CODE(condition);
+
+ // Want to always do the false expression, and only sometimes the
+ // true expression. If, however, the false is a constant and the
+ // true and destination are the same thing, this doesn't work.
+ if (rtx_equal_p(dst, iftrue)) {
+ // If the true value is the same as the destination already,
+ // then swap so we only do the condition on true
+ rtx tem = iffalse;
+ iffalse = iftrue;
+ iftrue = tem;
+ cmpcode = reverse_condition(cmpcode);
+ }
+
+ //; Do we need to swap or adjust the condition?
+ if (zip_supported_condition((int)cmpcode)) {
+ // Keep everything as is
+ if (dbg) fprintf(stderr, "ZIP::MOVSICC -- Condition is supported\n");
+ } else if ((zip_supported_condition(reverse_condition(cmpcode)))
+ &&(!MEM_P(iffalse))) {
+ &&(!MEM_P(iffalse))
+ &&(!rtx_equal_p(dst,iffalse))) {
+ rtx tem = iffalse;
+ iffalse = iftrue;
+ iftrue = tem;
2717,21 → 2750,71
+ cmpcode = (enum rtx_code)cod;
+ }
+
+ if (dbg) fprintf(stderr, "ZIP::MOVSICC -- Post-Modes\n");
+ if (dbg) zip_debug_rtx_pfx("DST-P: ", dst);
+ if (dbg) zip_debug_rtx_pfx("CND-P: ", condition);
+ if (dbg) zip_debug_rtx_pfx("TRU-P: ", iftrue);
+ if (dbg) zip_debug_rtx_pfx("FAL-P: ", iffalse);
+
+ if (!zip_supported_condition((int)cmpcode)) {
+ if (dbg) {
+ fprintf(stderr, "ZIP::MOVSICC -- Unsupported condition: ");
+ zip_debug_ccode(cmpcode);
+ fprintf(stderr, "\n");
+ }
+ return false;
+ }
+ gcc_assert(zip_supported_condition((int)cmpcode));
+
+ //; Always do the default move
+ emit_move_insn(dst, iffalse);
+ bool conditionally_do_false = false;
+ conditionally_do_false = (MEM_P(iffalse))
+ &&(!rtx_equal_p(dst,iffalse))
+ &&(zip_supported_condition(reverse_condition(cmpcode)));
+ conditionally_do_false = conditionally_do_false || (rtx_equal_p(dst,iftrue));
+ if ((conditionally_do_false)&&(!zip_supported_condition(reverse_condition(cmpcode)))) {
+ if (dbg) {
+ fprintf(stderr, "ZIP::MOVSICC -- Cant support the reverse condition: ");
+ zip_debug_ccode(cmpcode);
+ fprintf(stderr, "\n");
+ }
+ return false;
+ }
+
+ if ((!rtx_equal_p(dst, iffalse))&&(!conditionally_do_false)) {
+ if (dbg)
+ fprintf(stderr, "ZIP::MOVSICC -- EMITTING MOVE FALSE->DST\n");
+ insn = emit_move_insn(dst, iffalse);
+ if (dbg) zip_debug_rtx_pfx("BARE-U: ", insn);
+ }
+
+ rtx cc_rtx = gen_rtx_REG(CCmode, zip_CC);
+
+ //; Now let's get our comparison right
+ emit_insn(gen_rtx_SET(VOIDmode, cc_rtx,
+ if (dbg) fprintf(stderr, "ZIP::MOVSICC -- EMITTING COMPARISON\n");
+ insn = emit_insn(gen_rtx_SET(VOIDmode, cc_rtx,
+ gen_rtx_COMPARE(CCmode, cmpa, cmpb)));
+ if (dbg) zip_debug_rtx_pfx("BARE-C: ", insn);
+
+ //; Finally, let's load the value on true
+ emit_insn(gen_movsicc_bare(dst,
+ if (!rtx_equal_p(dst, iftrue)) {
+ if (dbg) fprintf(stderr, "ZIP::MOVSICC -- EMITTING BARE\n");
+ insn=emit_insn(gen_movsicc_bare(dst,
+ gen_rtx_fmt_ee(cmpcode, SImode, NULL_RTX, NULL_RTX),
+ iftrue, dst));
+ if (dbg) zip_debug_rtx_pfx("BARE-T: ", insn);
+ }
+
+ if (conditionally_do_false) {
+ gcc_assert(zip_supported_condition(reverse_condition(cmpcode)));
+ insn=emit_insn(gen_movsicc_bare(dst,
+ gen_rtx_fmt_ee(reverse_condition(cmpcode), SImode,
+ NULL_RTX, NULL_RTX), iffalse, dst));
+ if (dbg) zip_debug_rtx_pfx("BARE-F: ", insn);
+ }
+
+ // Return true on success
+ return true;
+}
+
+const char *zip_addsicc(rtx dst, rtx condition, rtx ifsrc, rtx addv ATTRIBUTE_UNUSED) {
2830,26 → 2913,16
+}
+
+void
+zip_ifcvt_modify_cancel(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+zip_ifcvt_machdep_init(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+/*
+ fprintf(stderr, "IFCVT -- CANCEL\n");
+ zip_ifcvt_info = NULL;
+*/
+if (!ceinfo->then_bb)
+ return;
+rtx_insn *insn;
+FOR_BB_INSNS(ceinfo->then_bb, insn) {
+ fprintf(stderr, "IFCVT -- INIT\n");
+ zip_debug_rtx_pfx("INIT-BB", insn);
+}
+
+void
+zip_ifcvt_modify_final(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+/*
+rtx_insn *insn;
+FOR_BB_INSNS(ceinfo->test_bb, insn)
+ fprintf(stderr, "IFCVT -- FINAL\n");
+ zip_debug_rtx_pfx("FINAL-TEST-BB", insn);
+ zip_ifcvt_info = NULL;
+*/
+}
+
+void
+zip_ifcvt_machdep_init(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+/*
+ zip_ifcvt_info = NULL;
+ rtx_insn *insn, *ifinsn = NULL;
2876,6 → 2949,34
+*/
+}
+
+void
+zip_ifcvt_modify_insn(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED,
+ rtx pattern ATTRIBUTE_UNUSED,
+ rtx_insn *insn ATTRIBUTE_UNUSED) {
+ // zip_debug_rtx_pfx("MODIFY-INSN: ", insn);
+}
+
+void
+zip_ifcvt_modify_cancel(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+/*
+ fprintf(stderr, "IFCVT -- CANCEL\n");
+ zip_ifcvt_info = NULL;
+*/
+}
+
+void
+zip_ifcvt_modify_final(struct ce_if_block *ceinfo ATTRIBUTE_UNUSED) {
+/*
+rtx_insn *insn;
+FOR_BB_INSNS(ceinfo->test_bb, insn) {
+ fprintf(stderr, "IFCVT -- FINAL\n");
+ zip_debug_rtx_pfx("FINAL-TEST-BB", insn);
+}
+ zip_ifcvt_info = NULL;
+*/
+}
+
+
+int zip_insn_sets_cc(rtx_insn *insn) {
+ return (get_attr_ccresult(insn)==CCRESULT_SET);
+}
2885,7 → 2986,7
+}
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/zip/zip.h gcc-5.3.0-zip/gcc/config/zip/zip.h
--- gcc-5.3.0-original/gcc/config/zip/zip.h 1969-12-31 19:00:00.000000000 -0500
+++ gcc-5.3.0-zip/gcc/config/zip/zip.h 2016-04-30 19:30:48.670201745 -0400
+++ gcc-5.3.0-zip/gcc/config/zip/zip.h 2016-05-08 21:38:59.271655207 -0400
@@ -0,0 +1,4060 @@
+////////////////////////////////////////////////////////////////////////////////
+//
6445,7 → 6546,7
+ * ZipCPU --- I need to set this to properly take advantage of our conditional
+ * execution and conditional testing capabilities.
+ */
+// #warning "Need to come back to this."
+#define IFCVT_MODIFY_INSN(CE,PATRN,INSN) zip_ifcvt_modify_insn(CE,PATRN,INSN)
+
+
+/* IFCVT_MODIFY_FINAL(CEINFO) ... A C expression to perform any final
6949,8 → 7050,8
+
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/zip/zip.md gcc-5.3.0-zip/gcc/config/zip/zip.md
--- gcc-5.3.0-original/gcc/config/zip/zip.md 1969-12-31 19:00:00.000000000 -0500
+++ gcc-5.3.0-zip/gcc/config/zip/zip.md 2016-05-04 11:07:24.042917943 -0400
@@ -0,0 +1,3219 @@
+++ gcc-5.3.0-zip/gcc/config/zip/zip.md 2016-05-09 16:29:28.701366941 -0400
@@ -0,0 +1,3238 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
+;; Filename: zip.md
8696,8 → 8797,10
+ (match_operand:ZI 3 "nonmemory_operand" "rio")))]
+ ""
+ {
+ zip_expand_movsicc(operands[0], operands[1], operands[2], operands[3]);
+ DONE;
+ if (zip_expand_movsicc(operands[0], operands[1], operands[2], operands[3]))
+ DONE;
+ else
+ FAIL;
+ })
+(define_insn_and_split "movsicc_bare"
+ [(set (match_operand:SI 0 "register_operand" "=r")
9694,29 → 9797,29
+; Transform to:
+; CMP 1(R0),R1
+; BLT lbl
+; ... why? when we support a BGE instruction?
+;(define_peephole2
+ ;[(set (reg:CC CC_REG) (compare:CC
+ ;(match_operand:SI 0 "register_operand")
+ ;(match_operand:SI 1 "register_operand")))
+ ;(set (pc) (if_then_else (ge (reg:CC CC_REG) (const_int 0))
+ ;(label_ref (match_operand 2 ""))
+ ;(pc)))]
+ ;"(ZIP_PEEPHOLE)"
+ ;[(set (reg:CC CC_REG) (compare:CC (match_dup 1)
+ ;(plus:SI (match_dup 0) (const_int 1))))
+ ;(set (pc) (if_then_else (lt (reg:CC CC_REG) (const_int 0))
+ ;(label_ref (match_dup 2))
+ ;(pc)))]
+ ;"")
+;
+(define_peephole2
+ [(set (reg:CC CC_REG) (compare:CC
+ (match_operand:SI 0 "register_operand")
+ (match_operand:SI 1 "register_operand")))
+ (set (pc) (if_then_else (ge (reg:CC CC_REG) (const_int 0))
+ (label_ref (match_operand 2 ""))
+ (pc)))]
+ "(ZIP_PEEPHOLE)"
+ [(set (reg:CC CC_REG) (compare:CC (match_dup 1)
+ (plus:SI (match_dup 0) (const_int 1))))
+ (set (pc) (if_then_else (lt (reg:CC CC_REG) (const_int 0))
+ (label_ref (match_dup 2))
+ (pc)))]
+ "")
+;
+;
+; Match:
+; CMP R1,R0
+; BLEU lbl
+; Transform to:
+; CMP 1(R1),R0
+; BLT lbl
+; BC lbl
+;
+(define_peephole2
+ [(set (reg:CC CC_REG) (compare:CC
9733,6 → 9836,15
+ (pc)))]
+ "")
+;
+;
+;
+; Match:
+; CMP R1,R0
+; BLE lbl
+; Transform to:
+; CMP 1(R1),R0
+; BLT lbl
+;
+(define_peephole2
+ [(set (reg:CC CC_REG)
+ (compare:CC (match_operand:SI 0 "register_operand" "")
9746,6 → 9858,14
+ (label_ref (match_dup 2))
+ (pc)))]
+ "operands[1] = GEN_INT(INTVAL(operands[1])+1);")
+;
+; Match:
+; CMP R1,R0
+; BLEU lbl
+; Transform to:
+; CMP 1(R1),R0
+; BC(LTU) lbl
+;
+(define_peephole2
+ [(set (reg:CC CC_REG)
+ (compare:CC (match_operand:SI 0 "register_operand" "")
9755,7 → 9875,7
+ (pc)))]
+ "(ZIP_PEEPHOLE)&&(INTVAL(operands[1])<((1<<17)-2))"
+ [(set (reg:CC CC_REG) (compare:CC (match_dup 0) (match_dup 1)))
+ (set (pc) (if_then_else (lt (reg:CC CC_REG) (const_int 0))
+ (set (pc) (if_then_else (ltu (reg:CC CC_REG) (const_int 0))
+ (label_ref (match_dup 2))
+ (pc)))]
+ "operands[1] = GEN_INT(INTVAL(operands[1])+1);")
10199,8 → 10319,8
+// config directory.
diff -Naur '--exclude=*.swp' gcc-5.3.0-original/gcc/config/zip/zip-protos.h gcc-5.3.0-zip/gcc/config/zip/zip-protos.h
--- gcc-5.3.0-original/gcc/config/zip/zip-protos.h 1969-12-31 19:00:00.000000000 -0500
+++ gcc-5.3.0-zip/gcc/config/zip/zip-protos.h 2016-04-21 16:19:02.122215475 -0400
@@ -0,0 +1,82 @@
+++ gcc-5.3.0-zip/gcc/config/zip/zip-protos.h 2016-05-09 11:16:54.734258166 -0400
@@ -0,0 +1,83 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Filename: zip-protos.h
10242,7 → 10362,7
+extern bool zip_supported_condition(int c);
+extern void zip_expand_prologue(void);
+extern void zip_expand_epilogue(void);
+extern void zip_expand_movsicc(rtx,rtx,rtx,rtx);
+extern bool zip_expand_movsicc(rtx,rtx,rtx,rtx);
+extern int zip_initial_elimination_offset(int, int);
+extern void zip_print_operand(FILE *, rtx, int);
+extern void zip_print_operand_address(FILE *, rtx);
10280,6 → 10400,7
+extern void zip_ifcvt_modify_cancel(struct ce_if_block *ceinfo);
+extern void zip_ifcvt_modify_final(struct ce_if_block *ceinfo);
+extern void zip_ifcvt_modify_tests(struct ce_if_block *ceinfo, rtx *true_expr, rtx *false_expr);
+extern void zip_ifcvt_modify_insn(struct ce_if_block *ceinfo, rtx pattern, rtx_insn *insn);
+
+#endif
+

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.