Magellan Linux

Annotation of /trunk/gcc/patches/gcc-7.1.0-lto-fix.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2948 - (hide annotations) (download)
Mon Jun 26 08:31:35 2017 UTC (6 years, 11 months ago) by niro
File size: 2488 byte(s)
-added 7.1.0 patches
1 niro 2948 commit 43d83a70267a9e5c456d28de8e7348820446b712
2     Author: BartÅ‚omiej Piotrowski <bpiotrowski@archlinux.org>
3     Date: Tue May 16 07:50:42 2017 +0200
4    
5     Revert "Prevent LTO wrappers to process a recursive execution"
6    
7     This reverts commit eeb6872bfdfd1e71b27de6f62a5f5c08a2efb015.
8    
9     diff --git a/gcc/file-find.c b/gcc/file-find.c
10     index b072a4993d76..b5a1fe8494e8 100644
11     --- a/gcc/file-find.c
12     +++ b/gcc/file-find.c
13     @@ -208,38 +208,3 @@ prefix_from_string (const char *p, struct path_prefix *pprefix)
14     }
15     free (nstore);
16     }
17     -
18     -void
19     -remove_prefix (const char *prefix, struct path_prefix *pprefix)
20     -{
21     - struct prefix_list *remove, **prev, **remove_prev = NULL;
22     - int max_len = 0;
23     -
24     - if (pprefix->plist)
25     - {
26     - prev = &pprefix->plist;
27     - for (struct prefix_list *pl = pprefix->plist; pl->next; pl = pl->next)
28     - {
29     - if (strcmp (prefix, pl->prefix) == 0)
30     - {
31     - remove = pl;
32     - remove_prev = prev;
33     - continue;
34     - }
35     -
36     - int l = strlen (pl->prefix);
37     - if (l > max_len)
38     - max_len = l;
39     -
40     - prev = &pl;
41     - }
42     -
43     - if (remove_prev)
44     - {
45     - *remove_prev = remove->next;
46     - free (remove);
47     - }
48     -
49     - pprefix->max_len = max_len;
50     - }
51     -}
52     diff --git a/gcc/file-find.h b/gcc/file-find.h
53     index 8f49a3af273e..407feba26e74 100644
54     --- a/gcc/file-find.h
55     +++ b/gcc/file-find.h
56     @@ -41,7 +41,6 @@ extern void find_file_set_debug (bool);
57     extern char *find_a_file (struct path_prefix *, const char *, int);
58     extern void add_prefix (struct path_prefix *, const char *);
59     extern void add_prefix_begin (struct path_prefix *, const char *);
60     -extern void remove_prefix (const char *prefix, struct path_prefix *);
61     extern void prefix_from_env (const char *, struct path_prefix *);
62     extern void prefix_from_string (const char *, struct path_prefix *);
63    
64     diff --git a/gcc/gcc-ar.c b/gcc/gcc-ar.c
65     index 78d2fc1ad306..d5d80e042e5a 100644
66     --- a/gcc/gcc-ar.c
67     +++ b/gcc/gcc-ar.c
68     @@ -194,14 +194,6 @@ main (int ac, char **av)
69     #ifdef CROSS_DIRECTORY_STRUCTURE
70     real_exe_name = concat (target_machine, "-", PERSONALITY, NULL);
71     #endif
72     - /* Do not search original location in the same folder. */
73     - char *exe_folder = lrealpath (av[0]);
74     - exe_folder[strlen (exe_folder) - strlen (lbasename (exe_folder))] = '\0';
75     - char *location = concat (exe_folder, PERSONALITY, NULL);
76     -
77     - if (access (location, X_OK) == 0)
78     - remove_prefix (exe_folder, &path);
79     -
80     exe_name = find_a_file (&path, real_exe_name, X_OK);
81     if (!exe_name)
82     {