Compare commits
218 Commits
Author | SHA1 | Date |
---|---|---|
Jakub Jelinek | 891cef7d9b | |
Jakub Jelinek | 9bce8e2449 | |
Jakub Jelinek | 55f9b2f336 | |
Fedora Release Engineering | f8b6352429 | |
Jakub Jelinek | 5e141990fb | |
Jakub Jelinek | 912e74c756 | |
Jakub Jelinek | b84725ac52 | |
Jakub Jelinek | 7de85a2603 | |
Jakub Jelinek | 576d41c1c6 | |
Jakub Jelinek | 562d27c22f | |
Jakub Jelinek | 57a884df51 | |
Jakub Jelinek | 04dfce99db | |
Jakub Jelinek | b05570344e | |
Jakub Jelinek | 52eb664223 | |
Florian Weimer | 0d8c061e19 | |
Jerry James | 56772a9401 | |
Jerry James | 4110c03341 | |
Jerry James | 4c8c128cd0 | |
Miro Hrončok | f684732e50 | |
Jakub Jelinek | 4562ca924e | |
Fedora Release Engineering | 90028182f3 | |
Jakub Jelinek | 6919aa138f | |
Jakub Jelinek | 672c273c6d | |
Jakub Jelinek | 94498d7104 | |
Jakub Jelinek | 28742415b7 | |
Jakub Jelinek | f2dc6d80c8 | |
Jakub Jelinek | b2a5d6a477 | |
Jakub Jelinek | fd99b9378d | |
Jakub Jelinek | a3fcce8f5b | |
Jakub Jelinek | 84af04ddb6 | |
Jakub Jelinek | b6b1340286 | |
Jakub Jelinek | 84ce3f0d05 | |
Jakub Jelinek | 5c04074052 | |
Jakub Jelinek | 4d0e748417 | |
Jakub Jelinek | 1d6c11d8df | |
Jakub Jelinek | 843493ecf7 | |
Jakub Jelinek | bad9bc25a4 | |
Jakub Jelinek | f790525bec | |
Jakub Jelinek | fc147e70c0 | |
Jakub Jelinek | 8ccdd26200 | |
Jakub Jelinek | d1c6bd89f3 | |
Jakub Jelinek | e0c920a406 | |
Jakub Jelinek | d228ee264c | |
Jakub Jelinek | e6073613ef | |
Jakub Jelinek | f147a68289 | |
Jakub Jelinek | 7ee3a099fa | |
Jakub Jelinek | fe09f8496b | |
Jakub Jelinek | 16bcddd9d4 | |
Fedora Release Engineering | 7545ecb969 | |
Jakub Jelinek | a6c3c8f082 | |
Igor Gnatenko | d895623061 | |
Igor Gnatenko | a71fb3364e | |
Igor Gnatenko | db0aca6b64 | |
Jakub Jelinek | 215844b31b | |
Jakub Jelinek | 80dc8803df | |
Igor Gnatenko | 3759f6f554 | |
Jakub Jelinek | adee8bcb39 | |
Jakub Jelinek | cee0dddd34 | |
Jakub Jelinek | da335fc250 | |
Jakub Jelinek | bcdeb85901 | |
Jakub Jelinek | 1321d9a8de | |
Jakub Jelinek | 3694befabb | |
Jakub Jelinek | 2a22f8c83a | |
Jakub Jelinek | 866b034132 | |
Jakub Jelinek | 17d43f4d58 | |
Jakub Jelinek | b627ff6a1c | |
Jakub Jelinek | 98b4937fcb | |
Jakub Jelinek | 858f1e25fb | |
Jakub Jelinek | e66bcabdd3 | |
Jakub Jelinek | a2239731d4 | |
Jakub Jelinek | c05efdcd33 | |
Jakub Jelinek | 6e4a12be24 | |
Jakub Jelinek | 7df147abdd | |
Jakub Jelinek | 2edf51cd28 | |
Fedora Release Engineering | 3deee803bf | |
Jakub Jelinek | 8602ede777 | |
Miro Hrončok | 8fb0e5b0d3 | |
Jakub Jelinek | 7ad4cfb1f2 | |
Jakub Jelinek | c01972f342 | |
Jakub Jelinek | b1fe12b88a | |
Miro Hrončok | 0aaf98d346 | |
Jakub Jelinek | c0d3a20ab3 | |
Jakub Jelinek | 4b90559c50 | |
Miro Hrončok | e0b3768e1a | |
Jakub Jelinek | 391f8204b0 | |
Jakub Jelinek | b7ec01b44a | |
Jakub Jelinek | db4105af40 | |
Jakub Jelinek | eb398c7fb1 | |
Jakub Jelinek | 0d6e9e6a5b | |
Marek Polacek | 3ae68fd84a | |
Jakub Jelinek | 9647f3f8db | |
Jakub Jelinek | 0e0506dd37 | |
Jakub Jelinek | 1bfe0e3c3b | |
Jakub Jelinek | 83dbb2847c | |
Jakub Jelinek | 86d615d880 | |
Jakub Jelinek | b182d5ff6b | |
Jakub Jelinek | 2a24f771d1 | |
Jakub Jelinek | f445959efa | |
Jakub Jelinek | 16819750d2 | |
Jakub Jelinek | d301a3c7b8 | |
Igor Gnatenko | ff5dc29cd1 | |
Igor Gnatenko | 7d69d114a8 | |
Jakub Jelinek | 497de73bd7 | |
Jakub Jelinek | c0ae016cb4 | |
Jakub Jelinek | 7c58fda150 | |
Jakub Jelinek | 313e678076 | |
Jakub Jelinek | 08f661c823 | |
Jakub Jelinek | d40df5fcf2 | |
Jakub Jelinek | e6bd153753 | |
Fedora Release Engineering | cc9b5fa3ba | |
Florian Weimer | 47b8ada335 | |
Richard W.M. Jones | ca8c0f7dc6 | |
Jeff Law | fa22fac534 | |
Jakub Jelinek | 216b951886 | |
Jakub Jelinek | 7a1512fd56 | |
Jakub Jelinek | 3139eaf997 | |
Jakub Jelinek | da33ffbe57 | |
Jakub Jelinek | b147991d7c | |
Jakub Jelinek | e400728936 | |
Jeff Law | 6af92eba78 | |
Jakub Jelinek | e90615843b | |
Jakub Jelinek | a6ea9c4518 | |
Jakub Jelinek | 402f1e9204 | |
Jakub Jelinek | f36e50eab5 | |
Jakub Jelinek | 8f4badaa38 | |
Jakub Jelinek | d69736566d | |
Marek Polacek | 544398b502 | |
Jeff Law | 2cf19e11cb | |
Jeff Law | e987aff0a2 | |
Jakub Jelinek | 553b93f777 | |
Marek Polacek | 82e3c0071b | |
Marek Polacek | 6e856a1b72 | |
Jakub Jelinek | ff60308ab9 | |
Jakub Jelinek | 9b6d8e7c01 | |
Jakub Jelinek | 23f4b29ddd | |
Jakub Jelinek | 42139e4c56 | |
Fedora Release Engineering | 28eca72fa2 | |
Jakub Jelinek | dc54e4f153 | |
Jakub Jelinek | e3161c6575 | |
Jakub Jelinek | 5e51bccff0 | |
Jakub Jelinek | ac2a849717 | |
Jakub Jelinek | f5843a4192 | |
Jakub Jelinek | 7d28ff24f9 | |
Jakub Jelinek | e8e4643647 | |
Jakub Jelinek | e7ba2ccc61 | |
Jakub Jelinek | dcf86feb99 | |
Jakub Jelinek | 7a880b1a75 | |
Jakub Jelinek | fe7fce2ad1 | |
Jakub Jelinek | 45a2f253fb | |
Jakub Jelinek | 015c95afae | |
Jakub Jelinek | 0ec4e456b8 | |
Jakub Jelinek | ecfa641ec4 | |
Jakub Jelinek | 3e19e07261 | |
Jakub Jelinek | 61f26fa336 | |
Jakub Jelinek | 5e173247a4 | |
Jakub Jelinek | 066310e826 | |
Jakub Jelinek | 6c2cfcacd9 | |
Jakub Jelinek | 88ff65fe51 | |
Jakub Jelinek | 4708d93f41 | |
Jakub Jelinek | cc580afc17 | |
Jakub Jelinek | 9c103286cf | |
Jakub Jelinek | f9528196b2 | |
Jakub Jelinek | 1c8b31bfd3 | |
Jakub Jelinek | a15b5bd3a0 | |
Jakub Jelinek | d4df112f70 | |
Jakub Jelinek | 03d47e4b9f | |
Jakub Jelinek | 9e5fffaae3 | |
Jakub Jelinek | 398cd1e186 | |
Jakub Jelinek | 4d72b19d1c | |
Jakub Jelinek | 3d5e14ec38 | |
Jakub Jelinek | 6ed6e5a4c3 | |
Jakub Jelinek | 98a12cbd71 | |
Jakub Jelinek | 4c8d27c4d6 | |
Jakub Jelinek | 557c86d25c | |
Jakub Jelinek | 16c6a8852b | |
Jakub Jelinek | 4839e4255b | |
Jakub Jelinek | a3b64e0868 | |
Jakub Jelinek | 010b19f294 | |
Jakub Jelinek | a96763b324 | |
Jakub Jelinek | dcf3c8d360 | |
Jakub Jelinek | 8e4a3f2d33 | |
Jakub Jelinek | 50fa9e4ee3 | |
Jakub Jelinek | 31e7eb359b | |
Jakub Jelinek | 4f5892b0e1 | |
Jakub Jelinek | 39e0659a62 | |
Jakub Jelinek | 0ccb8bbebc | |
Jakub Jelinek | f77ea1a1aa | |
Jakub Jelinek | aece5e1599 | |
Jakub Jelinek | fd1cb09e79 | |
Jakub Jelinek | b66b3a4e1c | |
Jakub Jelinek | bef1492459 | |
Jakub Jelinek | ed49338072 | |
Jakub Jelinek | 47e7711955 | |
Jakub Jelinek | 34ff97e734 | |
Peter Robinson | 8297b8b107 | |
Jakub Jelinek | aed55db9d5 | |
Jakub Jelinek | 005db08c91 | |
Jakub Jelinek | f027054e0f | |
Jakub Jelinek | 773cefac2c | |
Jakub Jelinek | 8a240523f5 | |
Jakub Jelinek | d9e1ca5983 | |
Jakub Jelinek | 89e370f159 | |
Jakub Jelinek | ec74b26ecd | |
Jakub Jelinek | cde96063b7 | |
Jakub Jelinek | f7b06a7726 | |
Jakub Jelinek | 395869404d | |
Jakub Jelinek | 97475d9eac | |
Dennis Gilmore | 348f6fd9c9 | |
Jakub Jelinek | 2d005021d3 | |
Jakub Jelinek | 885401bf7e | |
Jakub Jelinek | 4be70d1ef3 | |
Jakub Jelinek | 314efdbb41 | |
Jakub Jelinek | bd1b81e9ec | |
Jakub Jelinek | d85626def8 | |
Jakub Jelinek | cc2a83d686 | |
Dan Horák | 9ac4480c60 | |
Orion Poplawski | 9cda1c00f1 | |
Orion Poplawski | 42a3075cdf |
|
@ -1,28 +1,8 @@
|
|||
/gcc-5.0.0-20150123.tar.bz2
|
||||
/gcc-5.0.0-20150130.tar.bz2
|
||||
/gcc-5.0.0-20150205.tar.bz2
|
||||
/gcc-5.0.0-20150206.tar.bz2
|
||||
/gcc-5.0.0-20150208.tar.bz2
|
||||
/gcc-5.0.0-20150210.tar.bz2
|
||||
/gcc-5.0.0-20150212.tar.bz2
|
||||
/gcc-5.0.0-20150214.tar.bz2
|
||||
/gcc-5.0.0-20150216.tar.bz2
|
||||
/gcc-5.0.0-20150217.tar.bz2
|
||||
/gcc-5.0.0-20150224.tar.bz2
|
||||
/gcc-5.0.0-20150226.tar.bz2
|
||||
/gcc-5.0.0-20150313.tar.bz2
|
||||
/gcc-5.0.0-20150316.tar.bz2
|
||||
/gcc-5.0.0-20150319.tar.bz2
|
||||
/gcc-5.0.0-20150407.tar.bz2
|
||||
/gcc-5.0.1-20150413.tar.bz2
|
||||
/gcc-5.0.1-20150417.tar.bz2
|
||||
/gcc-5.1.1-20150422.tar.bz2
|
||||
/gcc-5.1.1-20150606.tar.bz2
|
||||
/gcc-5.1.1-20150612.tar.bz2
|
||||
/gcc-5.1.1-20150618.tar.bz2
|
||||
/gcc-5.1.1-20150707.tar.bz2
|
||||
/gcc-5.2.1-20150716.tar.bz2
|
||||
/gcc-5.2.1-20150902.tar.bz2
|
||||
/gcc-5.2.1-20150929.tar.bz2
|
||||
/gcc-5.2.1-20151104.tar.bz2
|
||||
/gcc-5.3.1-20151207.tar.bz2
|
||||
/gcc-10.0.1-20200118.tar.xz
|
||||
/newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz
|
||||
/nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz
|
||||
/gcc-10.0.1-20200121.tar.xz
|
||||
/gcc-10.0.1-20200123.tar.xz
|
||||
/gcc-10.0.1-20200126.tar.xz
|
||||
/gcc-10.0.1-20200130.tar.xz
|
||||
/gcc-10.0.1-20200216.tar.xz
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
2017-02-25 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* configure.ac: When adding -Wno-format, also add -Wno-format-security.
|
||||
* configure: Regenerated.
|
||||
|
||||
--- gcc/configure.ac.jj 2017-02-13 12:20:53.000000000 +0100
|
||||
+++ gcc/configure.ac 2017-02-25 12:42:32.859175403 +0100
|
||||
@@ -480,7 +480,7 @@ AC_ARG_ENABLE(build-format-warnings,
|
||||
AS_HELP_STRING([--disable-build-format-warnings],[don't use -Wformat while building GCC]),
|
||||
[],[enable_build_format_warnings=yes])
|
||||
AS_IF([test $enable_build_format_warnings = no],
|
||||
- [wf_opt=-Wno-format],[wf_opt=])
|
||||
+ [wf_opt="-Wno-format -Wno-format-security"],[wf_opt=])
|
||||
ACX_PROG_CXX_WARNING_OPTS(
|
||||
m4_quote(m4_do([-W -Wall -Wno-narrowing -Wwrite-strings ],
|
||||
[-Wcast-qual -Wno-error=format-diag $wf_opt])),
|
||||
--- gcc/configure.jj 2017-02-13 12:20:52.000000000 +0100
|
||||
+++ gcc/configure 2017-02-25 12:42:50.041946391 +0100
|
||||
@@ -6647,7 +6647,7 @@ else
|
||||
fi
|
||||
|
||||
if test $enable_build_format_warnings = no; then :
|
||||
- wf_opt=-Wno-format
|
||||
+ wf_opt="-Wno-format -Wno-format-security"
|
||||
else
|
||||
wf_opt=
|
||||
fi
|
|
@ -0,0 +1,20 @@
|
|||
2019-01-17 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* d-spec.cc (lang_specific_driver): Make -shared-libphobos
|
||||
the default rather than -static-libphobos.
|
||||
|
||||
--- gcc/d/d-spec.cc.jj 2019-01-01 12:37:49.502444257 +0100
|
||||
+++ gcc/d/d-spec.cc 2019-01-17 17:09:45.364949246 +0100
|
||||
@@ -405,9 +405,9 @@ lang_specific_driver (cl_decoded_option
|
||||
/* Add `-lgphobos' if we haven't already done so. */
|
||||
if (phobos_library != PHOBOS_NOLINK && need_phobos)
|
||||
{
|
||||
- /* Default to static linking. */
|
||||
- if (phobos_library != PHOBOS_DYNAMIC)
|
||||
- phobos_library = PHOBOS_STATIC;
|
||||
+ /* Default to shared linking. */
|
||||
+ if (phobos_library != PHOBOS_STATIC)
|
||||
+ phobos_library = PHOBOS_DYNAMIC;
|
||||
|
||||
#ifdef HAVE_LD_STATIC_DYNAMIC
|
||||
if (phobos_library == PHOBOS_DYNAMIC && static_link)
|
|
@ -0,0 +1,122 @@
|
|||
2019-01-17 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* gcc.c (offload_targets_default): New variable.
|
||||
(process_command): Set it if -foffload is defaulted.
|
||||
(driver::maybe_putenv_OFFLOAD_TARGETS): Add OFFLOAD_TARGET_DEFAULT=1
|
||||
into environment if -foffload has been defaulted.
|
||||
* lto-wrapper.c (OFFLOAD_TARGET_DEFAULT_ENV): Define.
|
||||
(compile_offload_image): If OFFLOAD_TARGET_DEFAULT
|
||||
is in the environment, don't fail if corresponding mkoffload
|
||||
can't be found.
|
||||
(compile_images_for_offload_targets): Likewise. Free and clear
|
||||
offload_names if no valid offload is found.
|
||||
libgomp/
|
||||
* target.c (gomp_load_plugin_for_device): If a plugin can't be
|
||||
dlopened, assume it has no devices silently.
|
||||
|
||||
--- gcc/gcc.c.jj 2017-01-17 10:28:40.000000000 +0100
|
||||
+++ gcc/gcc.c 2017-01-20 16:26:29.649962902 +0100
|
||||
@@ -290,6 +290,10 @@ static const char *spec_host_machine = D
|
||||
|
||||
static char *offload_targets = NULL;
|
||||
|
||||
+/* Set to true if -foffload has not been used and offload_targets
|
||||
+ is set to the configured in default. */
|
||||
+static bool offload_targets_default;
|
||||
+
|
||||
/* Nonzero if cross-compiling.
|
||||
When -b is used, the value comes from the `specs' file. */
|
||||
|
||||
@@ -4457,7 +4461,10 @@ process_command (unsigned int decoded_op
|
||||
/* If the user didn't specify any, default to all configured offload
|
||||
targets. */
|
||||
if (ENABLE_OFFLOADING && offload_targets == NULL)
|
||||
- handle_foffload_option (OFFLOAD_TARGETS);
|
||||
+ {
|
||||
+ handle_foffload_option (OFFLOAD_TARGETS);
|
||||
+ offload_targets_default = true;
|
||||
+ }
|
||||
|
||||
if (output_file
|
||||
&& strcmp (output_file, "-") != 0
|
||||
@@ -7693,6 +7700,8 @@ driver::maybe_putenv_OFFLOAD_TARGETS ()
|
||||
obstack_grow (&collect_obstack, offload_targets,
|
||||
strlen (offload_targets) + 1);
|
||||
xputenv (XOBFINISH (&collect_obstack, char *));
|
||||
+ if (offload_targets_default)
|
||||
+ xputenv ("OFFLOAD_TARGET_DEFAULT=1");
|
||||
}
|
||||
|
||||
free (offload_targets);
|
||||
--- gcc/lto-wrapper.c.jj 2017-01-01 12:45:34.000000000 +0100
|
||||
+++ gcc/lto-wrapper.c 2017-01-20 16:34:18.294016997 +0100
|
||||
@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3.
|
||||
/* Environment variable, used for passing the names of offload targets from GCC
|
||||
driver to lto-wrapper. */
|
||||
#define OFFLOAD_TARGET_NAMES_ENV "OFFLOAD_TARGET_NAMES"
|
||||
+#define OFFLOAD_TARGET_DEFAULT_ENV "OFFLOAD_TARGET_DEFAULT"
|
||||
|
||||
enum lto_mode_d {
|
||||
LTO_MODE_NONE, /* Not doing LTO. */
|
||||
@@ -822,6 +823,12 @@ compile_offload_image (const char *targe
|
||||
break;
|
||||
}
|
||||
|
||||
+ if (!compiler && getenv (OFFLOAD_TARGET_DEFAULT_ENV))
|
||||
+ {
|
||||
+ free_array_of_ptrs ((void **) paths, n_paths);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
if (!compiler)
|
||||
fatal_error (input_location,
|
||||
"could not find %s in %s (consider using %<-B%>)",
|
||||
@@ -885,6 +892,7 @@ compile_images_for_offload_targets (unsi
|
||||
unsigned num_targets = parse_env_var (target_names, &names, NULL);
|
||||
|
||||
int next_name_entry = 0;
|
||||
+ bool hsa_seen = false;
|
||||
const char *compiler_path = getenv ("COMPILER_PATH");
|
||||
if (!compiler_path)
|
||||
goto out;
|
||||
@@ -897,18 +905,26 @@ compile_images_for_offload_targets (unsi
|
||||
/* HSA does not use LTO-like streaming and a different compiler, skip
|
||||
it. */
|
||||
if (strcmp (names[i], "hsa") == 0)
|
||||
- continue;
|
||||
+ {
|
||||
+ hsa_seen = true;
|
||||
+ continue;
|
||||
+ }
|
||||
|
||||
offload_names[next_name_entry]
|
||||
= compile_offload_image (names[i], compiler_path, in_argc, in_argv,
|
||||
compiler_opts, compiler_opt_count,
|
||||
linker_opts, linker_opt_count);
|
||||
if (!offload_names[next_name_entry])
|
||||
- fatal_error (input_location,
|
||||
- "problem with building target image for %s", names[i]);
|
||||
+ continue;
|
||||
next_name_entry++;
|
||||
}
|
||||
|
||||
+ if (next_name_entry == 0 && !hsa_seen)
|
||||
+ {
|
||||
+ free (offload_names);
|
||||
+ offload_names = NULL;
|
||||
+ }
|
||||
+
|
||||
out:
|
||||
free_array_of_ptrs ((void **) names, num_targets);
|
||||
}
|
||||
--- libgomp/target.c.jj 2017-01-01 12:45:52.000000000 +0100
|
||||
+++ libgomp/target.c 2017-01-20 20:12:13.756710875 +0100
|
||||
@@ -2356,7 +2356,7 @@ gomp_load_plugin_for_device (struct gomp
|
||||
|
||||
void *plugin_handle = dlopen (plugin_name, RTLD_LAZY);
|
||||
if (!plugin_handle)
|
||||
- goto dl_fail;
|
||||
+ return 0;
|
||||
|
||||
/* Check if all required functions are available in the plugin and store
|
||||
their handlers. None of the symbols can legitimately be NULL,
|
|
@ -1,8 +1,8 @@
|
|||
--- libada/Makefile.in.jj 2009-01-14 12:07:35.000000000 +0100
|
||||
+++ libada/Makefile.in 2009-01-15 14:25:33.000000000 +0100
|
||||
@@ -66,18 +66,40 @@ libsubdir := $(libdir)/gcc/$(target_nonc
|
||||
--- libada/Makefile.in.jj 2019-01-09 13:01:18.015608205 +0100
|
||||
+++ libada/Makefile.in 2019-01-11 18:16:23.441726931 +0100
|
||||
@@ -71,18 +71,40 @@ version := $(shell @get_gcc_base_ver@ $(
|
||||
libsubdir := $(libdir)/gcc/$(target_noncanonical)/$(version)$(MULTISUBDIR)
|
||||
ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR))
|
||||
ADA_RTS_SUBDIR=./rts$(subst /,_,$(MULTISUBDIR))
|
||||
|
||||
+DEFAULTMULTIFLAGS :=
|
||||
+ifeq ($(MULTISUBDIR),)
|
||||
|
@ -45,95 +45,62 @@
|
|||
"PICFLAG_FOR_TARGET=$(PICFLAG)" \
|
||||
"THREAD_KIND=$(THREAD_KIND)" \
|
||||
"TRACE=$(TRACE)" \
|
||||
@@ -88,7 +110,7 @@ LIBADA_FLAGS_TO_PASS = \
|
||||
@@ -93,7 +115,7 @@ LIBADA_FLAGS_TO_PASS = \
|
||||
"exeext=.exeext.should.not.be.used " \
|
||||
'CC=the.host.compiler.should.not.be.needed' \
|
||||
"GCC_FOR_TARGET=$(CC)" \
|
||||
- "CFLAGS=$(CFLAGS)"
|
||||
+ "CFLAGS=$(CFLAGS) $(DEFAULTMULTIFLAGS)"
|
||||
|
||||
# Rules to build gnatlib.
|
||||
.PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared osconstool
|
||||
--- gcc/ada/sem_util.adb (revision 161677)
|
||||
+++ gcc/ada/sem_util.adb (working copy)
|
||||
@@ -5487,7 +5487,7 @@ package body Sem_Util is
|
||||
Exp : Node_Id;
|
||||
Assn : Node_Id;
|
||||
Choice : Node_Id;
|
||||
- Comp_Type : Entity_Id;
|
||||
+ Comp_Type : Entity_Id := Empty;
|
||||
Is_Array_Aggr : Boolean;
|
||||
.PHONY: libada gnatlib gnatlib-shared gnatlib-sjlj gnatlib-zcx osconstool
|
||||
|
||||
begin
|
||||
--- config-ml.in.jj 2010-06-30 09:50:44.000000000 +0200
|
||||
+++ config-ml.in 2010-07-02 21:24:17.994211151 +0200
|
||||
@@ -516,6 +516,8 @@ multi-do:
|
||||
--- config-ml.in.jj 2019-01-09 12:50:16.646501448 +0100
|
||||
+++ config-ml.in 2019-01-11 18:16:23.442726914 +0100
|
||||
@@ -511,6 +511,8 @@ multi-do:
|
||||
ADAFLAGS="$(ADAFLAGS) $${flags}" \
|
||||
prefix="$(prefix)" \
|
||||
exec_prefix="$(exec_prefix)" \
|
||||
+ mandir="$(mandir)" \
|
||||
+ infodir="$(infodir)" \
|
||||
GCJFLAGS="$(GCJFLAGS) $${flags}" \
|
||||
GOCFLAGS="$(GOCFLAGS) $${flags}" \
|
||||
GDCFLAGS="$(GDCFLAGS) $${flags}" \
|
||||
CXXFLAGS="$(CXXFLAGS) $${flags}" \
|
||||
--- libjava/Makefile.am.jj 2010-07-09 11:17:33.729604090 +0200
|
||||
+++ libjava/Makefile.am 2010-07-09 13:16:41.894375641 +0200
|
||||
@@ -710,7 +710,8 @@ if USE_LIBGCJ_BC
|
||||
## later.
|
||||
@echo Installing dummy lib libgcj_bc.so.1.0.0; \
|
||||
rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
- mv $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0 $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
+ $(INSTALL) $(INSTALL_STRIP_FLAG) $(here)/.libs/libgcj_bc.so $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
+ rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0; \
|
||||
$(libgcj_bc_dummy_LINK) -xc /dev/null -Wl,-soname,libgcj_bc.so.1 \
|
||||
-o $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0 -lgcj || exit; \
|
||||
rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1; \
|
||||
--- libjava/Makefile.in.jj 2010-07-09 11:17:34.000000000 +0200
|
||||
+++ libjava/Makefile.in 2010-07-09 13:18:07.542572270 +0200
|
||||
@@ -12665,7 +12665,8 @@ install-exec-hook: install-binPROGRAMS i
|
||||
install-libexecsubPROGRAMS
|
||||
@USE_LIBGCJ_BC_TRUE@ @echo Installing dummy lib libgcj_bc.so.1.0.0; \
|
||||
@USE_LIBGCJ_BC_TRUE@ rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
-@USE_LIBGCJ_BC_TRUE@ mv $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0 $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
+@USE_LIBGCJ_BC_TRUE@ $(INSTALL) $(INSTALL_STRIP_FLAG) $(here)/.libs/libgcj_bc.so $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so; \
|
||||
+@USE_LIBGCJ_BC_TRUE@ rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0; \
|
||||
@USE_LIBGCJ_BC_TRUE@ $(libgcj_bc_dummy_LINK) -xc /dev/null -Wl,-soname,libgcj_bc.so.1 \
|
||||
@USE_LIBGCJ_BC_TRUE@ -o $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1.0.0 -lgcj || exit; \
|
||||
@USE_LIBGCJ_BC_TRUE@ rm $(DESTDIR)$(toolexeclibdir)/libgcj_bc.so.1; \
|
||||
--- libcpp/macro.c.jj 2015-01-14 11:01:34.000000000 +0100
|
||||
+++ libcpp/macro.c 2015-01-14 14:22:19.286949884 +0100
|
||||
@@ -2947,8 +2947,6 @@ create_iso_definition (cpp_reader *pfile
|
||||
cpp_token *token;
|
||||
const cpp_token *ctoken;
|
||||
--- libcpp/macro.c.jj 2019-01-09 13:01:21.420552123 +0100
|
||||
+++ libcpp/macro.c 2019-01-11 18:18:17.736876285 +0100
|
||||
@@ -3256,8 +3256,6 @@ static cpp_macro *
|
||||
create_iso_definition (cpp_reader *pfile)
|
||||
{
|
||||
bool following_paste_op = false;
|
||||
- const char *paste_op_error_msg =
|
||||
- N_("'##' cannot appear at either end of a macro expansion");
|
||||
unsigned int num_extra_tokens = 0;
|
||||
|
||||
/* Get the first token of the expansion (or the '(' of a
|
||||
@@ -3059,7 +3057,8 @@ create_iso_definition (cpp_reader *pfile
|
||||
unsigned nparms = 0;
|
||||
cpp_hashnode **params = NULL;
|
||||
@@ -3382,7 +3380,9 @@ create_iso_definition (cpp_reader *pfile
|
||||
function-like macros, but not at the end. */
|
||||
if (following_paste_op)
|
||||
{
|
||||
- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg);
|
||||
+ cpp_error (pfile, CPP_DL_ERROR,
|
||||
+ "'##' cannot appear at either end of a macro expansion");
|
||||
return false;
|
||||
+ "'##' cannot appear at either end of a macro "
|
||||
+ "expansion");
|
||||
goto out;
|
||||
}
|
||||
break;
|
||||
@@ -3072,7 +3071,8 @@ create_iso_definition (cpp_reader *pfile
|
||||
if (!vaopt_tracker.completed ())
|
||||
@@ -3397,7 +3397,9 @@ create_iso_definition (cpp_reader *pfile
|
||||
function-like macros, but not at the beginning. */
|
||||
if (macro->count == 1)
|
||||
{
|
||||
- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg);
|
||||
+ cpp_error (pfile, CPP_DL_ERROR,
|
||||
+ "'##' cannot appear at either end of a macro expansion");
|
||||
return false;
|
||||
+ "'##' cannot appear at either end of a macro "
|
||||
+ "expansion");
|
||||
goto out;
|
||||
}
|
||||
|
||||
--- libcpp/expr.c.jj 2015-01-14 11:01:34.000000000 +0100
|
||||
+++ libcpp/expr.c 2015-01-14 14:35:52.851002344 +0100
|
||||
@@ -672,16 +672,17 @@ cpp_classify_number (cpp_reader *pfile,
|
||||
--- libcpp/expr.c.jj 2019-01-09 13:01:22.415535734 +0100
|
||||
+++ libcpp/expr.c 2019-01-11 18:16:23.444726882 +0100
|
||||
@@ -788,16 +788,17 @@ cpp_classify_number (cpp_reader *pfile,
|
||||
if ((result & CPP_N_WIDTH) == CPP_N_LARGE
|
||||
&& CPP_OPTION (pfile, cpp_warn_long_long))
|
||||
{
|
|
@ -1,15 +1,15 @@
|
|||
--- gcc/Makefile.in.jj 2015-06-06 10:00:25.000000000 +0200
|
||||
+++ gcc/Makefile.in 2015-11-04 14:56:02.643536437 +0100
|
||||
@@ -1013,7 +1013,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY)
|
||||
@@ -1063,7 +1063,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY)
|
||||
# and the system's installed libraries.
|
||||
LIBS = @LIBS@ libcommon.a $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBBACKTRACE) \
|
||||
$(LIBIBERTY) $(LIBDECNUMBER) $(HOST_LIBS)
|
||||
-BACKENDLIBS = $(ISLLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
|
||||
+BACKENDLIBS = $(if $(ISLLIBS),-ldl) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
|
||||
$(ZLIB)
|
||||
$(ZLIB) $(ZSTD_LIB)
|
||||
# Any system libraries needed just for GNAT.
|
||||
SYSLIBS = @GNAT_LIBEXC@
|
||||
@@ -2058,6 +2058,15 @@ $(out_object_file): $(out_file)
|
||||
@@ -2302,6 +2302,15 @@ $(out_object_file): $(out_file)
|
||||
$(common_out_object_file): $(common_out_file)
|
||||
$(COMPILE) $<
|
||||
$(POSTCOMPILE)
|
||||
|
@ -25,32 +25,14 @@
|
|||
#
|
||||
# Generate header and source files from the machine description,
|
||||
# and compile them.
|
||||
--- gcc/graphite-poly.h.jj 2015-11-04 14:15:36.000000000 +0100
|
||||
+++ gcc/graphite-poly.h 2015-11-04 14:59:46.066375844 +0100
|
||||
@@ -22,6 +22,489 @@ along with GCC; see the file COPYING3.
|
||||
#ifndef GCC_GRAPHITE_POLY_H
|
||||
#define GCC_GRAPHITE_POLY_H
|
||||
|
||||
+#include <isl/aff.h>
|
||||
+#include <isl/schedule.h>
|
||||
+#include <isl/ilp.h>
|
||||
+#include <isl/flow.h>
|
||||
+#include <isl/options.h>
|
||||
+#include <isl/ast.h>
|
||||
+#include <isl/ast_build.h>
|
||||
+#include <isl/val_gmp.h>
|
||||
+#include <isl/constraint.h>
|
||||
--- gcc/graphite.h.jj 2016-01-27 12:44:06.000000000 +0100
|
||||
+++ gcc/graphite.h 2016-01-27 13:26:38.309876856 +0100
|
||||
@@ -39,6 +39,590 @@ along with GCC; see the file COPYING3.
|
||||
#include <isl/schedule_node.h>
|
||||
#include <isl/id.h>
|
||||
#include <isl/space.h>
|
||||
+#include <isl/version.h>
|
||||
+#include <dlfcn.h>
|
||||
+#ifdef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE
|
||||
+#define DYNSYM_ZERO_DISTANCE DYNSYM (isl_band_member_is_coincident)
|
||||
+#else
|
||||
+#define DYNSYM_ZERO_DISTANCE DYNSYM (isl_band_member_is_zero_distance)
|
||||
+#endif
|
||||
+#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
|
||||
+#define DYNSYM_SCHEDULE_FUSE DYNSYM (isl_options_set_schedule_serialize_sccs)
|
||||
+#else
|
||||
+#define DYNSYM_SCHEDULE_FUSE DYNSYM (isl_options_set_schedule_fuse)
|
||||
+#endif
|
||||
+
|
||||
+#define DYNSYMS \
|
||||
+ DYNSYM (isl_aff_add_coefficient_si); \
|
||||
|
@ -67,7 +49,6 @@
|
|||
+ DYNSYM (isl_band_list_get_band); \
|
||||
+ DYNSYM (isl_band_list_get_ctx); \
|
||||
+ DYNSYM (isl_band_list_n_band); \
|
||||
+ DYNSYM_ZERO_DISTANCE; \
|
||||
+ DYNSYM (isl_band_n_member); \
|
||||
+ DYNSYM (isl_basic_map_add_constraint); \
|
||||
+ DYNSYM (isl_basic_map_project_out); \
|
||||
|
@ -115,7 +96,8 @@
|
|||
+ DYNSYM (isl_map_set_tuple_id); \
|
||||
+ DYNSYM (isl_map_universe); \
|
||||
+ DYNSYM (isl_options_set_on_error); \
|
||||
+ DYNSYM_SCHEDULE_FUSE; \
|
||||
+ DYNSYM (isl_options_set_schedule_serialize_sccs); \
|
||||
+ DYNSYM (isl_printer_set_yaml_style); \
|
||||
+ DYNSYM (isl_options_set_schedule_max_constant_term); \
|
||||
+ DYNSYM (isl_options_set_schedule_maximize_band_depth); \
|
||||
+ DYNSYM (isl_printer_free); \
|
||||
|
@ -267,13 +249,77 @@
|
|||
+ DYNSYM (isl_val_add_ui); \
|
||||
+ DYNSYM (isl_val_copy); \
|
||||
+ DYNSYM (isl_val_free); \
|
||||
+ DYNSYM (isl_val_get_num_gmp); \
|
||||
+ DYNSYM (isl_val_int_from_gmp); \
|
||||
+ DYNSYM (isl_val_int_from_si); \
|
||||
+ DYNSYM (isl_val_int_from_ui); \
|
||||
+ DYNSYM (isl_val_mul); \
|
||||
+ DYNSYM (isl_val_neg); \
|
||||
+ DYNSYM (isl_val_sub);
|
||||
+ DYNSYM (isl_val_sub); \
|
||||
+ DYNSYM (isl_printer_print_union_map); \
|
||||
+ DYNSYM (isl_pw_aff_get_ctx); \
|
||||
+ DYNSYM (isl_val_is_int); \
|
||||
+ DYNSYM (isl_ctx_get_max_operations); \
|
||||
+ DYNSYM (isl_ctx_set_max_operations); \
|
||||
+ DYNSYM (isl_ctx_last_error); \
|
||||
+ DYNSYM (isl_ctx_reset_operations); \
|
||||
+ DYNSYM (isl_map_coalesce); \
|
||||
+ DYNSYM (isl_printer_print_schedule); \
|
||||
+ DYNSYM (isl_set_set_dim_id); \
|
||||
+ DYNSYM (isl_union_map_coalesce); \
|
||||
+ DYNSYM (isl_multi_val_set_val); \
|
||||
+ DYNSYM (isl_multi_val_zero); \
|
||||
+ DYNSYM (isl_options_set_schedule_max_coefficient); \
|
||||
+ DYNSYM (isl_options_set_tile_scale_tile_loops); \
|
||||
+ DYNSYM (isl_schedule_copy); \
|
||||
+ DYNSYM (isl_schedule_get_map); \
|
||||
+ DYNSYM (isl_schedule_map_schedule_node_bottom_up); \
|
||||
+ DYNSYM (isl_schedule_node_band_get_permutable); \
|
||||
+ DYNSYM (isl_schedule_node_band_get_space); \
|
||||
+ DYNSYM (isl_schedule_node_band_tile); \
|
||||
+ DYNSYM (isl_schedule_node_child); \
|
||||
+ DYNSYM (isl_schedule_node_free); \
|
||||
+ DYNSYM (isl_schedule_node_get_child); \
|
||||
+ DYNSYM (isl_schedule_node_get_ctx); \
|
||||
+ DYNSYM (isl_schedule_node_get_type); \
|
||||
+ DYNSYM (isl_schedule_node_n_children); \
|
||||
+ DYNSYM (isl_union_map_is_equal); \
|
||||
+ DYNSYM (isl_union_access_info_compute_flow); \
|
||||
+ DYNSYM (isl_union_access_info_from_sink); \
|
||||
+ DYNSYM (isl_union_access_info_set_may_source); \
|
||||
+ DYNSYM (isl_union_access_info_set_must_source); \
|
||||
+ DYNSYM (isl_union_access_info_set_schedule); \
|
||||
+ DYNSYM (isl_union_flow_free); \
|
||||
+ DYNSYM (isl_union_flow_get_may_dependence); \
|
||||
+ DYNSYM (isl_union_flow_get_must_dependence); \
|
||||
+ DYNSYM (isl_aff_var_on_domain); \
|
||||
+ DYNSYM (isl_multi_aff_from_aff); \
|
||||
+ DYNSYM (isl_schedule_get_ctx); \
|
||||
+ DYNSYM (isl_multi_aff_set_tuple_id); \
|
||||
+ DYNSYM (isl_multi_aff_dim); \
|
||||
+ DYNSYM (isl_schedule_get_domain); \
|
||||
+ DYNSYM (isl_union_set_is_empty); \
|
||||
+ DYNSYM (isl_union_set_get_space); \
|
||||
+ DYNSYM (isl_union_pw_multi_aff_empty); \
|
||||
+ DYNSYM (isl_union_set_foreach_set); \
|
||||
+ DYNSYM (isl_union_set_free); \
|
||||
+ DYNSYM (isl_multi_union_pw_aff_from_union_pw_multi_aff); \
|
||||
+ DYNSYM (isl_multi_union_pw_aff_apply_multi_aff); \
|
||||
+ DYNSYM (isl_schedule_insert_partial_schedule); \
|
||||
+ DYNSYM (isl_union_pw_multi_aff_free); \
|
||||
+ DYNSYM (isl_pw_multi_aff_project_out_map); \
|
||||
+ DYNSYM (isl_union_pw_multi_aff_add_pw_multi_aff); \
|
||||
+ DYNSYM (isl_schedule_from_domain); \
|
||||
+ DYNSYM (isl_schedule_sequence); \
|
||||
+ DYNSYM (isl_ast_build_node_from_schedule); \
|
||||
+ DYNSYM (isl_ast_node_mark_get_node); \
|
||||
+ DYNSYM (isl_schedule_node_band_member_get_ast_loop_type); \
|
||||
+ DYNSYM (isl_schedule_node_band_member_set_ast_loop_type); \
|
||||
+ DYNSYM (isl_val_n_abs_num_chunks); \
|
||||
+ DYNSYM (isl_val_get_abs_num_chunks); \
|
||||
+ DYNSYM (isl_val_int_from_chunks); \
|
||||
+ DYNSYM (isl_val_is_neg); \
|
||||
+ DYNSYM (isl_version); \
|
||||
+ DYNSYM (isl_options_get_on_error); \
|
||||
+ DYNSYM (isl_ctx_reset_error);
|
||||
+
|
||||
+extern struct isl_pointers_s__
|
||||
+{
|
||||
|
@ -298,11 +344,6 @@
|
|||
+#define isl_band_list_get_band (*isl_pointers__.p_isl_band_list_get_band)
|
||||
+#define isl_band_list_get_ctx (*isl_pointers__.p_isl_band_list_get_ctx)
|
||||
+#define isl_band_list_n_band (*isl_pointers__.p_isl_band_list_n_band)
|
||||
+#ifdef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE
|
||||
+#define isl_band_member_is_coincident (*isl_pointers__.p_isl_band_member_is_coincident)
|
||||
+#else
|
||||
+#define isl_band_member_is_zero_distance (*isl_pointers__.p_isl_band_member_is_zero_distance)
|
||||
+#endif
|
||||
+#define isl_band_n_member (*isl_pointers__.p_isl_band_n_member)
|
||||
+#define isl_basic_map_add_constraint (*isl_pointers__.p_isl_basic_map_add_constraint)
|
||||
+#define isl_basic_map_project_out (*isl_pointers__.p_isl_basic_map_project_out)
|
||||
|
@ -350,11 +391,8 @@
|
|||
+#define isl_map_set_tuple_id (*isl_pointers__.p_isl_map_set_tuple_id)
|
||||
+#define isl_map_universe (*isl_pointers__.p_isl_map_universe)
|
||||
+#define isl_options_set_on_error (*isl_pointers__.p_isl_options_set_on_error)
|
||||
+#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
|
||||
+#define isl_options_set_schedule_serialize_sccs (*isl_pointers__.p_isl_options_set_schedule_serialize_sccs)
|
||||
+#else
|
||||
+#define isl_options_set_schedule_fuse (*isl_pointers__.p_isl_options_set_schedule_fuse)
|
||||
+#endif
|
||||
+#define isl_printer_set_yaml_style (*isl_pointers__.p_isl_printer_set_yaml_style)
|
||||
+#define isl_options_set_schedule_max_constant_term (*isl_pointers__.p_isl_options_set_schedule_max_constant_term)
|
||||
+#define isl_options_set_schedule_maximize_band_depth (*isl_pointers__.p_isl_options_set_schedule_maximize_band_depth)
|
||||
+#define isl_printer_free (*isl_pointers__.p_isl_printer_free)
|
||||
|
@ -506,22 +544,92 @@
|
|||
+#define isl_val_add_ui (*isl_pointers__.p_isl_val_add_ui)
|
||||
+#define isl_val_copy (*isl_pointers__.p_isl_val_copy)
|
||||
+#define isl_val_free (*isl_pointers__.p_isl_val_free)
|
||||
+#define isl_val_get_num_gmp (*isl_pointers__.p_isl_val_get_num_gmp)
|
||||
+#define isl_val_int_from_gmp (*isl_pointers__.p_isl_val_int_from_gmp)
|
||||
+#define isl_val_int_from_si (*isl_pointers__.p_isl_val_int_from_si)
|
||||
+#define isl_val_int_from_ui (*isl_pointers__.p_isl_val_int_from_ui)
|
||||
+#define isl_val_mul (*isl_pointers__.p_isl_val_mul)
|
||||
+#define isl_val_neg (*isl_pointers__.p_isl_val_neg)
|
||||
+#define isl_val_sub (*isl_pointers__.p_isl_val_sub)
|
||||
+
|
||||
#ifndef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
|
||||
# define isl_stat int
|
||||
# define isl_stat_ok 0
|
||||
+#define isl_printer_print_union_map (*isl_pointers__.p_isl_printer_print_union_map)
|
||||
+#define isl_pw_aff_get_ctx (*isl_pointers__.p_isl_pw_aff_get_ctx)
|
||||
+#define isl_val_is_int (*isl_pointers__.p_isl_val_is_int)
|
||||
+#define isl_ctx_get_max_operations (*isl_pointers__.p_isl_ctx_get_max_operations)
|
||||
+#define isl_ctx_set_max_operations (*isl_pointers__.p_isl_ctx_set_max_operations)
|
||||
+#define isl_ctx_last_error (*isl_pointers__.p_isl_ctx_last_error)
|
||||
+#define isl_ctx_reset_operations (*isl_pointers__.p_isl_ctx_reset_operations)
|
||||
+#define isl_map_coalesce (*isl_pointers__.p_isl_map_coalesce)
|
||||
+#define isl_printer_print_schedule (*isl_pointers__.p_isl_printer_print_schedule)
|
||||
+#define isl_set_set_dim_id (*isl_pointers__.p_isl_set_set_dim_id)
|
||||
+#define isl_union_map_coalesce (*isl_pointers__.p_isl_union_map_coalesce)
|
||||
+#define isl_multi_val_set_val (*isl_pointers__.p_isl_multi_val_set_val)
|
||||
+#define isl_multi_val_zero (*isl_pointers__.p_isl_multi_val_zero)
|
||||
+#define isl_options_set_schedule_max_coefficient (*isl_pointers__.p_isl_options_set_schedule_max_coefficient)
|
||||
+#define isl_options_set_tile_scale_tile_loops (*isl_pointers__.p_isl_options_set_tile_scale_tile_loops)
|
||||
+#define isl_schedule_copy (*isl_pointers__.p_isl_schedule_copy)
|
||||
+#define isl_schedule_get_map (*isl_pointers__.p_isl_schedule_get_map)
|
||||
+#define isl_schedule_map_schedule_node_bottom_up (*isl_pointers__.p_isl_schedule_map_schedule_node_bottom_up)
|
||||
+#define isl_schedule_node_band_get_permutable (*isl_pointers__.p_isl_schedule_node_band_get_permutable)
|
||||
+#define isl_schedule_node_band_get_space (*isl_pointers__.p_isl_schedule_node_band_get_space)
|
||||
+#define isl_schedule_node_band_tile (*isl_pointers__.p_isl_schedule_node_band_tile)
|
||||
+#define isl_schedule_node_child (*isl_pointers__.p_isl_schedule_node_child)
|
||||
+#define isl_schedule_node_free (*isl_pointers__.p_isl_schedule_node_free)
|
||||
+#define isl_schedule_node_get_child (*isl_pointers__.p_isl_schedule_node_get_child)
|
||||
+#define isl_schedule_node_get_ctx (*isl_pointers__.p_isl_schedule_node_get_ctx)
|
||||
+#define isl_schedule_node_get_type (*isl_pointers__.p_isl_schedule_node_get_type)
|
||||
+#define isl_schedule_node_n_children (*isl_pointers__.p_isl_schedule_node_n_children)
|
||||
+#define isl_union_map_is_equal (*isl_pointers__.p_isl_union_map_is_equal)
|
||||
+#define isl_union_access_info_compute_flow (*isl_pointers__.p_isl_union_access_info_compute_flow)
|
||||
+#define isl_union_access_info_from_sink (*isl_pointers__.p_isl_union_access_info_from_sink)
|
||||
+#define isl_union_access_info_set_may_source (*isl_pointers__.p_isl_union_access_info_set_may_source)
|
||||
+#define isl_union_access_info_set_must_source (*isl_pointers__.p_isl_union_access_info_set_must_source)
|
||||
+#define isl_union_access_info_set_schedule (*isl_pointers__.p_isl_union_access_info_set_schedule)
|
||||
+#define isl_union_flow_free (*isl_pointers__.p_isl_union_flow_free)
|
||||
+#define isl_union_flow_get_may_dependence (*isl_pointers__.p_isl_union_flow_get_may_dependence)
|
||||
+#define isl_union_flow_get_must_dependence (*isl_pointers__.p_isl_union_flow_get_must_dependence)
|
||||
+#define isl_aff_var_on_domain (*isl_pointers__.p_isl_aff_var_on_domain)
|
||||
+#define isl_multi_aff_from_aff (*isl_pointers__.p_isl_multi_aff_from_aff)
|
||||
+#define isl_schedule_get_ctx (*isl_pointers__.p_isl_schedule_get_ctx)
|
||||
+#define isl_multi_aff_set_tuple_id (*isl_pointers__.p_isl_multi_aff_set_tuple_id)
|
||||
+#define isl_multi_aff_dim (*isl_pointers__.p_isl_multi_aff_dim)
|
||||
+#define isl_schedule_get_domain (*isl_pointers__.p_isl_schedule_get_domain)
|
||||
+#define isl_union_set_is_empty (*isl_pointers__.p_isl_union_set_is_empty)
|
||||
+#define isl_union_set_get_space (*isl_pointers__.p_isl_union_set_get_space)
|
||||
+#define isl_union_pw_multi_aff_empty (*isl_pointers__.p_isl_union_pw_multi_aff_empty)
|
||||
+#define isl_union_set_foreach_set (*isl_pointers__.p_isl_union_set_foreach_set)
|
||||
+#define isl_union_set_free (*isl_pointers__.p_isl_union_set_free)
|
||||
+#define isl_multi_union_pw_aff_from_union_pw_multi_aff (*isl_pointers__.p_isl_multi_union_pw_aff_from_union_pw_multi_aff)
|
||||
+#define isl_multi_union_pw_aff_apply_multi_aff (*isl_pointers__.p_isl_multi_union_pw_aff_apply_multi_aff)
|
||||
+#define isl_schedule_insert_partial_schedule (*isl_pointers__.p_isl_schedule_insert_partial_schedule)
|
||||
+#define isl_union_pw_multi_aff_free (*isl_pointers__.p_isl_union_pw_multi_aff_free)
|
||||
+#define isl_pw_multi_aff_project_out_map (*isl_pointers__.p_isl_pw_multi_aff_project_out_map)
|
||||
+#define isl_union_pw_multi_aff_add_pw_multi_aff (*isl_pointers__.p_isl_union_pw_multi_aff_add_pw_multi_aff)
|
||||
+#define isl_schedule_from_domain (*isl_pointers__.p_isl_schedule_from_domain)
|
||||
+#define isl_schedule_sequence (*isl_pointers__.p_isl_schedule_sequence)
|
||||
+#define isl_ast_build_node_from_schedule (*isl_pointers__.p_isl_ast_build_node_from_schedule)
|
||||
+#define isl_ast_node_mark_get_node (*isl_pointers__.p_isl_ast_node_mark_get_node)
|
||||
+#define isl_schedule_node_band_member_get_ast_loop_type (*isl_pointers__.p_isl_schedule_node_band_member_get_ast_loop_type)
|
||||
+#define isl_schedule_node_band_member_set_ast_loop_type (*isl_pointers__.p_isl_schedule_node_band_member_set_ast_loop_type)
|
||||
+#define isl_val_n_abs_num_chunks (*isl_pointers__.p_isl_val_n_abs_num_chunks)
|
||||
+#define isl_val_get_abs_num_chunks (*isl_pointers__.p_isl_val_get_abs_num_chunks)
|
||||
+#define isl_val_int_from_chunks (*isl_pointers__.p_isl_val_int_from_chunks)
|
||||
+#define isl_val_is_neg (*isl_pointers__.p_isl_val_is_neg)
|
||||
+#define isl_version (*isl_pointers__.p_isl_version)
|
||||
+#define isl_options_get_on_error (*isl_pointers__.p_isl_options_get_on_error)
|
||||
+#define isl_ctx_reset_error (*isl_pointers__.p_isl_ctx_reset_error)
|
||||
|
||||
typedef struct poly_dr *poly_dr_p;
|
||||
|
||||
@@ -461,5 +1045,6 @@ extern void build_scops (vec<scop_p> *);
|
||||
extern void dot_all_sese (FILE *, vec<sese_l> &);
|
||||
extern void dot_sese (sese_l &);
|
||||
extern void dot_cfg ();
|
||||
+extern const char *get_isl_version (bool);
|
||||
|
||||
#endif
|
||||
--- gcc/graphite.c.jj 2015-11-04 14:15:32.000000000 +0100
|
||||
+++ gcc/graphite.c 2015-11-04 14:56:02.645536409 +0100
|
||||
@@ -91,6 +91,34 @@ along with GCC; see the file COPYING3.
|
||||
#include "graphite-isl-ast-to-gimple.h"
|
||||
#include "graphite-sese-to-poly.h"
|
||||
@@ -60,6 +60,35 @@ along with GCC; see the file COPYING3.
|
||||
#include "tree-into-ssa.h"
|
||||
#include "graphite.h"
|
||||
|
||||
+__typeof (isl_pointers__) isl_pointers__;
|
||||
+
|
||||
|
@ -532,7 +640,7 @@
|
|||
+
|
||||
+ if (isl_pointers__.inited)
|
||||
+ return isl_pointers__.h != NULL;
|
||||
+ h = dlopen ("libisl.so.13", RTLD_LAZY);
|
||||
+ h = dlopen ("libisl.so.15", RTLD_LAZY);
|
||||
+ isl_pointers__.h = h;
|
||||
+ if (h == NULL)
|
||||
+ return false;
|
||||
|
@ -548,13 +656,14 @@
|
|||
+ while (0)
|
||||
+ DYNSYMS
|
||||
+#undef DYNSYM
|
||||
+ isl_pointers__.inited = true;
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
/* Print global statistics to FILE. */
|
||||
|
||||
static void
|
||||
@@ -286,6 +314,15 @@ graphite_transform_loops (void)
|
||||
@@ -365,6 +394,15 @@ graphite_transform_loops (void)
|
||||
if (parallelized_function_p (cfun->decl))
|
||||
return;
|
||||
|
||||
|
@ -567,6 +676,40 @@
|
|||
+ return;
|
||||
+ }
|
||||
+
|
||||
ctx = isl_ctx_alloc ();
|
||||
isl_options_set_on_error (ctx, ISL_ON_ERROR_ABORT);
|
||||
if (!graphite_initialize (ctx))
|
||||
calculate_dominance_info (CDI_DOMINATORS);
|
||||
|
||||
/* We rely on post-dominators during merging of SESE regions so those
|
||||
@@ -455,6 +493,14 @@ graphite_transform_loops (void)
|
||||
}
|
||||
}
|
||||
|
||||
+const char *
|
||||
+get_isl_version (bool force)
|
||||
+{
|
||||
+ if (force)
|
||||
+ init_isl_pointers ();
|
||||
+ return (isl_pointers__.inited && isl_version) ? isl_version () : "none";
|
||||
+}
|
||||
+
|
||||
#else /* If isl is not available: #ifndef HAVE_isl. */
|
||||
|
||||
static void
|
||||
--- gcc/toplev.c.jj 2017-02-19 13:02:31.000000000 +0100
|
||||
+++ gcc/toplev.c 2017-02-19 16:50:25.536301350 +0100
|
||||
@@ -94,6 +94,7 @@ along with GCC; see the file COPYING3.
|
||||
|
||||
#ifdef HAVE_isl
|
||||
#include <isl/version.h>
|
||||
+extern const char *get_isl_version (bool);
|
||||
#endif
|
||||
|
||||
static void general_init (const char *, bool);
|
||||
@@ -683,7 +684,7 @@ print_version (FILE *file, const char *i
|
||||
#ifndef HAVE_isl
|
||||
"none"
|
||||
#else
|
||||
- isl_version ()
|
||||
+ get_isl_version (*indent == 0)
|
||||
#endif
|
||||
);
|
||||
if (strcmp (GCC_GMP_STRINGIFY_VERSION, gmp_version))
|
|
@ -1,26 +1,24 @@
|
|||
--- libstdc++-v3/doc/html/index.html.jj 2011-01-03 12:53:21.282829010 +0100
|
||||
+++ libstdc++-v3/doc/html/index.html 2011-01-04 18:06:28.999851145 +0100
|
||||
@@ -5,6 +5,8 @@
|
||||
<a class="link" href="http://www.fsf.org/" target="_top">FSF
|
||||
<a class="link" href="https://www.fsf.org" target="_top">FSF
|
||||
</a>
|
||||
</p><p>
|
||||
+ Release 5.3.1
|
||||
+ Release 10.0.1
|
||||
+ </p><p>
|
||||
Permission is granted to copy, distribute and/or modify this
|
||||
document under the terms of the GNU Free Documentation
|
||||
License, Version 1.2 or any later version published by the
|
||||
--- libstdc++-v3/doc/html/api.html.jj 2011-01-03 12:53:21.000000000 +0100
|
||||
+++ libstdc++-v3/doc/html/api.html 2011-01-04 18:12:01.672757784 +0100
|
||||
@@ -18,8 +18,11 @@
|
||||
@@ -20,7 +20,9 @@
|
||||
member functions for the library classes, finding out what is in a
|
||||
particular include file, looking at inheritance diagrams, etc.
|
||||
</p><p>
|
||||
- The API documentation, rendered into HTML, can be viewed online:
|
||||
+ The API documentation, rendered into HTML, can be viewed here:
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 5.3.1 release, local
|
||||
+ </a>
|
||||
+ </p></li><li class="listitem"><p>
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-3.4/index.html" target="_top">for the 3.4 release
|
||||
</a>
|
||||
</p></li><li class="listitem"><p>
|
||||
- The API documentation, rendered into HTML, can be viewed online
|
||||
+ The API documentation, rendered into HTML, can be viewed locally
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 10.0.1 release</a>,
|
||||
+ online
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/" target="_top">for each GCC release</a>
|
||||
and
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/index.html" target="_top">
|
|
@ -1,19 +1,17 @@
|
|||
2010-02-08 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
|
||||
linker.
|
||||
* config/gnu-user.h (LINK_EH_SPEC): Likewise.
|
||||
* config/gnu-user.h (LINK_EH_SPEC): Pass --no-add-needed to the linker.
|
||||
* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
|
||||
* config/ia64/linux.h (LINK_EH_SPEC): Likewise.
|
||||
|
||||
--- gcc/config/alpha/elf.h.jj 2011-01-03 12:52:31.118056764 +0100
|
||||
+++ gcc/config/alpha/elf.h 2011-01-04 18:14:10.931874160 +0100
|
||||
@@ -165,5 +165,5 @@ extern int alpha_this_gpdisp_sequence_nu
|
||||
@@ -168,5 +168,5 @@ extern int alpha_this_gpdisp_sequence_nu
|
||||
I imagine that other systems will catch up. In the meantime, it
|
||||
doesn't harm to make sure that the data exists to be used later. */
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
-#define LINK_EH_SPEC "%{!static|static-pie:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static|static-pie:--eh-frame-hdr} "
|
||||
#endif
|
||||
--- gcc/config/ia64/linux.h.jj 2011-01-03 13:02:11.462994522 +0100
|
||||
+++ gcc/config/ia64/linux.h 2011-01-04 18:14:10.931874160 +0100
|
||||
|
@ -28,23 +26,12 @@
|
|||
#define TARGET_INIT_LIBFUNCS ia64_soft_fp_init_libfuncs
|
||||
--- gcc/config/gnu-user.h.jj 2011-01-03 12:53:03.739057299 +0100
|
||||
+++ gcc/config/gnu-user.h 2011-01-04 18:14:10.932814884 +0100
|
||||
@@ -82,7 +82,7 @@ see the files COPYING3 and COPYING.RUNTI
|
||||
@@ -106,7 +106,7 @@ see the files COPYING3 and COPYING.RUNTI
|
||||
#define LIB_SPEC GNU_USER_TARGET_LIB_SPEC
|
||||
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
-#define LINK_EH_SPEC "%{!static|static-pie:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static|static-pie:--eh-frame-hdr} "
|
||||
#endif
|
||||
|
||||
#undef LINK_GCC_C_SEQUENCE_SPEC
|
||||
--- gcc/config/rs6000/sysv4.h.jj 2011-01-03 13:02:18.255994215 +0100
|
||||
+++ gcc/config/rs6000/sysv4.h 2011-01-04 18:14:10.933888871 +0100
|
||||
@@ -820,7 +820,7 @@ extern int fixuplabelno;
|
||||
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
|
||||
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
#endif
|
||||
|
||||
#define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
|
||||
#define GNU_USER_TARGET_LINK_GCC_C_SEQUENCE_SPEC \
|
|
@ -0,0 +1,30 @@
|
|||
crt files and statically linked libgcc objects cause false positives
|
||||
in annobin coverage, so we add the assembler flag to generate notes
|
||||
for them.
|
||||
|
||||
The patch also adds notes to libgcc_s.so, but this is harmless because
|
||||
these notes only confer that there is no other annobin markup.
|
||||
|
||||
2018-07-25 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
* Makefile.in (LIBGCC2_CFLAGS, CRTSTUFF_CFLAGS): Add
|
||||
-Wa,--generate-missing-build-notes=yes.
|
||||
|
||||
--- libgcc/Makefile.in 2018-01-13 13:05:41.000000000 +0100
|
||||
+++ libgcc/Makefile.in 2018-07-25 13:15:02.036226940 +0200
|
||||
@@ -246,6 +246,7 @@ LIBGCC2_DEBUG_CFLAGS = -g
|
||||
LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(HOST_LIBGCC2_CFLAGS) \
|
||||
$(LIBGCC2_DEBUG_CFLAGS) -DIN_LIBGCC2 \
|
||||
-fbuilding-libgcc -fno-stack-protector \
|
||||
+ -Wa,--generate-missing-build-notes=yes \
|
||||
$(INHIBIT_LIBC_CFLAGS)
|
||||
|
||||
# Additional options to use when compiling libgcc2.a.
|
||||
@@ -301,6 +302,7 @@ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(IN
|
||||
$(NO_PIE_CFLAGS) -finhibit-size-directive -fno-inline -fno-exceptions \
|
||||
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
|
||||
-fbuilding-libgcc -fno-stack-protector $(FORCE_EXPLICIT_EH_REGISTRY) \
|
||||
+ -Wa,--generate-missing-build-notes=yes \
|
||||
$(INHIBIT_LIBC_CFLAGS) $(USE_TM_CLONE_REGISTRY)
|
||||
|
||||
# Extra flags to use when compiling crt{begin,end}.o.
|
|
@ -1,6 +1,6 @@
|
|||
--- gcc/config.gcc.jj 2008-04-24 15:42:46.000000000 -0500
|
||||
+++ gcc/config.gcc 2008-04-24 15:44:51.000000000 -0500
|
||||
@@ -2656,7 +2656,7 @@ sparc-*-rtems*)
|
||||
@@ -2790,7 +2790,7 @@ sparc-*-rtems*)
|
||||
tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h"
|
||||
tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems"
|
||||
;;
|
||||
|
@ -9,13 +9,13 @@
|
|||
tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/tso.h"
|
||||
extra_options="${extra_options} sparc/long-double-switch.opt"
|
||||
case ${target} in
|
||||
@@ -2710,7 +2710,7 @@ sparc64-*-rtems*)
|
||||
@@ -2844,7 +2844,7 @@ sparc64-*-rtems*)
|
||||
extra_options="${extra_options}"
|
||||
tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems-64"
|
||||
;;
|
||||
-sparc64-*-linux*)
|
||||
+sparc64*-*-linux*)
|
||||
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default-64.h sparc/linux64.h sparc/tso.h"
|
||||
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default64.h sparc/linux64.h sparc/tso.h"
|
||||
extra_options="${extra_options} sparc/long-double-switch.opt"
|
||||
tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux64"
|
||||
--- libgcc/config.host.jj 2008-04-24 15:46:19.000000000 -0500
|
|
@ -1,35 +0,0 @@
|
|||
2014-04-07 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* common/config/aarch64/aarch64-common.c (TARGET_OPTION_INIT_STRUCT):
|
||||
Define.
|
||||
(aarch64_option_init_struct): New function.
|
||||
|
||||
--- gcc/common/config/aarch64/aarch64-common.c
|
||||
+++ gcc/common/config/aarch64/aarch64-common.c
|
||||
@@ -39,6 +39,9 @@
|
||||
#undef TARGET_OPTION_OPTIMIZATION_TABLE
|
||||
#define TARGET_OPTION_OPTIMIZATION_TABLE aarch_option_optimization_table
|
||||
|
||||
+#undef TARGET_OPTION_INIT_STRUCT
|
||||
+#define TARGET_OPTION_INIT_STRUCT aarch64_option_init_struct
|
||||
+
|
||||
/* Set default optimization options. */
|
||||
static const struct default_options aarch_option_optimization_table[] =
|
||||
{
|
||||
@@ -47,6 +50,16 @@ static const struct default_options aarch_option_optimization_table[] =
|
||||
{ OPT_LEVELS_NONE, 0, NULL, 0 }
|
||||
};
|
||||
|
||||
+/* Implement TARGET_OPTION_INIT_STRUCT. */
|
||||
+
|
||||
+static void
|
||||
+aarch64_option_init_struct (struct gcc_options *opts)
|
||||
+{
|
||||
+ /* By default, always emit DWARF-2 unwind info. This allows debugging
|
||||
+ without maintaining a stack frame back-chain. */
|
||||
+ opts->x_flag_asynchronous_unwind_tables = 1;
|
||||
+}
|
||||
+
|
||||
/* Implement TARGET_HANDLE_OPTION.
|
||||
This function handles the target specific options for CPU/target selection.
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
--- libjava/configure.ac.jj 2007-12-07 17:55:50.000000000 +0100
|
||||
+++ libjava/configure.ac 2007-12-07 18:36:56.000000000 +0100
|
||||
@@ -82,6 +82,13 @@ AC_ARG_ENABLE(java-maintainer-mode,
|
||||
[allow rebuilding of .class and .h files]))
|
||||
AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
|
||||
|
||||
+AC_ARG_ENABLE(libjava-multilib,
|
||||
+ AS_HELP_STRING([--enable-libjava-multilib], [build libjava as multilib]))
|
||||
+if test "$enable_libjava_multilib" = no; then
|
||||
+ multilib=no
|
||||
+ ac_configure_args="$ac_configure_args --disable-multilib"
|
||||
+fi
|
||||
+
|
||||
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
|
||||
GCC_NO_EXECUTABLES
|
||||
|
||||
--- libjava/configure.jj 2007-12-07 17:55:50.000000000 +0100
|
||||
+++ libjava/configure 2007-12-07 18:39:58.000000000 +0100
|
||||
@@ -1021,6 +1021,8 @@ Optional Features:
|
||||
default=yes
|
||||
--enable-java-maintainer-mode
|
||||
allow rebuilding of .class and .h files
|
||||
+ --enable-libjava-multilib
|
||||
+ build libjava as multilib
|
||||
--disable-dependency-tracking speeds up one-time build
|
||||
--enable-dependency-tracking do not reject slow dependency extractors
|
||||
--enable-maintainer-mode enable make rules and dependencies not useful
|
||||
@@ -1973,6 +1975,16 @@ else
|
||||
fi
|
||||
|
||||
|
||||
+# Check whether --enable-libjava-multilib was given.
|
||||
+if test "${enable_libjava_multilib+set}" = set; then
|
||||
+ enableval=$enable_libjava_multilib;
|
||||
+fi
|
||||
+
|
||||
+if test "$enable_libjava_multilib" = no; then
|
||||
+ multilib=no
|
||||
+ ac_configure_args="$ac_configure_args --disable-multilib"
|
||||
+fi
|
||||
+
|
||||
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -1,47 +0,0 @@
|
|||
2015-01-22 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* asan/asan_allocator.h (kAllocatorSpace, kAllocatorSize):
|
||||
Set to 1T for __aarch64__.
|
||||
* sanitizer_common/sanitizer_platform.h
|
||||
(SANITIZER_CAN_USE_ALLOCATOR64): Set to 1 on __aarch64__
|
||||
if SANITIZER_WORDSIZE is 64.
|
||||
(SANITIZER_MMAP_RANGE_SIZE): Define to 1ULL << 42 for
|
||||
__aarch64__.
|
||||
|
||||
--- libsanitizer/asan/asan_allocator.h (revision 219833)
|
||||
+++ libsanitizer/asan/asan_allocator.h (working copy)
|
||||
@@ -100,6 +100,10 @@
|
||||
# if defined(__powerpc64__)
|
||||
const uptr kAllocatorSpace = 0xa0000000000ULL;
|
||||
const uptr kAllocatorSize = 0x20000000000ULL; // 2T.
|
||||
+# elif defined(__aarch64__)
|
||||
+// Valid only for 42-bit VA
|
||||
+const uptr kAllocatorSpace = 0x10000000000ULL;
|
||||
+const uptr kAllocatorSize = 0x10000000000ULL; // 1T.
|
||||
# else
|
||||
const uptr kAllocatorSpace = 0x600000000000ULL;
|
||||
const uptr kAllocatorSize = 0x40000000000ULL; // 4T.
|
||||
--- libsanitizer/sanitizer_common/sanitizer_platform.h (revision 219833)
|
||||
+++ libsanitizer/sanitizer_common/sanitizer_platform.h (working copy)
|
||||
@@ -79,7 +79,7 @@
|
||||
// For such platforms build this code with -DSANITIZER_CAN_USE_ALLOCATOR64=0 or
|
||||
// change the definition of SANITIZER_CAN_USE_ALLOCATOR64 here.
|
||||
#ifndef SANITIZER_CAN_USE_ALLOCATOR64
|
||||
-# if defined(__aarch64__) || defined(__mips64)
|
||||
+# if defined(__mips64)
|
||||
# define SANITIZER_CAN_USE_ALLOCATOR64 0
|
||||
# else
|
||||
# define SANITIZER_CAN_USE_ALLOCATOR64 (SANITIZER_WORDSIZE == 64)
|
||||
@@ -88,10 +88,10 @@
|
||||
|
||||
// The range of addresses which can be returned my mmap.
|
||||
// FIXME: this value should be different on different platforms,
|
||||
-// e.g. on AArch64 it is most likely (1ULL << 39). Larger values will still work
|
||||
+// e.g. on AArch64 it is most likely (1ULL << 42). Larger values will still work
|
||||
// but will consume more memory for TwoLevelByteMap.
|
||||
#if defined(__aarch64__)
|
||||
-# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 39)
|
||||
+# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 42)
|
||||
#else
|
||||
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 47)
|
||||
#endif
|
|
@ -1,87 +0,0 @@
|
|||
2005-11-28 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_return_addr): If COUNT == 0,
|
||||
read word RETURN_ADDRESS_OFFSET bytes above arg_pointer_rtx
|
||||
instead of doing an extran indirection from frame_pointer_rtx.
|
||||
|
||||
* gcc.dg/20051128-1.c: New test.
|
||||
|
||||
--- gcc/config/rs6000/rs6000.c.jj 2005-11-26 14:38:01.000000000 +0100
|
||||
+++ gcc/config/rs6000/rs6000.c 2005-11-28 20:32:18.000000000 +0100
|
||||
@@ -20970,18 +20970,22 @@ rs6000_return_addr (int count, rtx frame
|
||||
if (count != 0
|
||||
|| ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && flag_pic))
|
||||
{
|
||||
+ rtx x;
|
||||
cfun->machine->ra_needs_full_frame = 1;
|
||||
|
||||
- return
|
||||
- gen_rtx_MEM
|
||||
- (Pmode,
|
||||
- memory_address
|
||||
- (Pmode,
|
||||
- plus_constant (Pmode,
|
||||
- copy_to_reg
|
||||
- (gen_rtx_MEM (Pmode,
|
||||
- memory_address (Pmode, frame))),
|
||||
- RETURN_ADDRESS_OFFSET)));
|
||||
+ if (count == 0)
|
||||
+ {
|
||||
+ gcc_assert (frame == frame_pointer_rtx);
|
||||
+ x = arg_pointer_rtx;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ x = memory_address (Pmode, frame);
|
||||
+ x = copy_to_reg (gen_rtx_MEM (Pmode, x));
|
||||
+ }
|
||||
+
|
||||
+ x = plus_constant (Pmode, x, RETURN_ADDRESS_OFFSET);
|
||||
+ return gen_rtx_MEM (Pmode, memory_address (Pmode, x));
|
||||
}
|
||||
|
||||
cfun->machine->ra_need_lr = 1;
|
||||
--- gcc/testsuite/gcc.dg/20051128-1.c.jj 2005-10-10 11:21:41.096999000 +0200
|
||||
+++ gcc/testsuite/gcc.dg/20051128-1.c 2005-11-28 12:30:57.000000000 +0100
|
||||
@@ -0,0 +1,41 @@
|
||||
+/* { dg-do run } */
|
||||
+/* { dg-options "-O2 -fpic" } */
|
||||
+
|
||||
+extern void exit (int);
|
||||
+extern void abort (void);
|
||||
+
|
||||
+int b;
|
||||
+
|
||||
+struct A
|
||||
+{
|
||||
+ void *pad[147];
|
||||
+ void *ra, *h;
|
||||
+ long o;
|
||||
+};
|
||||
+
|
||||
+void
|
||||
+__attribute__((noinline))
|
||||
+foo (struct A *a, void *x)
|
||||
+{
|
||||
+ __builtin_memset (a, 0, sizeof (a));
|
||||
+ if (!b)
|
||||
+ exit (0);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+__attribute__((noinline))
|
||||
+bar (void)
|
||||
+{
|
||||
+ struct A a;
|
||||
+
|
||||
+ __builtin_unwind_init ();
|
||||
+ foo (&a, __builtin_return_address (0));
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+main (void)
|
||||
+{
|
||||
+ bar ();
|
||||
+ abort ();
|
||||
+ return 0;
|
||||
+}
|
|
@ -1,231 +0,0 @@
|
|||
2015-04-17 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR target/65689
|
||||
* genpreds.c (struct constraint_data): Add maybe_allows_reg and
|
||||
maybe_allows_mem bitfields.
|
||||
(maybe_allows_none_start, maybe_allows_none_end,
|
||||
maybe_allows_reg_start, maybe_allows_reg_end, maybe_allows_mem_start,
|
||||
maybe_allows_mem_end): New variables.
|
||||
(compute_maybe_allows): New function.
|
||||
(add_constraint): Use it to initialize maybe_allows_reg and
|
||||
maybe_allows_mem fields.
|
||||
(choose_enum_order): Sort the non-is_register/is_const_int/is_memory/
|
||||
is_address constraints such that those that allow neither mem nor
|
||||
reg come first, then those that only allow reg but not mem, then
|
||||
those that only allow mem but not reg, then the rest.
|
||||
(write_allows_reg_mem_function): New function.
|
||||
(write_tm_preds_h): Call it.
|
||||
* stmt.c (parse_output_constraint, parse_input_constraint): Use
|
||||
the generated insn_extra_constraint_allows_reg_mem function
|
||||
instead of always setting *allows_reg = true; *allows_mem = true;
|
||||
for unknown extra constraints.
|
||||
|
||||
* gcc.target/aarch64/c-output-template-4.c: New test.
|
||||
|
||||
--- gcc/genpreds.c.jj 2015-04-08 18:23:50.643556230 +0200
|
||||
+++ gcc/genpreds.c 2015-04-17 17:44:23.097650110 +0200
|
||||
@@ -640,12 +640,14 @@ struct constraint_data
|
||||
const char *regclass; /* for register constraints */
|
||||
rtx exp; /* for other constraints */
|
||||
unsigned int lineno; /* line of definition */
|
||||
- unsigned int is_register : 1;
|
||||
- unsigned int is_const_int : 1;
|
||||
- unsigned int is_const_dbl : 1;
|
||||
- unsigned int is_extra : 1;
|
||||
- unsigned int is_memory : 1;
|
||||
- unsigned int is_address : 1;
|
||||
+ unsigned int is_register : 1;
|
||||
+ unsigned int is_const_int : 1;
|
||||
+ unsigned int is_const_dbl : 1;
|
||||
+ unsigned int is_extra : 1;
|
||||
+ unsigned int is_memory : 1;
|
||||
+ unsigned int is_address : 1;
|
||||
+ unsigned int maybe_allows_reg : 1;
|
||||
+ unsigned int maybe_allows_mem : 1;
|
||||
};
|
||||
|
||||
/* Overview of all constraints beginning with a given letter. */
|
||||
@@ -691,6 +693,9 @@ static unsigned int satisfied_start;
|
||||
static unsigned int const_int_start, const_int_end;
|
||||
static unsigned int memory_start, memory_end;
|
||||
static unsigned int address_start, address_end;
|
||||
+static unsigned int maybe_allows_none_start, maybe_allows_none_end;
|
||||
+static unsigned int maybe_allows_reg_start, maybe_allows_reg_end;
|
||||
+static unsigned int maybe_allows_mem_start, maybe_allows_mem_end;
|
||||
|
||||
/* Convert NAME, which contains angle brackets and/or underscores, to
|
||||
a string that can be used as part of a C identifier. The string
|
||||
@@ -711,6 +716,34 @@ mangle (const char *name)
|
||||
return XOBFINISH (rtl_obstack, const char *);
|
||||
}
|
||||
|
||||
+/* Return a bitmask, bit 1 if EXP maybe allows a REG/SUBREG, 2 if EXP
|
||||
+ maybe allows a MEM. Bits should be clear only when we are sure it
|
||||
+ will not allow a REG/SUBREG or a MEM. */
|
||||
+static int
|
||||
+compute_maybe_allows (rtx exp)
|
||||
+{
|
||||
+ switch (GET_CODE (exp))
|
||||
+ {
|
||||
+ case IF_THEN_ELSE:
|
||||
+ /* Conservative answer is like IOR, of the THEN and ELSE branches. */
|
||||
+ return compute_maybe_allows (XEXP (exp, 1))
|
||||
+ | compute_maybe_allows (XEXP (exp, 2));
|
||||
+ case AND:
|
||||
+ return compute_maybe_allows (XEXP (exp, 0))
|
||||
+ & compute_maybe_allows (XEXP (exp, 1));
|
||||
+ case IOR:
|
||||
+ return compute_maybe_allows (XEXP (exp, 0))
|
||||
+ | compute_maybe_allows (XEXP (exp, 1));
|
||||
+ case MATCH_CODE:
|
||||
+ if (*XSTR (exp, 1) == '\0')
|
||||
+ return (strstr (XSTR (exp, 0), "reg") != NULL ? 1 : 0)
|
||||
+ | (strstr (XSTR (exp, 0), "mem") != NULL ? 2 : 0);
|
||||
+ /* FALLTHRU */
|
||||
+ default:
|
||||
+ return 3;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
/* Add one constraint, of any sort, to the tables. NAME is its name;
|
||||
REGCLASS is the register class, if any; EXP is the expression to
|
||||
test, if any; IS_MEMORY and IS_ADDRESS indicate memory and address
|
||||
@@ -866,6 +899,11 @@ add_constraint (const char *name, const
|
||||
c->is_extra = !(regclass || is_const_int || is_const_dbl);
|
||||
c->is_memory = is_memory;
|
||||
c->is_address = is_address;
|
||||
+ int maybe_allows = 3;
|
||||
+ if (exp)
|
||||
+ maybe_allows = compute_maybe_allows (exp);
|
||||
+ c->maybe_allows_reg = (maybe_allows & 1) != 0;
|
||||
+ c->maybe_allows_mem = (maybe_allows & 2) != 0;
|
||||
|
||||
c->next_this_letter = *slot;
|
||||
*slot = c;
|
||||
@@ -940,8 +978,30 @@ choose_enum_order (void)
|
||||
enum_order[next++] = c;
|
||||
address_end = next;
|
||||
|
||||
+ maybe_allows_none_start = next;
|
||||
+ FOR_ALL_CONSTRAINTS (c)
|
||||
+ if (!c->is_register && !c->is_const_int && !c->is_memory && !c->is_address
|
||||
+ && !c->maybe_allows_reg && !c->maybe_allows_mem)
|
||||
+ enum_order[next++] = c;
|
||||
+ maybe_allows_none_end = next;
|
||||
+
|
||||
+ maybe_allows_reg_start = next;
|
||||
+ FOR_ALL_CONSTRAINTS (c)
|
||||
+ if (!c->is_register && !c->is_const_int && !c->is_memory && !c->is_address
|
||||
+ && c->maybe_allows_reg && !c->maybe_allows_mem)
|
||||
+ enum_order[next++] = c;
|
||||
+ maybe_allows_reg_end = next;
|
||||
+
|
||||
+ maybe_allows_mem_start = next;
|
||||
+ FOR_ALL_CONSTRAINTS (c)
|
||||
+ if (!c->is_register && !c->is_const_int && !c->is_memory && !c->is_address
|
||||
+ && !c->maybe_allows_reg && c->maybe_allows_mem)
|
||||
+ enum_order[next++] = c;
|
||||
+ maybe_allows_mem_end = next;
|
||||
+
|
||||
FOR_ALL_CONSTRAINTS (c)
|
||||
- if (!c->is_register && !c->is_const_int && !c->is_memory && !c->is_address)
|
||||
+ if (!c->is_register && !c->is_const_int && !c->is_memory && !c->is_address
|
||||
+ && c->maybe_allows_reg && c->maybe_allows_mem)
|
||||
enum_order[next++] = c;
|
||||
gcc_assert (next == num_constraints);
|
||||
}
|
||||
@@ -1229,6 +1289,41 @@ write_range_function (const char *name,
|
||||
"}\n\n", name);
|
||||
}
|
||||
|
||||
+/* Write a definition for insn_extra_constraint_allows_reg_mem function. */
|
||||
+static void
|
||||
+write_allows_reg_mem_function (void)
|
||||
+{
|
||||
+ printf ("static inline void\n"
|
||||
+ "insn_extra_constraint_allows_reg_mem (enum constraint_num c,\n"
|
||||
+ "\t\t\t\t bool *allows_reg, bool *allows_mem)\n"
|
||||
+ "{\n");
|
||||
+ if (maybe_allows_none_start != maybe_allows_none_end)
|
||||
+ printf (" if (c >= CONSTRAINT_%s && c <= CONSTRAINT_%s)\n"
|
||||
+ " return;\n",
|
||||
+ enum_order[maybe_allows_none_start]->c_name,
|
||||
+ enum_order[maybe_allows_none_end - 1]->c_name);
|
||||
+ if (maybe_allows_reg_start != maybe_allows_reg_end)
|
||||
+ printf (" if (c >= CONSTRAINT_%s && c <= CONSTRAINT_%s)\n"
|
||||
+ " {\n"
|
||||
+ " *allows_reg = true;\n"
|
||||
+ " return;\n"
|
||||
+ " }\n",
|
||||
+ enum_order[maybe_allows_reg_start]->c_name,
|
||||
+ enum_order[maybe_allows_reg_end - 1]->c_name);
|
||||
+ if (maybe_allows_mem_start != maybe_allows_mem_end)
|
||||
+ printf (" if (c >= CONSTRAINT_%s && c <= CONSTRAINT_%s)\n"
|
||||
+ " {\n"
|
||||
+ " *allows_mem = true;\n"
|
||||
+ " return;\n"
|
||||
+ " }\n",
|
||||
+ enum_order[maybe_allows_mem_start]->c_name,
|
||||
+ enum_order[maybe_allows_mem_end - 1]->c_name);
|
||||
+ printf (" (void) c;\n"
|
||||
+ " *allows_reg = true;\n"
|
||||
+ " *allows_mem = true;\n"
|
||||
+ "}\n\n");
|
||||
+}
|
||||
+
|
||||
/* VEC is a list of key/value pairs, with the keys being lower bounds
|
||||
of a range. Output a decision tree that handles the keys covered by
|
||||
[VEC[START], VEC[END]), returning FALLBACK for keys lower then VEC[START]'s.
|
||||
@@ -1326,6 +1421,7 @@ write_tm_preds_h (void)
|
||||
memory_start, memory_end);
|
||||
write_range_function ("insn_extra_address_constraint",
|
||||
address_start, address_end);
|
||||
+ write_allows_reg_mem_function ();
|
||||
|
||||
if (constraint_max_namelen > 1)
|
||||
{
|
||||
--- gcc/stmt.c.jj 2015-04-08 18:23:50.660555956 +0200
|
||||
+++ gcc/stmt.c 2015-04-17 17:36:50.623044548 +0200
|
||||
@@ -342,13 +342,7 @@ parse_output_constraint (const char **co
|
||||
else if (insn_extra_memory_constraint (cn))
|
||||
*allows_mem = true;
|
||||
else
|
||||
- {
|
||||
- /* Otherwise we can't assume anything about the nature of
|
||||
- the constraint except that it isn't purely registers.
|
||||
- Treat it like "g" and hope for the best. */
|
||||
- *allows_reg = true;
|
||||
- *allows_mem = true;
|
||||
- }
|
||||
+ insn_extra_constraint_allows_reg_mem (cn, allows_reg, allows_mem);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -465,13 +459,7 @@ parse_input_constraint (const char **con
|
||||
else if (insn_extra_memory_constraint (cn))
|
||||
*allows_mem = true;
|
||||
else
|
||||
- {
|
||||
- /* Otherwise we can't assume anything about the nature of
|
||||
- the constraint except that it isn't purely registers.
|
||||
- Treat it like "g" and hope for the best. */
|
||||
- *allows_reg = true;
|
||||
- *allows_mem = true;
|
||||
- }
|
||||
+ insn_extra_constraint_allows_reg_mem (cn, allows_reg, allows_mem);
|
||||
break;
|
||||
}
|
||||
|
||||
--- gcc/testsuite/gcc.target/aarch64/c-output-template-4.c.jj 2015-04-17 17:48:27.588654584 +0200
|
||||
+++ gcc/testsuite/gcc.target/aarch64/c-output-template-4.c 2015-04-17 17:48:22.149743468 +0200
|
||||
@@ -0,0 +1,10 @@
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-options "-O0" } */
|
||||
+
|
||||
+void
|
||||
+test (void)
|
||||
+{
|
||||
+ __asm__ ("@ %c0" : : "S" (&test + 4));
|
||||
+}
|
||||
+
|
||||
+/* { dg-final { scan-assembler "@ test\\+4" } } */
|
|
@ -1,38 +0,0 @@
|
|||
# Workaround doxygen 1.8.10 bugs.
|
||||
--- libstdc++-v3/doc/doxygen/user.cfg.in
|
||||
+++ libstdc++-v3/doc/doxygen/user.cfg.in
|
||||
@@ -895,7 +895,6 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \
|
||||
include/ext/pb_ds/detail/binary_heap_ \
|
||||
include/ext/pb_ds/detail/binomial_heap_ \
|
||||
include/ext/pb_ds/detail/binomial_heap_base_ \
|
||||
- include/ext/pb_ds/detail/bin_search_tree_ \
|
||||
include/ext/pb_ds/detail/branch_policy \
|
||||
include/ext/pb_ds/detail/cc_hash_table_map_ \
|
||||
include/ext/pb_ds/detail/eq_fn \
|
||||
@@ -1965,18 +1964,6 @@ GENERATE_XML = @do_xml@
|
||||
|
||||
XML_OUTPUT = xml
|
||||
|
||||
-# The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a
|
||||
-# validating XML parser to check the syntax of the XML files.
|
||||
-# This tag requires that the tag GENERATE_XML is set to YES.
|
||||
-
|
||||
-XML_SCHEMA =
|
||||
-
|
||||
-# The XML_DTD tag can be used to specify a XML DTD, which can be used by a
|
||||
-# validating XML parser to check the syntax of the XML files.
|
||||
-# This tag requires that the tag GENERATE_XML is set to YES.
|
||||
-
|
||||
-XML_DTD =
|
||||
-
|
||||
# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
|
||||
# listings (including syntax highlighting and cross-referencing information) to
|
||||
# the XML output. Note that enabling this will significantly increase the size
|
||||
@@ -2135,6 +2122,7 @@ PREDEFINED = __cplusplus=201103L \
|
||||
_GLIBCXX_USE_CONSTEXPR=constexpr \
|
||||
"_GLIBCXX_THROW(E)= " \
|
||||
_GLIBCXX_NOEXCEPT=noexcept \
|
||||
+ "_GLIBCXX_NOEXCEPT_IF(E)=noexcept(E)" \
|
||||
_GLIBCXX_NOTHROW=noexcept \
|
||||
_GLIBCXX_USE_NOEXCEPT=noexcept \
|
||||
_GLIBCXX_USE_WCHAR_T \
|
|
@ -1,27 +0,0 @@
|
|||
2007-10-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* Makefile.am (libgcj_tools_la_LIBADD): Add.
|
||||
* Makefile.in: Regenerated.
|
||||
|
||||
--- libjava/Makefile.am.jj 2009-05-06 08:14:50.000000000 +0200
|
||||
+++ libjava/Makefile.am 2009-05-06 10:26:43.000000000 +0200
|
||||
@@ -550,7 +550,7 @@ libgcj_tools_la_LDFLAGS = -rpath $(toole
|
||||
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF) \
|
||||
$(LIBJAVA_LDFLAGS_LIBMATH)
|
||||
|
||||
-libgcj_tools_la_LIBADD = libgcj.la
|
||||
+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la
|
||||
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec \
|
||||
$(libgcj_tools_la_version_dep)
|
||||
if BUILD_SUBLIBS
|
||||
--- libjava/Makefile.in.jj 2009-05-06 08:14:49.000000000 +0200
|
||||
+++ libjava/Makefile.in 2009-05-06 10:27:18.000000000 +0200
|
||||
@@ -1110,7 +1110,7 @@ libgcj_tools_la_LDFLAGS = -rpath $(toole
|
||||
$(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF) \
|
||||
$(LIBJAVA_LDFLAGS_LIBMATH)
|
||||
|
||||
-libgcj_tools_la_LIBADD = libgcj.la
|
||||
+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la
|
||||
libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec \
|
||||
$(libgcj_tools_la_version_dep) $(am__append_19)
|
||||
libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS) \
|
4
sources
4
sources
|
@ -1 +1,3 @@
|
|||
1458ebcc302cb4ac6bab5cbf8b3f3fcc gcc-5.3.1-20151207.tar.bz2
|
||||
SHA512 (gcc-10.0.1-20200216.tar.xz) = 56507e273b00e85ed4145e80df65d9b4e4791f23e7cb5d931f85b9420cbf3a7125ba49978dc73c2987c0a6101f741dc5a60a08cb3346d4c5082400cbcfcdd008
|
||||
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 9ceea0b883185fe489724d54a7e909bb6ed4785fcadf80162033dc6a133e2657337175601278e4155d1f8fac275ff9c8a02572aea876166c608774c809f832e9
|
||||
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#!/bin/sh
|
||||
[ -d gcc-dir.tmp ] && echo gcc-dir.tmp already exists && exit 1
|
||||
git clone --depth 1 git://gcc.gnu.org/git/gcc.git gcc-dir.tmp
|
||||
git --git-dir=gcc-dir.tmp/.git fetch --depth 1 origin $1
|
||||
d=`date --iso | sed 's/-//g'`
|
||||
git --git-dir=gcc-dir.tmp/.git archive --prefix=gcc-10.0.1-$d/ $1 | xz -9e > gcc-10.0.1-$d.tar.xz
|
||||
rm -rf gcc-dir.tmp
|
Loading…
Reference in New Issue