summaryrefslogtreecommitdiffstats
path: root/src/gcc-1-fixes.patch
blob: cfa089d217c66d4ffafa694ab2b0f011fb098a5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
This file is part of MXE. See LICENSE.md for licensing information.

Contains ad hoc patches for cross building.

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Thu, 2 Feb 2017 02:05:50 +1100
Subject: [PATCH] allow native cpu detection when building with clang

function was disabled for non-gcc5 in:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=b587c12551143c14f023860a1dbdf7316ae71f27;hp=43096b526a9f23008b9769372f11475ae63487bc

clang can build it correctly and this should probably be a feature test

diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c
index 1111111..2222222 100644
--- a/gcc/config/i386/driver-i386.c
+++ b/gcc/config/i386/driver-i386.c
@@ -24,7 +24,7 @@ along with GCC; see the file COPYING3.  If not see
 
 const char *host_detect_local_cpu (int argc, const char **argv);
 
-#if defined(__GNUC__) && (__GNUC__ >= 5 || !defined(__PIC__))
+#if defined(__GNUC__) && (__GNUC__ >= 5 || !defined(__PIC__)) || defined(__clang__)
 #include "cpuid.h"
 
 struct cache_desc

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: iains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon, 25 Sep 2017 23:49:58 +0000
Subject: [PATCH] Fix 81037 by adjutng headers

taken from:
https://github.com/gcc-mirror/gcc/commit/8e49ac832c6ef83afa52e59f0e7e0e6151f5bd3d

2017-09-26  Iain Sandoe  <iain@codesourcery.com>
            Ryan Mounce  <ryan@mounce.com.au>

	PR bootstrap/81037
 	Backport from mainline r235362
 	2016-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* system.h (list, map, set, vector): Include conditionally.
	* auto-profile.c (INCLUDE_MAP, INCLUDE_SET): Define.
	* graphite-isl-ast-to-gimple.c (INCLUDE_MAP): Define.
	* ipa-icf.c (INCLUDE_LIST): Define.
	* ipa-icf-gimple.c (INCLUDE_LIST): Define.
	* config/sh/sh.c (INCLUDE_VECTOR): Define.
	* config/sh/sh_treg_combine.cc (INCLUDE_ALGORITHM): Define.
	(INCLUDE_LIST, INCLUDE_VECTOR): Define.
	* fortran/trans-common.c (INCLUDE_MAP): Define.

	Backport from mainline r235361
	2016-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* auto-profile.c: Remove <string.h> include.
	* diagnostic.c: Remove <new> include.
	* genmatch.c: Likewise.
	* pretty-print.c: Likewise.
	* toplev.c: Likewise
	* c/c-objc-common.c: Likewise.
	* cp/error.c: Likewise.
	* fortran/error.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@253181 138bc75d-0d04-0410-961f-82ee72b054a4

diff --git a/gcc/auto-profile.c b/gcc/auto-profile.c
index 1111111..2222222 100644
--- a/gcc/auto-profile.c
+++ b/gcc/auto-profile.c
@@ -19,12 +19,10 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #include "config.h"
+#define INCLUDE_MAP
+#define INCLUDE_SET
 #include "system.h"
 
-#include <string.h>
-#include <map>
-#include <set>
-
 #include "coretypes.h"
 #include "hash-set.h"
 #include "machmode.h"
diff --git a/gcc/c/c-objc-common.c b/gcc/c/c-objc-common.c
index 1111111..2222222 100644
--- a/gcc/c/c-objc-common.c
+++ b/gcc/c/c-objc-common.c
@@ -38,8 +38,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "langhooks.h"
 #include "c-objc-common.h"
 
-#include <new>                          // For placement new.
-
 static bool c_tree_printer (pretty_printer *, text_info *, const char *,
 			    int, bool, bool, bool);
 
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 1111111..2222222 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -20,9 +20,9 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #include <sstream>
-#include <vector>
 
 #include "config.h"
+#define INCLUDE_VECTOR
 #include "system.h"
 #include "coretypes.h"
 #include "tm.h"
diff --git a/gcc/config/sh/sh_treg_combine.cc b/gcc/config/sh/sh_treg_combine.cc
index 1111111..2222222 100644
--- a/gcc/config/sh/sh_treg_combine.cc
+++ b/gcc/config/sh/sh_treg_combine.cc
@@ -19,6 +19,9 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #include "config.h"
+#define INCLUDE_ALGORITHM
+#define INCLUDE_LIST
+#define INCLUDE_VECTOR
 #include "system.h"
 #include "coretypes.h"
 #include "machmode.h"
@@ -65,10 +68,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "stmt.h"
 #include "expr.h"
 
