Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
26 changed files
with
8,354 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 | ||
@@ -481,7 +481,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 $wf_opt])), [loose_warn]) | ||
--- 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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
2017-01-20 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_images_for_offload_targets): If OFFLOAD_TARGET_DEFAULT | ||
is in the environment, don't fail if corresponding mkoffload | ||
can't be found. 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. */ | ||
@@ -790,8 +791,10 @@ compile_images_for_offload_targets (unsi | ||
if (!target_names) | ||
return; | ||
unsigned num_targets = parse_env_var (target_names, &names, NULL); | ||
+ const char *target_names_default = getenv (OFFLOAD_TARGET_DEFAULT_ENV); | ||
|
||
int next_name_entry = 0; | ||
+ bool hsa_seen = false; | ||
const char *compiler_path = getenv ("COMPILER_PATH"); | ||
if (!compiler_path) | ||
goto out; | ||
@@ -804,18 +807,32 @@ 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\n", names[i]); | ||
+ { | ||
+ if (target_names_default != NULL) | ||
+ continue; | ||
+ fatal_error (input_location, | ||
+ "problem with building target image for %s\n", | ||
+ names[i]); | ||
+ } | ||
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, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
--- 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 | ||
ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR)) | ||
ADA_RTS_SUBDIR=./rts$(subst /,_,$(MULTISUBDIR)) | ||
|
||
+DEFAULTMULTIFLAGS := | ||
+ifeq ($(MULTISUBDIR),) | ||
+targ:=$(subst -, ,$(target)) | ||
+arch:=$(word 1,$(targ)) | ||
+ifeq ($(words $(targ)),2) | ||
+osys:=$(word 2,$(targ)) | ||
+else | ||
+osys:=$(word 3,$(targ)) | ||
+endif | ||
+ifeq ($(strip $(filter-out i%86 x86_64 powerpc% ppc% s390% sparc% linux%, $(arch) $(osys))),) | ||
+ifeq ($(shell $(CC) $(CFLAGS) -print-multi-os-directory),../lib64) | ||
+DEFAULTMULTIFLAGS := -m64 | ||
+else | ||
+ifeq ($(strip $(filter-out s390%, $(arch))),) | ||
+DEFAULTMULTIFLAGS := -m31 | ||
+else | ||
+DEFAULTMULTIFLAGS := -m32 | ||
+endif | ||
+endif | ||
+endif | ||
+endif | ||
+ | ||
# exeext should not be used because it's the *host* exeext. We're building | ||
# a *target* library, aren't we?!? Likewise for CC. Still, provide bogus | ||
# definitions just in case something slips through the safety net provided | ||
# by recursive make invocations in gcc/ada/Makefile.in | ||
LIBADA_FLAGS_TO_PASS = \ | ||
"MAKEOVERRIDES=" \ | ||
- "LDFLAGS=$(LDFLAGS)" \ | ||
+ "LDFLAGS=$(LDFLAGS) $(DEFAULTMULTIFLAGS)" \ | ||
"LN_S=$(LN_S)" \ | ||
"SHELL=$(SHELL)" \ | ||
- "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS)" \ | ||
- "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS)" \ | ||
- "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS)" \ | ||
+ "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ | ||
+ "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ | ||
+ "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ | ||
"PICFLAG_FOR_TARGET=$(PICFLAG)" \ | ||
"THREAD_KIND=$(THREAD_KIND)" \ | ||
"TRACE=$(TRACE)" \ | ||
@@ -88,7 +110,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 | ||
--- config-ml.in.jj 2010-06-30 09:50:44.000000000 +0200 | ||
+++ config-ml.in 2010-07-02 21:24:17.994211151 +0200 | ||
@@ -511,6 +511,8 @@ multi-do: | ||
ADAFLAGS="$(ADAFLAGS) $${flags}" \ | ||
prefix="$(prefix)" \ | ||
exec_prefix="$(exec_prefix)" \ | ||
+ mandir="$(mandir)" \ | ||
+ infodir="$(infodir)" \ | ||
GOCFLAGS="$(GOCFLAGS) $${flags}" \ | ||
CXXFLAGS="$(CXXFLAGS) $${flags}" \ | ||
LIBCFLAGS="$(LIBCFLAGS) $${flags}" \ | ||
--- 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; | ||
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 | ||
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; | ||
} | ||
break; | ||
@@ -3072,7 +3071,8 @@ 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; | ||
} | ||
|
||
--- 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, | ||
if ((result & CPP_N_WIDTH) == CPP_N_LARGE | ||
&& CPP_OPTION (pfile, cpp_warn_long_long)) | ||
{ | ||
- const char *message = CPP_OPTION (pfile, cplusplus) | ||
- ? N_("use of C++11 long long integer constant") | ||
- : N_("use of C99 long long integer constant"); | ||
- | ||
if (CPP_OPTION (pfile, c99)) | ||
cpp_warning_with_line (pfile, CPP_W_LONG_LONG, virtual_location, | ||
- 0, message); | ||
+ 0, CPP_OPTION (pfile, cplusplus) | ||
+ ? N_("use of C++11 long long integer constant") | ||
+ : N_("use of C99 long long integer constant")); | ||
else | ||
cpp_pedwarning_with_line (pfile, CPP_W_LONG_LONG, | ||
- virtual_location, 0, message); | ||
+ virtual_location, 0, | ||
+ CPP_OPTION (pfile, cplusplus) | ||
+ ? N_("use of C++11 long long integer constant") | ||
+ : N_("use of C99 long long integer constant")); | ||
} | ||
|
||
result |= CPP_N_INTEGER; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--- libgomp/configure.tgt.jj 2008-01-10 20:53:48.000000000 +0100 | ||
+++ libgomp/configure.tgt 2008-03-27 12:44:51.000000000 +0100 | ||
@@ -67,7 +67,7 @@ if test $enable_linux_futex = yes; then | ||
;; | ||
*) | ||
if test -z "$with_arch"; then | ||
- XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" | ||
+ XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" | ||
fi | ||
esac | ||
;; |
Oops, something went wrong.