re PR ipa/64550 (IPA fixes cause ICE in tree-ssa.c:939)
[platform/upstream/gcc.git] / gcc / ChangeLog
1 2015-01-12  Chen Gang  <gang.chen.5i5j@gmail.com>
2
3         PR ipa/64550
4         PR ipa/64551
5         PR ipa/64552
6         * ipa-icf.c (sem_function::equals_private): Use '&&' instead of
7         '||' to fix typo issue.
8
9         * gcc/tree.h (target_opts_for_fn): Check NULL_TREE since it can
10         accept and return NULL.
11
12 2015-01-12  Martin Liska  <mliska@suse.cz>
13
14         * cgraph.c (cgraph_edge::remove_callee): Move function to header
15         file for being inlined.
16         (cgraph_set_edge_callee): Delete.
17         (cgraph_edge::redirect_callee): Move function to header file
18         for being inlined.
19         (cgraph_edge::make_direct): Use new function.
20         (cgraph_edge::dump_edge_flags): New function created from
21         static dump_edge_flags function.
22         (cgraph_node::dump): Use new function.
23         (cgraph_edge::verify_count_and_frequency): New function created
24         from verify_edge_count_and_frequency.
25         (cgraph_edge::verify_corresponds_to_fndecl): New function created
26         from verify_edge_corresponds_to_fndecl.
27         (verify_edge_corresponds_to_fndecl): Delete.
28         (cgraph_node::verify_node): Use new function.
29         * cgraph.h (cgraph_edge::set_callee): New function.
30         (cgraph_edge::dump_edge_flags): Likewise.
31         (cgraph_edge::verify_corresponds_to_fndecl): Likewise.
32
33 2015-01-11  Jan Hubicka  <hubicka@ucw.cz>
34
35         * ipa-utils.c (estimate_function_body_sizes): Do not
36         free node params when called late with early=true.
37
38 2015-01-11  James Greenhalgh  <james.greenhalgh@arm.com>
39
40         * doc/md.texi (Instruction Patterns): Rewrite text for
41         clarity.
42         (Example): Likewise.
43
44 2015-01-10  Sandra Loosemore  <sandra@codesourcery.com>
45
46         * doc/invoke.texi (Option Summary): Break long lines.
47         [(-fdiagnostics-color)]: Put long literal in @smallexample
48         instead of inline.
49         [(-fsanitize-recover)]: Likewise.
50         [(-fdump-rtl-split*)]: Rewrite to fix over-full hbox.
51         [(-ffast-math)]: Likewise.
52         [(--param max-inline-insns-recursive)]: Likewise.
53         [(--param max-inline-recursive-depth)]: Likewise.
54         [(-mno-text-section-literals)]: Likewise.
55         
56 2015-01-10  Thomas Schwinge  <thomas@codesourcery.com>
57
58         * doc/install.texi: Update for libgomp being renamed from "GNU
59         OpenMP Runtime Library" to "GNU Offloading and Multi Processing
60         Runtime Library".
61         * doc/sourcebuild.texi: Likewise.
62
63 2015-01-10  Anthony Green  <green@moxielogic.com>
64
65         * config/moxie/moxie.c (moxie_option_override): Fix forcing of
66         mul.x availability for moxiebox configuration.
67
68 2015-01-09  Anthony Green  <green@moxielogic.com>
69
70         * config/moxie/moxie.md: Tabify assembly output.
71
72 2015-01-09  Anthony Green  <green@moxielogic.com>
73
74         * config/moxie/moxie.md (CC_REG): Correct register definition.
75
76 2015-01-09  Sandra Loosemore  <sandra@codesourcery.com>
77
78         * doc/invoke.texi ([-fvtable-verify]): Copy-edit and fix markup.
79         ([-fvtv-debug], [-fvtv-counts]): Likewise.  Correct location
80         of log files.
81
82 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
83
84         * config/arm/arm.h (MAX_SYNC_LIBFUNC_SIZE): Delete semicolon.
85
86 2015-01-09  Bernd Schmidt  <bernds@codesourcery.com>
87             Jakub Jelinek  <jakub@redhat.com>
88
89         PR middle-end/64412
90         * lto-streamer.h (lto_stream_offload_p): New declaration.
91         * lto-streamer.c (lto_stream_offload_p): New variable.
92         * cgraphunit.c (ipa_passes): Set lto_stream_offload_p
93         at the same time as section_name_prefix.
94         * lto-streamer-out.c (hash_tree): Don't hash TREE_TARGET_OPTION
95         if lto_stream_offload_p.
96         * tree-streamer-out.c (streamer_pack_tree_bitfields): Don't
97         stream TREE_TARGET_OPTION if lto_stream_offload_p.
98         (write_ts_function_decl_tree_pointers): Don't
99         stream DECL_FUNCTION_SPECIFIC_TARGET if lto_stream_offload_p.
100         * tree-streamer-in.c (unpack_value_fields): Don't stream
101         TREE_TARGET_OPTION in if ACCEL_COMPILER.
102         (lto_input_ts_function_decl_tree_pointers): Don't stream
103         DECL_FUNCTION_SPECIFIC_TARGET in if ACCEL_COMPILER.
104         * lto-opts.c (lto_write_options): Use lto_stream_offload_p
105         instead of section_name_prefix string comparisons.
106
107 2015-01-09  Jakub Jelinek  <jakub@redhat.com>
108
109         PR rtl-optimization/64536
110         * cfgrtl.c (rtl_tidy_fallthru_edge): Handle removal of degenerate
111         tablejumps.
112
113 2015-01-09  Michael Collison  <michael.collison@linaro.org>
114
115         * genattrtab.c (write_header): Include hash-set.h, machmode.h,
116         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
117         fold-const.h, wide-int.h, and inchash.h when generating
118         insn-attrtab.c.
119         * genautomata.c (main) : Include hash-set.h, macInclude hash-set.h, machmode.h,
120         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
121         fold-const.h, wide-int.h, and inchash.h when generating
122         insn-automata.c.
123         * genemit.c (main): Include hash-set.h, machmode.h,
124         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
125         fold-const.h, wide-int.h, and inchash.h when generating
126         insn-emit.c.
127         * gengtype.c (open_base_files): Include hash-set.h, machmode.h,
128         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
129         fold-const.h, wide-int.h, and inchash.h when generating
130         gtype-desc.c.
131         * genopinit.c (main): Include hash-set.h, machmode.h,
132         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
133         fold-const.h, wide-int.h, and inchash.h when generating
134         insn-opinit.c.
135         * genoutput.c (output_prologue): Include hash-set.h, machmode.h,
136         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
137         fold-const.h, wide-int.h, and inchash.h when generating
138         insn-output.c.
139         * genpeep.c (main): Include hash-set.h, machmode.h,
140         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
141         fold-const.h, wide-int.h, and inchash.h when generating
142         insn-peep.c.
143         * genpreds.c (write_insn_preds_c): Include hash-set.h, machmode.h,
144         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
145         fold-const.h, wide-int.h, and inchash.h when generating
146         insn-preds.c.
147         * optc-save-gen-awk: Include hash-set.h, machmode.h,
148         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
149         fold-const.h, wide-int.h, and inchash.h when generating
150         options-save.c.
151         * opth-gen.awk: Change include guard from GCC_C_COMMON_H to GCC_C_COMMON_C
152         when generating options.h.
153         * alias.c: Include hash-set.h, machmode.h,
154         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
155         fold-const.h, wide-int.h, and inchash.h due to
156         flattening of tree.h.
157         * asan.c: Ditto.
158         * attribs.c: Ditto.
159         * auto-inc-dec.c: Ditto.
160         * auto-profile.c: Ditto
161         * bb-reorder.c: Ditto.
162         * bt-load.c: Include symtab.h due to flattening of tree.h.
163         * builtins.c: Include hash-set.h, machmode.h,
164         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
165         fold-const.h, wide-int.h, and inchash.h due to
166         flattening of tree.h.
167         * calls.c: Include hash-set.h, machmode.h,
168         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
169         fold-const.h, wide-int.h, and inchash.h due to
170         flattening of tree.h.
171         * ccmp.c: Ditto.
172         * cfgbuild.c: Include hash-set.h, machmode.h,
173         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
174         fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
175         * cfg.c: Ditto.
176         * cfgcleanup.c: Ditto.
177         * cfgexpand.c: Ditto.
178         * cfghooks.c: Ditto.
179         * cfgloop.c: Include symtab.h, fold-const.h, and
180         inchash.h due to flattening of tree.h.
181         * cfgloopmanip.c: Ditto.
182         * cfgrtl.c: Include hash-set.h, machmode.h,
183         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
184         fold-const.h, wide-int.h, and inchash.h due to
185         flattening of tree.h.
186         * cgraphbuild.c: Ditto.
187         * cgraph.c: Ditto.
188         * cgraphclones.c: Ditto.
189         * cgraphunit.c: Ditto.
190         * cilk-common.c: Ditto.
191         * combine.c: Ditto.
192         * combine-stack-adj.c: Include symbol.h due to flattening of tree.h.
193         * config/aarch64/aarch64-builtins.c: Include hash-set.h, machmode.h,
194         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
195         fold-const.h, wide-int.h, and inchash.h due to
196         flattening of tree.h.
197         * config/aarch64/aarch64.c: Ditto.
198         * config/alpha/alpha.c: Ditto.
199         * config/arc/arc.c: Ditto.
200         * config/arm/aarch-common.c: Ditto.
201         * config/arm/arm-builtins.c: Ditto.
202         * config/arm/arm.c: Ditto.
203         * config/arm/arm-c.c: Ditto.
204         * config/avr/avr.c: Ditto.
205         * config/avr/avr-c.c: Ditto.
206         * config/avr/avr-log.c: Ditto.
207         * config/bfin/bfin.c: Ditto.
208         * config/c6x/c6x.c: Ditto.
209         * config/cr16/cr16.c: Ditto.
210         * config/cris/cris.c: Ditto.
211         * config/darwin.c: Ditto.
212         * config/darwin-c.c: Ditto.
213         * config/default-c.c: Ditto.
214         * config/epiphany/epiphany.c: Ditto.
215         * config/fr30/fr30.c: Ditto.
216         * config/frv/frv.c: Ditto.
217         * config/glibc-c.c: Ditto.
218         * config/h8300/h8300.c: Ditto.
219         * config/i386/i386.c: Ditto.
220         * config/i386/i386-c.c: Ditto.
221         * config/i386/msformat.c: Ditto.
222         * config/i386/winnt.c: Ditto.
223         * config/i386/winnt-cxx.c: Ditto.
224         * config/i386/winnt-stubs.c: Ditto.
225         * config/ia64/ia64.c: Ditto.
226         * config/ia64/ia64-c.c: Ditto.
227         * config/iq2000/iq2000.c: Ditto.
228         * config/lm32/lm32.c: Include symtab.h, fold-const.h,
229         wide-int.h, and inchash.h due to flattening of tree.h.
230         * config/m32c/m32c.c: Include hash-set.h, machmode.h,
231         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
232         fold-const.h, wide-int.h, and inchash.h due to
233         flattening of tree.h.
234         * config/m32c/m32c-pragma.c: Ditto.
235         * config/m32c/m32cr.c: Ditto.
236         * config/m68/m68k.c: Ditto.
237         * config/mcore/mcore.c: Ditto.
238         * config/mep/mep.c: Ditto.
239         * config/mep/mep-pragma.c: Ditto.
240         * config/microblaze/microblaze.c: Ditto.
241         * config/microblaze/microblaze-c.c: Ditto.
242         * config/mips/mips.c: Ditto.
243         * config/mmix/mmix.c: Include symtab.h, fold-const.h,
244         wide-int.h, and inchash.h due to flattening of tree.h.
245         * config/mn10300/mn10300.c: Include hash-set.h, machmode.h,
246         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
247         fold-const.h, wide-int.h, and inchash.h due to
248         flattening of tree.h.
249         * config/moxie/moxie.c: Ditto.
250         * config/msp430/msp430.c: Ditto.
251         * config/msp430/msp430-c.c: Ditto.
252         * config/nds32/nds32.c: Ditto.
253         * config/nds32/nds32-cost.c: Ditto.
254         * config/nds32/nds32-fp-as-gp.c: Ditto.
255         * config/nds32/nds32-intrinsic.c: Ditto.
256         * config/nds32/nds32-isr.c: Ditto.
257         * config/nds32/nds32-md-auxillary.c: Ditto.
258         * config/nds32/nds32-memory-manipulationx.c: Ditto.
259         * config/nds32/nds32-pipelines-auxillary.c: Ditto.
260         * config/nds32/nds32-predicates.c: Ditto.
261         * config/nios2/nios2.c: Ditto.
262         * config/nvptx/nvptx.c: Ditto.
263         * config/pa/pa.c: Ditto.
264         * config/pdp11/pdp11x.c: Include symtab.h, fold-const.h,
265         wide-int.h, and inchash.h due to flattening of tree.h.
266         * config/rl78/rl78.c: Include hash-set.h, machmode.h,
267         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
268         fold-const.h, wide-int.h, and inchash.h due to
269         flattening of tree.h.
270         * config/rl78/rl78-cx.c: Ditto.
271         * config/rs6000/rs6000.c: Ditto.
272         * config/rs6000/rs6000-c.c: Ditto.
273         * config/rx/rx.c: Ditto.
274         * config/s390/s390.c: Ditto.
275         * config/sh/sh.c: Ditto.
276         * config/sh/sc.c: Ditto.
277         * config/sh/sh-mem.cc: Ditto.
278         * config/sh/sh_treg_combine.cc: Include symtab.h, inchash.h and tree.h
279         due to flattening of tree.h.
280         Remove include of tree-core.h.
281         * config/sol2.c: Include hash-set.h, machmode.h,
282         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
283         fold-const.h, wide-int.h, and inchash.h due to
284         flattening of tree.h.
285         * config/sol2-c.c: Ditto.
286         * config/sol2-cxx.c: Ditto.
287         * config/sol2-stubs.c: Ditto.
288         * config/sparc/sparc.c: Ditto.
289         * config/sparc/sparc-cx.c: Ditto.
290         * config/spu/spu.c: Ditto.
291         * config/spu/spu-c.c: Ditto
292         * config/storym16/stormy16.c: Ditto.
293         * config/tilegx/tilegx.c: Include symtab.h, fold-const.h,
294         wide-int.h, and inchash.h due to flattening of tree.h.
295         * config/tilepro/gen-mul-tables.cc: Include symtab.h in generated file.
296         * config/tilegx/tilegx-c.c: Include hash-set.h, machmode.h,
297         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
298         fold-const.h, wide-int.h, and inchash.h due to
299         flattening of tree.h.
300         * config/tilepro/tilepro.c: Include symtab.h, fold-const.h,
301         wide-int.h, and inchash.h due to flattening of tree.h.
302         * config/tilepro/tilepro-c.c: Include hash-set.h, machmode.h,
303         vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
304         fold-const.h, wide-int.h, and inchash.h due to
305         flattening of tree.h.
306         * config/v850/v850.c: Ditto.
307         * config/v850/v850-c.c: Ditto.
308         * config/vax/vax.c: Ditto.
309         * config/vms/vms.c: Ditto.
310         * config/vms/vms-c.c: Ditto.
311         * config/vxworks.c: Ditto.
312         * config/winnt-c.c: Ditto.
313         * config/xtensa/xtensa.c: Include symtab.h, fold-const.h,
314         wide-int.h, and inchash.h due to flattening of tree.h.
315         * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
316         input.h, alias.h, symtab.h, options.h, fold-const.h,
317         wide-int.h, and inchash.h due to flattening of tree.h.
318         * coverage.c: Ditto.
319         * cppbuiltin.c: Ditto.
320         * cprop.c: Ditto.
321         * cse.c: Add include of symtab.h due to flattening of tree.h.
322         * cselib.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
323         input.h, alias.h, symtab.h, options.h, fold-const.h,
324         wide-int.h, and inchash.h due to flattening of tree.h.
325         * data-streamer.c: Ditto.
326         * data-streamer-in.c: Ditto.
327         * data-streamer-out.c: Ditto.
328         * dbxout.c: Ditto.
329         * dce.c: Ditto.
330         * ddg.c: Add include of symtab.h due to flattening of tree.h.
331         * debug.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
332         input.h, alias.h, symtab.h, options.h, fold-const.h,
333         wide-int.h, and inchash.h due to flattening of tree.h.
334         * dfp.c: Ditto.
335         * df-scan.c: Ditto.
336         * dojump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
337         input.h, alias.h, symtab.h, options.h, fold-const.h,
338         wide-int.h, inchash.h and real.h due to flattening of tree.h.
339         * double-int.c: Ditto.
340         * dse.c: Ditto.
341         * dumpfile.c: Ditto.
342         * dwarf2asm.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
343         input.h, alias.h, symtab.h, fold-const.h,
344         wide-int.h, inchash.h and real.h due to flattening of tree.h.
345         * dwarf2cfi.c: Ditto.
346         * dwarf2out.c: Ditto.
347         * emit-rtl.c: Ditto.
348         * except.c: Ditto.
349         * explow.c: Ditto.
350         * expmed.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
351         input.h, alias.h, symtab.h, fold-const.h,
352         wide-int.h, and inchash.h due to flattening of tree.h.
353         * expr.c: Ditto.
354         * final.c: Ditto.
355         * fixed-value.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
356         input.h, alias.h, symtab.h, fold-const.h,
357         wide-int.h, inchash.h and fixed-value.h due to flattening of tree.h.
358         * fold-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
359         input.h, alias.h, symtab.h, fold-const.h,
360         wide-int.h, and inchash.h due to flattening of tree.h.
361         Relocate inline function convert_to_ptrofftype_loc from tree.h.
362         Relocate inline function fold_build_pointer_plus_loc from tree.h.
363         Relocate inline function fold_build_pointer_plus_hwi_loc from tree.h.
364         * fold-const.h: Relocate macro convert_to_ptrofftype from tree.h.
365         Relocate macro fold_build_pointer_plus to relocate from tree.h.h.
366         Relocate macro fold_build_pointer_plus_hwi from tree.h.
367         Add prototype for convert_to_ptrofftype_loc relocated from tree.h.
368         Add prototype for fold_build_pointer_plus_loc relocated from tree.h.
369         Add prototype for fold_build_pointer_plus_hwi_loc relocated from tree.h.
370         * function.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
371         input.h, alias.h, symtab.h, fold-const.h,
372         wide-int.h, and inchash.h due to flattening of tree.h.
373         * gcc-plugin.h: Include statistics.h, double-int.h, real.h, fixed-value.h,
374         alias.h, flags.h, and symtab.h due to flattening of tree.h
375         * gcse.c: Ditto.
376         * generic-match-head.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
377         input.h, alias.h, symtab.h, options.h, fold-const.h,
378         wide-int.h, and inchash.h due to flattening of tree.h.
379         * ggc-page.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
380         input.h, alias.h, symtab.h, fold-const.h,
381         wide-int.h, and inchash.h due to flattening of tree.h.
382         * gimple-builder.c: Ditto.
383         * gimple.c: Ditto.
384         * gimple-expr.c: Ditto.
385         * gimple-fold.c: Ditto.
386         * gimple-iterator.c: Ditto.
387         * gimple-low.c: Ditto.
388         * gimple-match-head.c: Ditto.
389         * gimple-pretty-print.c: Ditto.
390         * generic-ssa-isolate-paths.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
391         input.h, alias.h, symtab.h, options.h, fold-const.h,
392         wide-int.h, and inchash.h due to flattening of tree.h.
393         * gimple-ssa-strength-reduction.c: Ditto.
394         * gimple-streamer-in.c: Ditto.
395         * gimple-streamer-out.c: Ditto.
396         * gimple-walk.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
397         input.h, alias.h, symtab.h, fold-const.h,
398         wide-int.h, and inchash.h due to flattening of tree.h.
399         * gimplify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
400         input.h, alias.h, symtab.h, options.h, fold-const.h,
401         wide-int.h, and inchash.h due to flattening of tree.h.
402         * gimplify-me.c: Ditto.
403         * graphite-blocking.c: Ditto.
404         * graphite.c: Ditto.
405         * graphite-dependencies.c: Ditto.
406         * graphite-interchange.c: Ditto.
407         * graphite-isl-ast-to-gimple.c: Ditto.
408         * graphite-optimize-isl.c: Ditto.
409         * graphite-poly.c: Ditto.
410         * graphite-scop-detection.c: Ditto.
411         * graphite-sese-to-poly.c: Ditto.
412         * hw-doloop.c: Include symtab.h due to flattening of tree.h.
413         * ifcvt.c: Ditto.
414         * init-regs.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
415         input.h, alias.h, symtab.h, fold-const.h,
416         wide-int.h, and inchash.h due to flattening of tree.h.
417         * internal-fc.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
418         input.h, alias.h, symtab.h,options.h, fold-const.h,
419         wide-int.h, and inchash.h due to flattening of tree.h.
420         * ipa.c: Ditto.
421         * ipa-chkp.c: Ditto.
422         * ipa-comdats.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
423         input.h, alias.h, symtab.h, fold-const.h,
424         wide-int.h, and inchash.h due to flattening of tree.h.
425         * ipa-cp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
426         input.h, alias.h, symtab.h,options.h, fold-const.h,
427         wide-int.h, and inchash.h due to flattening of tree.h.
428         * ipa-devirt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
429         input.h, alias.h, symtab.h, fold-const.h,
430         wide-int.h, and inchash.h due to flattening of tree.h.
431         * ipa-icf.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
432         input.h, alias.h, symtab.h,options.h, fold-const.h,
433         wide-int.h, and inchash.h due to flattening of tree.h.
434         * ipa-icf-gimple.c: Ditto.
435         * ipa-inline-analysis.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
436         input.h, alias.h, symtab.h, fold-const.h,
437         wide-int.h, and inchash.h due to flattening of tree.h.
438         * ipa-inline.c: Ditto.
439         * ipa-inline-transform.c: Ditto.
440         * ipa-polymorhpic-call.c: Ditto.
441         * ipa-profile.c: Ditto.
442         * ipa-prop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
443         input.h, alias.h, symtab.h, options.h, fold-const.h,
444         wide-int.h, and inchash.h due to flattening of tree.h.
445         * ipa-pure-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
446         input.h, alias.h, symtab.h, fold-const.h,
447         wide-int.h, and inchash.h due to flattening of tree.h.
448         * ipa-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
449         input.h, alias.h, symtab.h, options.h, fold-const.h,
450         wide-int.h, and inchash.h due to flattening of tree.h.
451         * ipa-reference.c: Ditto.
452         * ipa-split.c: Ditto.
453         * ipa-utils.c: Ditto.
454         * ipa-visbility.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
455         input.h, alias.h, symtab.h, fold-const.h,
456         wide-int.h, and inchash.h due to flattening of tree.h.
457         * ira.c: Ditto.
458         * ira-color.c: Include hash-set.h due to flattening of tree.h.
459         * ira-costs.c: Ditto.
460         * ira-emit.c: Ditto.
461         * jump.c: Include symtab.h due to flattening of tree.h.
462         * langhooks.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
463         input.h, alias.h, symtab.h, fold-const.h,
464         wide-int.h, and inchash.h due to flattening of tree.h.
465         * loop-doloop.c: Include symtab.h due to flattening of tree.h.
466         * loop-init.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
467         input.h, alias.h, symtab.h, fold-const.h,
468         wide-int.h, and inchash.h due to flattening of tree.h.
469         * loop-invariant.c: Include symtab.h due to flattening of tree.h.
470         * loop-iv.c: Ditto.
471         * loop-unroll.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
472         input.h, alias.h, symtab.h, fold-const.h,
473         wide-int.h, and inchash.h due to flattening of tree.h.
474         * lower-subreg.c: Ditto.
475         * lra-assigns.c: Include symtab.h due to flattening of tree.h.
476         * lra.c: Include symtab.h, fold-const.h, wide-int.h and inchash.h
477         due to flattening of tree.h.
478         * lra-coalesce.c: Include symtab.h due to flattening of tree.h.
479         * lra-constraints.c: Ditto.
480         * lra-eliminations.c: Ditto.
481         * lra-livesc: Ditto.
482         * lra-remat.c: Ditto.
483         * lra-spills.c: Ditto.
484         * lto-cgraph.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
485         input.h, alias.h, symtab.h, fold-const.h,
486         wide-int.h, and inchash.h due to flattening of tree.h.
487         * lto-compress.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
488         input.h, alias.h, symtab.h, options, fold-const.h,
489         wide-int.h, and inchash.h due to flattening of tree.h.
490         * lto-opts.c: Ditto.
491         * lto-section-in.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
492         input.h, alias.h, symtab.h, fold-const.h,
493         wide-int.h, and inchash.h due to flattening of tree.h.
494         * lto-section-out.c: Ditto.
495         * lto-streamer.c: Ditto.
496         * lto-streamer-in.c: Ditto.
497         * lto-streamer-out.c: Ditto.
498         * modulo-sched.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
499         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
500         inchash.h due to flattening of tree.h.
501         * omega.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
502         input.h, alias.h, symtab.h, options, fold-const.h,
503         wide-int.h, and inchash.h due to flattening of tree.h.
504         * omega-low.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
505         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
506         inchash.h due to flattening of tree.h.
507         * optabs.c: Ditto.
508         * opts-global.c: Ditto.
509         * passes.c: Ditto.
510         * plugin.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
511         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
512         inchash.h due to flattening of tree.h.
513         * postreload.c: Include symtab.h due to flattening of tree.h.
514         * postreload-gcse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
515         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
516         inchash.h due to flattening of tree.h.
517         * predict.c: Ditto.
518         * print-rtl.c: Ditto.
519         * print-tree.c: Ditto.
520         * profile.c: Include symtab.h, fold-const.h
521         and inchash.h due to flattening of tree.h.
522         * real.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
523         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
524         inchash.h due to flattening of tree.h.
525         * realmpfr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
526         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
527         inchash.h due to flattening of tree.h.
528         * recog.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
529         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
530         inchash.h due to flattening of tree.h.
531         * ree.c: Ditto.
532         * reginfo.c: Ditto.
533         * reg-stack.c: Ditto.
534         * reload1.c: Include symtab.h, fold-const.h, wide-int.h
535         and inchash.h due to flattening of tree.h.
536         * reload.c: Include symtab.h due to flattening of tree.h.
537         * reorg.c: Ditto.
538         * rtlanal.c: Include symtab.h, fold-const.h, wide-int.h
539         and inchash.h due to flattening of tree.h.
540         * rtl-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
541         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
542         inchash.h due to flattening of tree.h.
543         * rtlhooks.c: Include symtab.h due to flattening of tree.h.
544         * sanopt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
545         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
546         inchash.h due to flattening of tree.h.
547         * sched-deps.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
548         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
549         inchash.h due to flattening of tree.h.
550         * sched-vis.c: Ditto.
551         * sdbout.c: Ditto.
552         * sel-sched.c: Include symtab.h, fold-const.h, wide-int.h
553         and inchash.h due to flattening of tree.h.
554         * sel-sched-ir.c: Ditto.
555         * sese.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
556         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
557         inchash.h due to flattening of tree.h.
558         * shrink-wrap.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
559         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
560         inchash.h due to flattening of tree.h.
561         * simplify-rtx.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
562         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
563         inchash.h due to flattening of tree.h.
564         * stack-ptr-mod.c: Ditto.
565         * stmt.c: Ditto.
566         * store-motion.c: Ditto.
567         * store-layout.c: Ditto.
568         * stringpool.c: Ditto.
569         * symtab.c: Ditto.
570         * target-globals.c: Ditto.
571         * targhooks.c: Ditto.
572         * toplev.c: Ditto.
573         * tracer.c: Ditto.
574         * trans-mem.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
575         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
576         inchash.h due to flattening of tree.h.
577         * tree-affine.c: Ditto.
578         * tree-browser.c: Ditto.
579         * tree.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
580         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
581         inchash.h due to flattening of tree.h.
582         * tree-call-cdce.c: Include symtab.h, alias.h, double-int.h,
583         fold-const.h, wide-int.h, inchash.h and real.h due to
584         flattening of tree.h.
585         * tree-cfg.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
586         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
587         inchash.h due to flattening of tree.h.
588         * tree-cfgcleanup.c: Ditto.
589         * tree-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
590         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
591         inchash.h due to flattening of tree.h.
592         * tree-chkp-opt.c: Ditto.
593         * tree-chrec.c: Ditto.
594         * tree-chkp-opt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
595         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
596         real.h due to flattening of tree.h.
597         * tree-core.h: Flatten header file by removing all #include statements.
598         * tree-data-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
599         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
600         inchash.h due to flattening of tree.h.
601         * tree-dfa.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
602         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
603         real.h due to flattening of tree.h.
604         * tree-diagnostic.c: Ditto.
605         * tree-dump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
606         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
607         fixed-value.h due to flattening of tree.h.
608         * tree-dfa.c: Ditto.
609         * tree-eh.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
610         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
611         real.h due to flattening of tree.h.
612         * tree-emutls.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
613         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
614         inchash.h due to flattening of tree.h.
615         * tree.h: Flatten header files by removing all includes except tree-core.h.
616         Remove inline function convert_to_ptrofftype_loc to relocate to fold-const.c.
617         Remove macro convert_to_ptrofftype to relocate to fold-const.h.
618         Remove inline function fold_build_pointer_plus_loc to relocate to fold-const.c.
619         Remove macro fold_build_pointer_plus to relocate to fold-const.h.
620         Remove inline function fold_build_pointer_plus_hwi_loc to relocate to fold-const.c.
621         Remove macro fold_build_pointer_plus_hwi to relocate to fold-const.h.
622         * tree-if-conv.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
623         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
624         fixed-value.h due to flattening of tree.h.
625         * tree-inline.c: Ditto.
626         * tree-into-ssa.c: Ditto.
627         * tree-iterator.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
628         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
629         inchash.h due to flattening of tree.h.
630         * tree-loop-distribution.c: Ditto.
631         * tree-nested.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
632         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
633         due to flattening of tree.h.
634         * tree-nrv.c: Ditto.
635         * tree-object-size.c: Ditto.
636         * tree-outof-ssa.c: Ditto.
637         * tree-parloops.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
638         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
639         inchash.h due to flattening of tree.h.
640         * tree-phinodes.c: Ditto.
641         * tree-predcom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
642         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
643         due to flattening of tree.h.
644         * tree-pretty-print.c: Ditto.
645         * tree-profile.c: double-int.h, input.h, alias.h, symtab.h,
646         fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
647         * tree-scalar-evolution.c: Include hash-set.h, machmode.h, vec.h,
648         double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
649         wide-int.h and inchash.h due to flattening of tree.h.
650         * tree-sra.c: Include  vec.h, double-int.h,
651         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
652         inchash.h due to flattening of tree.h.
653         * tree-ssa-alias.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
654         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
655         due to flattening of tree.h.
656         * tree-ssa.c: Ditto.
657         * tree-ssa-ccp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
658         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
659         and real.h due to flattening of tree.h.
660         * tree-ssa-coalesce.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
661         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
662         due to flattening of tree.h.
663         * tree-ssa-copy.c: Ditto.
664         * tree-ssa-copyrename.c: Ditto.
665         * tree-ssa-dce.c: Ditto.
666         * tree-ssa-dom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
667         input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
668         and real.h due to flattening of tree.h.
669         * tree-ssa-dse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
670         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
671         due to flattening of tree.h.
672         * tree-ssa-forwprop.c: Ditto.
673         * tree-ssa-ifcombine.c: Ditto.
674         * tree-ssa-live.c: Ditto.
675         * tree-ssa-loop.c: Ditto.
676         * tree-ssa-loop-ch.c: Ditto.
677         * tree-ssa-loop-im.c: Ditto.
678         * tree-ssa-loop-ivcanon.c: Ditto.
679         * tree-ssa-loop-ivopts.c: Ditto.
680         * tree-ssa-loop-manip.c: Ditto.
681         * tree-ssa-loop-niter.c: Ditto.
682         * tree-ssa-loop-prefetch.c: Ditto.
683         * tree-ssa-loop-unswitch.c: Ditto.
684         * tree-ssa-loop-math-opts.c: Ditto.
685         * tree-ssanames.c: Ditto.
686         * tree-ssa-operands.c: Ditto.
687         * tree-ssa-phiopt.c: Ditto.
688         * tree-ssa-phiprop.c: Ditto.
689         * tree-ssa-pre.c: Ditto.
690         * tree-ssa-propagate.c: Ditto.
691         * tree-ssa-reassoc.c: Ditto.
692         * tree-ssa-sccvn.c: Ditto.
693         * tree-ssa-sink.c: Ditto.
694         * tree-ssa-strlen.c: Include hash-set.h, machmode.h, vec.h,
695         double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
696         wide-int.h and inchash.h due to flattening of tree.h.
697         * tree-ssa-structalias.c: double-int.h, input.h, alias.h, symtab.h,
698         fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
699         * tree-ssa-tail-merge.c: Include hash-set.h, machmode.h, vec.h,
700         double-int.h, input.h, alias.h, symtab.h, fold-const.h,
701         wide-int.h and inchash.h due to flattening of tree.h.
702         * tree-ssa-ter.c: Ditto.
703         * tree-ssa-threadedge.c: Ditto.
704         * tree-ssa-threadupdate.c: Include hash-set.h, machmode.h, vec.h,
705         double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
706         wide-int.h and inchash.h due to flattening of tree.h.
707         * tree-ssa-uncprop.c: Include hash-set.h, machmode.h, vec.h,
708         double-int.h, input.h, alias.h, symtab.h, fold-const.h,
709         wide-int.h and inchash.h due to flattening of tree.h.
710         * tree-ssa-uninit.c: Ditto.
711         * tree-stdarg.c: Include vec.h, double-int.h, input.h, alias.h,
712         symtab.h, fold-const.h, wide-int.h and inchash.h due to flattening
713         of tree.h.
714         * tree-streamer.c: Include vec.h, double-int.h, input.h, alias.h,
715         symtab.h, options.h, fold-const.h, wide-int.h and
716         inchash.h due to flattening of tree.h.
717         * tree-streamer-in.c: Include hash-set.h, machmode.h, vec.h,
718         double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
719         wide-int.h, inchash.h, real.h and fixed-value.h due to flattening
720         of tree.h.
721         * tree-streamer-out.c: Dittoo.
722         * tree-switch-conversion.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
723         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
724         due to flattening of tree.h.
725         * tree-tailcall.c: Ditto.
726         * tree-vect-data-refs.c: Ditto.
727         * tree-vect-generic.c: Include hash-set.h, machmode.h, vec.h, double-int.h, input.h,
728         alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
729         due to flattening of tree.h.
730         * tree-vect-loop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
731         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
732         due to flattening of tree.h.
733         * tree-vect-loop-manip.c: Ditto.
734         * tree-vectorizer.c: Ditto.
735         * tree-vect-patterns.c: Ditto.
736         * tree-vect-slp.c: Ditto.
737         * tree-vect-stmts.c: Ditto.
738         * tree-vrp.c: Ditto.
739         * tsan.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
740         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
741         due to flattening of tree.h.
742         * ubsan.c: Ditto.
743         * value-prof.c.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
744         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
745         due to flattening of tree.h.
746         * varasm.c: Ditto.
747         * varpool.c: Ditto.
748         * var-tracking.c: Ditto.
749         * vmsdbgout.c: Ditto.
750         * vtable-verify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
751         input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
752         due to flattening of tree.h.
753         * wide-int.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
754         input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
755         due to flattening of tree.h.
756         * xcoffout.c: Ditto.
757
758 2015-01-09  Tom de Vries  <tom@codesourcery.com>
759
760         PR rtl-optimization/64539
761         * regcprop.c (kill_clobbered_values): Factor out of ...
762         (copyprop_hardreg_forward_1): ... here.  Use kill_clobbered_values
763         instead of note_stores with kill_clobbered_value.
764
765 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
766
767          * ginclude/unwind-arm-common.h: Revert previous commit.
768
769 2015-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
770
771         * config.gcc (arm*-*-freebsd*): New configuration.
772         * config/arm/freebsd.h: New file.
773         * config.host: Add extra components for arm*-*-freebsd*.
774         * config/arm/arm.h: Introduce MAX_SYNC_LIBFUNC_SIZE.
775         * config/arm/arm.c (arm_init_libfuncs): Use MAX_SYNC_LIBFUNC_SIZE.
776
777 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
778
779         * config/rs6000/rtems.h (CPP_OS_RTEMS_SPEC): Define __PPC_CPU_E6500__
780         for -mcpu=e6500.
781         * config/rs6000/t-rtems: Add e6500 multilibs.
782
783 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
784
785         * config/rs6000/t-rtems: Add -mno-spe to soft-float multilib for
786         MPC8540.
787
788 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
789
790         * config/rs6000/t-rtems: Use MULTILIB_REQUIRED instead of
791         MULTILIB_EXCEPTIONS.
792
793 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
794
795         * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of
796         MULTILIB_EXCEPTIONS.
797
798 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
799
800         * config/arm/t-rtems-eabi: Rename to...
801         * config/arm/t-rtems: ...this.
802         * config/arm/rtems-eabi.h: Rename to...
803         * config/arm/rtems.h: ...this.
804         * config.gcc (arm*-*-rtems*): Reflect changes above.
805
806 2015-01-09  Richard Biener  <rguenther@suse.de>
807
808         PR tree-optimization/64410
809         * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR
810         on the LHS.
811         (execute_update_addresses_taken): Deal with that.
812         * tree-ssa-forwprop.c (pass_forwprop::execute): Use component-wise
813         loads/stores for complex variables.
814
815 2015-01-09  Martin Liska  <mliska@suse.cz>
816
817         * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA
818         name comparison.
819         (func_checker::compare_memory_operand): New function.
820         (func_checker::compare_operand): Split case to newly
821         added functions.
822         (func_checker::compare_cst_or_decl): New function.
823         (func_checker::compare_gimple_call): Identify
824         memory operands.
825         (func_checker::compare_gimple_assign): Likewise.
826         * ipa-icf-gimple.h: New function.
827
828 2015-01-09  Martin Liska  <mliska@suse.cz>
829
830         PR ipa/64503
831         * sreal.c (sreal::dump): Change unsigned format to signed for
832         m_exp value.
833         (sreal::to_double): Replace exp2 with scalbln.
834
835 2015-01-09  Martin Liska  <mliska@suse.cz>
836
837         * cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation.
838         * ipa-icf.c (sem_function::equals_private): Add support for target and
839         (sem_item_optimizer::merge_classes): Remove redundant function
840         optimization flags comparison.
841         * tree.h (target_opts_for_fn): New function.
842
843 2015-01-09  Tom de Vries  <tom@codesourcery.com>
844
845         * omp-low.c (expand_omp_for_static_chunk): Fix assert.
846
847 2015-01-09  Kito Cheng  <kito@0xlab.org>
848
849         PR rtl-optimization/64348
850         * lra-constraints.c (split_reg): Fix caller-save store/restore
851         instruction generation.
852
853 2015-01-08  John David Anglin  <danglin@gcc.gnu.org>
854
855         PR gcov-profile/61790
856         * gcov-tool.c (do_rewrite): Use strtoll instead of atoll if host has
857         long long.  Fallback to int64_t if host doesn't have long long and
858         use strtol if int64_t is long.  Otherwise, use sscanf for conversion.
859
860 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
861
862         PR tree-optimization/63989
863         * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
864         from 1000 to 10000.
865         * tree-ssa-strlen.c (get_strinfo): Moved earlier.
866         (get_stridx): If we don't have a record for certain SSA_NAME,
867         but it is POINTER_PLUS_EXPR of some SSA_NAME we do with
868         constant offset, call get_stridx_plus_constant.
869         (get_stridx_plus_constant): New function.
870         (zero_length_string): Don't use get_stridx here.
871
872         PR target/55023
873         PR middle-end/64388
874         * dse.c (struct insn_info): Mention frame_read set also
875         before reload for tail calls on some targets.
876         (scan_insn): Revert 2014-12-22 change.  Set frame_read
877         also before reload for tail calls if
878         HARD_FRAME_POINTER_IS_ARG_POINTER.  Call add_wild_read
879         instead of add_non_frame_wild_read for non-const/memset
880         tail calls after reload.
881
882 2015-01-08  Jason Merrill  <jason@redhat.com>
883
884         * ubsan.c (do_ubsan_in_current_function): New.
885         (pass_ubsan::gate): Use it.
886         * ubsan.h: Declare it.
887         * convert.c (convert_to_integer): Use it.
888
889 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
890
891         PR target/64338
892         * config/i386/i386.c (ix86_expand_int_movcc): Don't reverse
893         compare_code when it is unconditionally overwritten afterwards.
894         Use ix86_reverse_condition instead of reverse_condition.  Don't
895         change code if *reverse_condition* returned UNKNOWN and don't
896         swap ct/cf and negate diff in that case.
897
898 2015-01-08  Mike Stump  <mikestump@comcast.net>
899
900         * tsan.c (pass_tsan::gate): Add no_sanitize_thread support.
901         (pass_tsan_O0::gate): Likewise.
902         * extend.texi (Function Attributes): Add no_sanitize_thread
903         documentation.
904
905 2015-01-08  Thomas Schwinge  <thomas@codesourcery.com>
906
907         * builtins.def (DEF_GOMP_BUILTIN): Also consider flag_offload_abi
908         for registering builtins.
909         * config/i386/intelmic-mkoffload.c (prepare_target_image): Don't
910         add -fopenmp to the argv_obstack used when invoking
911         compile_for_target.
912
913         * config/i386/intelmic-mkoffload.c (compile_for_target): Always
914         add "-m32" or "-m64" to argv_obstack.
915         (generate_host_descr_file): Likewise, when invoking host_compiler.
916         (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking
917         ld.
918
919 2015-01-08  Oleg Endo  <olegendo@gcc.gnu.org>
920
921         * config/sh/sh-mem.cc: Use constant as second operand when emitting
922         tstsi_t insns.
923
924 2015-01-08  Oleg Endo  <olegendo@gcc.gnu.org>
925
926         PR target/55212
927         * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
928         constant load if constant operand fits into I08.
929
930 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
931
932         PR sanitizer/64336
933         * tree.c (build2_stat): Fix up initialization of TREE_READONLY
934         and TREE_THIS_VOLATILE for MEM_REFs.
935         (build5_stat): Fix up initialization of TREE_READONLY and
936         TREE_THIS_VOLATILE for TARGET_MEM_REFs.
937
938 2015-01-08  Kaz Kojima  <kkojima@gcc.gnu.org>
939
940         PR target/64533
941         * config/sh/sh.md (*addsi3_compact): Use u constraint instead
942         of r for the second alternative of the destination operand.
943
944 2015-01-07  Segher Boessenkool  <segher@kernel.crashing.org>
945
946         PR target/36557
947         * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New.
948
949 2015-01-07  Sandra Loosemore  <sandra@codesourcery.com>
950
951         * doc/invoke.texi ([-fvtable-verify]): Fix markup on option
952         keywords.
953         ([-fivar-visibility], [-fvisibility]): Likewise.
954
955 2015-01-07  Sandra Loosemore  <sandra@codesourcery.com>
956
957         * doc/invoke.texi: Fix incorrect uses of @samp markup throughout
958         the file where @code, @command, etc is more appropriate.
959
960 2015-01-06  Sandra Loosemore  <sandra@codesourcery.com>
961
962         * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting
963         of -mrecip= documentation.
964
965 2015-01-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
966
967         PR target/64505
968         * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the
969         correct reload handler if -m32 -mpowerpc64 is used.
970
971 2015-01-06  Tom de Vries  <tom@codesourcery.com>
972
973         * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment.
974
975 2015-01-08  Christian Bruel  <christian.bruel@st.com>
976
977         PR target/64507
978         * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length.
979
980 2015-01-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>
981
982         PR tree-optimization/63259
983         * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking
984         if optab exists for 16bit byteswap.
985
986 2015-01-06  Jakub Jelinek  <jakub@redhat.com>
987
988         * opts.c (common_handle_option): Add support for
989         -fno-sanitize=all and -f{,no-}sanitize-recover=all.
990         * doc/invoke.texi: Document -fno-sanitize=all,
991         -f{,no-}sanitize-recover=all.  Document that
992         -fsanitize=float-cast-overflow is not enabled
993         by -fsanitize=undefined.  Fix up documentation
994         of -f{,no-}sanitize-recover.
995
996 2015-01-06  Eric Botcazou  <ebotcazou@adacore.com>
997
998         * config.gcc: Add Visium support.
999         * configure.ac: Likewise.
1000         * configure: Regenerate.
1001         * doc/extend.texi (interrupt attribute): Add Visium.
1002         * doc/invoke.texi: Document Visium options.
1003         * doc/install.texi: Document Visium target.
1004         * doc/md.texi: Document Visium constraints.
1005         * common/config/visium: New directory.
1006         * config/visium: Likewise.
1007
1008 2015-01-05  Segher Boessenkool  <segher@kernel.crashing.org>
1009
1010         * simplify-rtx.c (simplify_binary_operation_1): Handle more cases
1011         for the "(and X (ior (not X) Y) -> (and X Y)" transform.
1012
1013 2015-01-05  Segher Boessenkool  <segher@kernel.crashing.org>
1014
1015         * combine.c (combine_validate_cost): Do not count the cost of a
1016         split I2 twice.  Do not display it twice in the dump, either.
1017
1018 2015-01-05  Sandra Loosemore  <sandra@codesourcery.com>
1019
1020         Revert parts of r219199.
1021         * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on
1022         <inttypes.h>.
1023         ([-Wtraditional]): Restore markup on <limits.h>.
1024
1025 2015-01-05  Trevor Saunders  <tsaunders@mozilla.com>
1026
1027         PR c++/31397
1028         * doc/invoke.texi: Document -Wsuggest-override.
1029
1030 2015-01-05  Radovan Obradovic  <radovan.obradovic@imgtec.com>
1031
1032         PR rtl-optimization/64287
1033         * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default.
1034         (process_options): Disable flag_ipa_ra if profiling.
1035
1036 2015-01-05  Eric Botcazou  <ebotcazou@adacore.com>
1037
1038         * config/nds32/nds32-peephole2.md: Do not mention define_peephole.
1039
1040 2015-01-05  Max Filippov  <jcmvbkbc@gmail.com>
1041
1042         * config/xtensa/xtensa.c (hwloop_optimize, hwloop_fail,
1043         hwloop_pattern_reg, xtensa_doloop_hooks, xtensa_reorg_loops):
1044         put under #if TARGET_LOOPS guard.
1045
1046 2015-01-05  Uros Bizjak  <ubizjak@gmail.com>
1047
1048         * config/i386/i386.c (output_387_binary_op): Use std::swap.
1049
1050 2015-01-05  Oleg Endo  <olegendo@gcc.gnu.org>
1051
1052         * rtlanal.c (refers_to_regno_p): Change return value from int to bool.
1053         * rtl.h (refers_to_regno_p): Add overload.
1054         * cse.c: Use it.
1055         * bt-load.c: Likewise.
1056         * combine.c: Likewise.
1057         * df-scan.c: Likewise.
1058         * sched-deps.c: Likewise.
1059         * config/s390/s390.c: Likewise.
1060         * config/m32r/m32r.c: Likewise.
1061         * config/rs6000/spe.md: Likewise.
1062         * config/rs6000/rs6000.c: Likewise.
1063         * config/pa/pa.c: Likewise.
1064         * config/stormy16/stormy16.c: Likewise.
1065         * config/cris/cris.c: Likewise.
1066         * config/arc/arc.md: Likewise.
1067         * config/arc/arc.c: Likewise.
1068         * config/sh/sh.md: Likewise.
1069         * config/sh/sh.c: Likewise.
1070         * config/frv/frv.c: Likewise.
1071
1072 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
1073
1074         PR sanitizer/64265
1075         * gimplify.c (gimplify_function_tree): Add TSAN_FUNC_EXIT internal
1076         call as cleanup of the whole body.
1077         * internal-fn.def (TSAN_FUNC_EXIT): New internal call.
1078         * tsan.c (replace_func_exit): New function.
1079         (instrument_func_exit): Moved earlier.
1080         (instrument_memory_accesses): Adjust TSAN_FUNC_EXIT internal calls.
1081         Call instrument_func_exit if no TSAN_FUNC_EXIT internal calls have
1082         been found.
1083         (tsan_pass): Don't call instrument_func_exit.
1084         * internal-fn.c (expand_TSAN_FUNC_EXIT): New function.
1085         * tree-inline.c (copy_bb): Drop TSAN_FUNC_EXIT internal calls during
1086         inlining.
1087
1088         PR sanitizer/64344
1089         * ubsan.h (ubsan_instrument_float_cast): Add ARG argument.
1090         * ubsan.c (ubsan_instrument_float_cast): Add ARG argument, pass
1091         it to libubsan handler instead of EXPR.  Fold comparisons earlier,
1092         if the result is integer_zerop, return NULL_TREE.
1093         * convert.c (convert_to_integer): Pass expr as ARG.
1094
1095         PR tree-optimization/64465
1096         * tree-inline.c (redirect_all_calls): During inlining
1097         clean up EH stmts and EH edges if redirect_call_stmt_to_callee
1098         changed the stmt to a non-throwing call.
1099
1100 2015-01-05  Sandra Loosemore  <sandra@codesourcery.com>
1101
1102         * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp,
1103         etc markup throughout the file.
1104
1105 2015-01-05  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1106
1107         Enable experimental TSAN support for Ada.
1108         * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR.
1109
1110 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
1111
1112         PR tree-optimization/64494
1113         * tree-ssa-loop-im.c (move_computations_dom_walker::before_dom): Also
1114         clear SSA_NAME_ANTI_RANGE_P flag.
1115
1116 2015-01-05  Marek Polacek  <polacek@redhat.com>
1117
1118         * doc/extend.texi (Arrays of Length Zero): Add missing comma.
1119
1120 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
1121
1122         Update copyright years.
1123
1124         * gcc.c (process_command): Update copyright notice dates.
1125         * gcov-dump.c: Ditto.
1126         * gcov.c: Ditto.
1127         * doc/cpp.texi: Bump @copying's copyright year.
1128         * doc/cppinternals.texi: Ditto.
1129         * doc/gcc.texi: Ditto.
1130         * doc/gccint.texi: Ditto.
1131         * doc/gcov.texi: Ditto.
1132         * doc/install.texi: Ditto.
1133         * doc/invoke.texi: Ditto.
1134
1135         * auto-profile.c, auto-profile.h: Fix up Copyright line.
1136
1137 2015-01-04  Sandra Loosemore  <sandra@codesourcery.com>
1138
1139         * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix
1140         verb tense, etc.
1141         ([-fvtable-verify], [-fvtv-debug]): Likewise.
1142         ([-Wabi]): Likewise.
1143         ([-fmessage-length]): Likewise.
1144         ([-Wsuggest-final-types], [-Wsuggest-final-methods]): Likewise.
1145         ([-Wno-discarded-qualifiers]): Likewise.
1146         ([-Wnodiscarded-array-qualifiers]): Likewise.
1147         ([-Wno-virtual-move-assign]): Likewise.
1148         ([-fsanitize=address], [-fsanitize=thread]): Likewise.
1149         ([-fsanitize=leak], [-fsanitize=undefined]): Likewise.
1150         ([-fsanitize=unreachable], [-fsanitize-recover]): Likewise.
1151         ([-fsanitize-undefined-trap-on-error]): Likewise.
1152         ([-floop-interchange]): Likewise.
1153         ([-ftree-coalesce-inlined-vars]): Likewise.
1154         ([-fvect-cost-model]): Likewise.
1155         ([-flto]): Likewise.
1156         ([--param]): Likewise.
1157         (Spec Files): Likewise.
1158         ([-mstrict-align]): Likewise.
1159         ([-mfix-cortex-a53-835769]): Likewise.
1160         ([-march], [-mtune]): Likewise.
1161         ([-mpic-register]): Likewise.
1162         ([-munaligned-access]): Likewise.
1163         ([-msp8]): Likewise.
1164         (EIND and Devices with more than 128 Ki Bytes of Flash): Likewise.
1165         (AVR Built-in Macros): Likewise.
1166         ([-mpreferred-stack-boundary]): Likewise.
1167         ([-mtune-crtl]): Likewise.
1168         ([-mashf]): Likewise.
1169         ([-mmcu=]): Likewise.
1170         ([-minrt]): Likewise.
1171         ([-maltivec], [-maltivec=be], [-maltivec=le]): Likewise.
1172         ([-mupper-regs]): Likewise.
1173         ([-matomic-model]): Likewise.
1174         ([-mdiv]): Likewise.
1175         ([-mzdcbranch]): Likewise.
1176         ([-mdisable-callt]): Likewise.
1177         ([-msoft-float]): Likewise.
1178         ([-m8byte-align]): Likewise.
1179         ([-fstack-reuse]): Likewise.
1180
1181 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1182
1183         * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]):
1184         Fix markup, light copy-editing.
1185         ([-fauto-profile]): Rewrite to fix formatting and content
1186         problems.
1187
1188 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1189
1190         * doc/invoke.texi ([-fisolate-erroneous-paths-dereference]):
1191         Copy-edit description.
1192         ([-fisolate-erroneous-paths-attribute]): Likewise.
1193         * common.opt (fisolate-erroneous-paths-dereference):
1194         Copy-edit description.
1195         (fisolate-erroneous-paths-attribute): Likewise.
1196
1197 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1198
1199         * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
1200         tidy grammar.
1201
1202 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1203
1204         * doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex.
1205         ([-fvtv-debug]): Likewise.
1206         ([-Wc++-compat]): Likewise.
1207         ([-Wc++11-compat]): Likewise.
1208         ([-Wc++14-compat]): Likewise.
1209         ([-Wno-sized-deallocation]): Likewise.
1210         ([-femit-class-debug-always]): Likewise.
1211         ([-femit-struct-debug-detailed]): Likewise.
1212         ([-fno-keep-inline-dllexport]): Likewise.
1213         ([-fira-algorithm]): Likewise.
1214         ([-fira-region]): Likewise.
1215         ([-flra-remat]): Likewise.
1216         ([-fipa-ra]): Likewise.
1217         ([-fhoist-adjacent-loads]): Likewise.
1218         ([-fisolate-erroneous-paths-dereference]): Likewise.
1219         ([-fisolate-erroneous-paths-attribute]): Likewise.
1220         ([-ftree-switch-conversion]): Likewise.
1221         ([-ftree-tail-merge]): Likewise.
1222         ([-ftree-loop-if-convert]): Likewise.
1223         ([-ftree-loop-if-convert-stores]): Likewise.
1224         ([-ftree-loop-distribution]): Likewise.
1225         ([-ftree-loop-distribute-patterns]): Likewise.
1226         ([-flto-compression-level]): Likewise.
1227         ([-flto-report]): Likewise.
1228         ([-flto-report-wpa]): Likewise.
1229         ([-fuse-linker-plugin]): Likewise.
1230         ([-mfix-cortex-a53-835769]): Likewise.
1231         ([-mno-fix-cortex-a53-835769]): Likewise.
1232         ([-mmmx]...[-mno-3dnow]): Remove the -mno- forms from the
1233         explicit listing; add a note to the discussion indicating they
1234         exist.  Reorder table to group similar options.  Add missing
1235         @opindex entries.  Add @need commands throughout the table to
1236         allow it to be split across multiple pages.
1237         ([-m8bit-idiv]): Fix @opindex.
1238         ([-mavx256-split-unaligned-load]): Likewise.
1239         ([-mavx256-split-unaligned-store]): Likewise.
1240         ([-mstack-protector-guard]): Likewise.
1241         ([-mcpu=]): Likewise.
1242         ([-mcpu]): Likewise.
1243         ([-mpointer-size=]): Likewise.
1244
1245 2015-01-03  John David Anglin  <danglin@gcc.gnu.org>
1246
1247         * config/pa/pa.md (decrement_and_branch_until_zero): Use `Q' constraint
1248         instead of `m' constraint.  Likewise for unnamed movb comparison
1249         patterns using reg_before_reload_operand predicate.
1250         * config/pa/predicates.md (reg_before_reload_operand): Tighten
1251         predicate to reject register index and LO_SUM DLT memory forms
1252         after reload.
1253
1254 2015-01-02  Sandra Loosemore  <sandra@codesourcery.com>
1255
1256         * doc/invoke.texi (Option Summary): Fix spelling of
1257         -fdevirtualize-at-ltrans.
1258         ([-fdevirtualize]): Fix markup.
1259         ([-fdevirtualize-speculatively]): Fix typo.
1260         ([-fdevirtualize-at-ltrans]): Likewise.  Make description less
1261         implementor-speaky.
1262         * common.opt (fdevirtualize-at-ltrans): Likewise.
1263         * ipa-devirt.c: Fix typos in comments throughout the file.
1264         (ipa_devirt): Fix typos in format strings for dump output.
1265
1266 2015-01-02  Sandra Loosemore  <sandra@codesourcery.com>
1267
1268         * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate
1269         discussion of defaults, light copy-editing.
1270
1271 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1272
1273         * tsan.c (instrument_expr): corrected previous checkin.
1274
1275 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1276
1277         Instrument bit field and unaligned accesses for TSAN.
1278         * sanitizer.def (BUILT_IN_TSAN_READ_RANGE): New built-in function.
1279         (BUILT_IN_TSAN_WRITE_RANGE): New built-in function.
1280         * tsan.c (instrument_expr): Handle COMPONENT_REF and BIT_FIELD_REF.
1281         Use BUILT_IN_TSAN_READ_RANGE and BUILT_IN_TSAN_WRITE_RANGE for
1282         unaligned memory regions.
1283
1284 2015-01-01  Anthony Green  <green@moxielogic.com>
1285
1286         * config/moxie/predicates.md (moxie_general_movsrc_operand):
1287         Restrict move source register offsets to 16 bits.
1288 \f
1289 Copyright (C) 2015 Free Software Foundation, Inc.
1290
1291 Copying and distribution of this file, with or without modification,
1292 are permitted in any medium without royalty provided the copyright
1293 notice and this notice are preserved.