-#include <algorithm>
-#include <list>
-#include <vector>
-
 /*
 This pass tries to optimize for example this:
 	mov.l	@(4,r4),r1
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index 1111111..2222222 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -44,8 +44,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "ubsan.h"
 #include "internal-fn.h"
 
-#include <new>                    // For placement-new.
-
 #define pp_separate_with_comma(PP) pp_cxx_separate_with (PP, ',')
 #define pp_separate_with_semicolon(PP) pp_cxx_separate_with (PP, ';')
 
diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
index 1111111..2222222 100644
--- a/gcc/diagnostic.c
+++ b/gcc/diagnostic.c
@@ -41,8 +41,6 @@ along with GCC; see the file COPYING3.  If not see
 # include <sys/ioctl.h>
 #endif
 
-#include <new>                     // For placement new.
-
 #define pedantic_warning_kind(DC)			\
   ((DC)->pedantic_errors ? DK_ERROR : DK_WARNING)
 #define permissive_error_kind(DC) ((DC)->permissive ? DK_WARNING : DK_ERROR)
diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c
index 1111111..2222222 100644
--- a/gcc/fortran/error.c
+++ b/gcc/fortran/error.c
@@ -34,8 +34,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "diagnostic-color.h"
 #include "tree-diagnostic.h" /* tree_diagnostics_defaults */
 
-#include <new> /* For placement-new */
-
 static int suppress_errors = 0;
 
 static bool warnings_not_errors = false;
diff --git a/gcc/fortran/trans-common.c b/gcc/fortran/trans-common.c
index 1111111..2222222 100644
--- a/gcc/fortran/trans-common.c
+++ b/gcc/fortran/trans-common.c
@@ -92,8 +92,8 @@ along with GCC; see the file COPYING3.  If not see
    is examined for still-unused equivalence conditions.  We create a
    block for each merged equivalence list.  */
 
-#include <map>
 #include "config.h"
+#define INCLUDE_MAP
 #include "system.h"
 #include "coretypes.h"
 #include "tm.h"
diff --git a/gcc/genmatch.c b/gcc/genmatch.c
index 1111111..2222222 100644
--- a/gcc/genmatch.c
+++ b/gcc/genmatch.c
@@ -22,7 +22,6 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #include "bconfig.h"
-#include <new>
 #include "system.h"
 #include "coretypes.h"
 #include "ggc.h"
diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c
index 1111111..2222222 100644
--- a/gcc/graphite-isl-ast-to-gimple.c
+++ b/gcc/graphite-isl-ast-to-gimple.c
@@ -38,6 +38,7 @@ extern "C" {
 #endif
 #endif
 
+#define INCLUDE_MAP
 #include "system.h"
 #include "coretypes.h"
 #include "hash-set.h"
@@ -75,7 +76,6 @@ extern "C" {
 #include "tree-scalar-evolution.h"
 #include "gimple-ssa.h"
 #include "tree-into-ssa.h"
-#include <map>
 
 #ifdef HAVE_isl
 #include "graphite-poly.h"
diff --git a/gcc/ipa-icf-gimple.c b/gcc/ipa-icf-gimple.c
index 1111111..2222222 100644
--- a/gcc/ipa-icf-gimple.c
+++ b/gcc/ipa-icf-gimple.c
@@ -20,6 +20,7 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #include "config.h"
+#define INCLUDE_LIST
 #include "system.h"
 #include "coretypes.h"
 #include "hash-set.h"
@@ -74,7 +75,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "cgraph.h"
 #include "data-streamer.h"
 #include "ipa-utils.h"
-#include <list>
 #include "tree-ssanames.h"
 #include "tree-eh.h"
 #include "builtins.h"
diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c
index 1111111..2222222 100644
--- a/gcc/ipa-icf.c
+++ b/gcc/ipa-icf.c
@@ -52,8 +52,8 @@ along with GCC; see the file COPYING3.  If not see
 */
 
 #include "config.h"
+#define INCLUDE_LIST
 #include "system.h"
-#include <list>
 #include "coretypes.h"
 #include "hash-set.h"
 #include "machmode.h"
diff --git a/gcc/pretty-print.c b/gcc/pretty-print.c
index 1111111..2222222 100644
--- a/gcc/pretty-print.c
+++ b/gcc/pretty-print.c
@@ -25,8 +25,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "pretty-print.h"
 #include "diagnostic-color.h"
 
-#include <new>                    // For placement-new.
-
 #if HAVE_ICONV
 #include <iconv.h>
 #endif
diff --git a/gcc/system.h b/gcc/system.h
index 1111111..2222222 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -215,6 +215,18 @@ extern int errno;
 #endif
 
 #ifdef __cplusplus
+# ifdef INCLUDE_LIST
+#  include <list>
+# endif
+# ifdef INCLUDE_MAP
+#  include <map>
+# endif
+# ifdef INCLUDE_SET
+#  include <set>
+# endif
+# ifdef INCLUDE_VECTOR
+#  include <vector>
+# endif
 # include <algorithm>
 # include <cstring>
 # include <utility>
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 1111111..2222222 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -135,8 +135,6 @@ along with GCC; see the file COPYING3.  If not see
 #define HAVE_prologue 0
 #endif
 
-#include <new>
-
 static void general_init (const char *, bool);
 static void do_compile ();
 static void process_options (void);