RTEMS: Use MULTILIB_REQUIRED for ARM
[platform/upstream/gcc.git] / gcc / ChangeLog
1 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
2
3         * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of
4         MULTILIB_EXCEPTIONS.
5
6 2015-01-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7
8         * config/arm/t-rtems-eabi: Rename to...
9         * config/arm/t-rtems: ...this.
10         * config/arm/rtems-eabi.h: Rename to...
11         * config/arm/rtems.h: ...this.
12         * config.gcc (arm*-*-rtems*): Reflect changes above.
13
14 2015-01-09  Richard Biener  <rguenther@suse.de>
15
16         PR tree-optimization/64410
17         * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR
18         on the LHS.
19         (execute_update_addresses_taken): Deal with that.
20         * tree-ssa-forwprop.c (pass_forwprop::execute): Use component-wise
21         loads/stores for complex variables.
22
23 2015-01-09  Martin Liska  <mliska@suse.cz>
24
25         * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA
26         name comparison.
27         (func_checker::compare_memory_operand): New function.
28         (func_checker::compare_operand): Split case to newly
29         added functions.
30         (func_checker::compare_cst_or_decl): New function.
31         (func_checker::compare_gimple_call): Identify
32         memory operands.
33         (func_checker::compare_gimple_assign): Likewise.
34         * ipa-icf-gimple.h: New function.
35
36 2015-01-09  Martin Liska  <mliska@suse.cz>
37
38         PR ipa/64503
39         * sreal.c (sreal::dump): Change unsigned format to signed for
40         m_exp value.
41         (sreal::to_double): Replace exp2 with scalbln.
42
43 2015-01-09  Martin Liska  <mliska@suse.cz>
44
45         * cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation.
46         * ipa-icf.c (sem_function::equals_private): Add support for target and
47         (sem_item_optimizer::merge_classes): Remove redundant function
48         optimization flags comparison.
49         * tree.h (target_opts_for_fn): New function.
50
51 2015-01-09  Tom de Vries  <tom@codesourcery.com>
52
53         * omp-low.c (expand_omp_for_static_chunk): Fix assert.
54
55 2015-01-09  Kito Cheng  <kito@0xlab.org>
56
57         PR rtl-optimization/64348
58         * lra-constraints.c (split_reg): Fix caller-save store/restore
59         instruction generation.
60
61 2015-01-08  John David Anglin  <danglin@gcc.gnu.org>
62
63         PR gcov-profile/61790
64         * gcov-tool.c (do_rewrite): Use strtoll instead of atoll if host has
65         long long.  Fallback to int64_t if host doesn't have long long and
66         use strtol if int64_t is long.  Otherwise, use sscanf for conversion.
67
68 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
69
70         PR tree-optimization/63989
71         * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
72         from 1000 to 10000.
73         * tree-ssa-strlen.c (get_strinfo): Moved earlier.
74         (get_stridx): If we don't have a record for certain SSA_NAME,
75         but it is POINTER_PLUS_EXPR of some SSA_NAME we do with
76         constant offset, call get_stridx_plus_constant.
77         (get_stridx_plus_constant): New function.
78         (zero_length_string): Don't use get_stridx here.
79
80         PR target/55023
81         PR middle-end/64388
82         * dse.c (struct insn_info): Mention frame_read set also
83         before reload for tail calls on some targets.
84         (scan_insn): Revert 2014-12-22 change.  Set frame_read
85         also before reload for tail calls if
86         HARD_FRAME_POINTER_IS_ARG_POINTER.  Call add_wild_read
87         instead of add_non_frame_wild_read for non-const/memset
88         tail calls after reload.
89
90 2015-01-08  Jason Merrill  <jason@redhat.com>
91
92         * ubsan.c (do_ubsan_in_current_function): New.
93         (pass_ubsan::gate): Use it.
94         * ubsan.h: Declare it.
95         * convert.c (convert_to_integer): Use it.
96
97 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
98
99         PR target/64338
100         * config/i386/i386.c (ix86_expand_int_movcc): Don't reverse
101         compare_code when it is unconditionally overwritten afterwards.
102         Use ix86_reverse_condition instead of reverse_condition.  Don't
103         change code if *reverse_condition* returned UNKNOWN and don't
104         swap ct/cf and negate diff in that case.
105
106 2015-01-08  Mike Stump  <mikestump@comcast.net>
107
108         * tsan.c (pass_tsan::gate): Add no_sanitize_thread support.
109         (pass_tsan_O0::gate): Likewise.
110         * extend.texi (Function Attributes): Add no_sanitize_thread
111         documentation.
112
113 2015-01-08  Thomas Schwinge  <thomas@codesourcery.com>
114
115         * builtins.def (DEF_GOMP_BUILTIN): Also consider flag_offload_abi
116         for registering builtins.
117         * config/i386/intelmic-mkoffload.c (prepare_target_image): Don't
118         add -fopenmp to the argv_obstack used when invoking
119         compile_for_target.
120
121         * config/i386/intelmic-mkoffload.c (compile_for_target): Always
122         add "-m32" or "-m64" to argv_obstack.
123         (generate_host_descr_file): Likewise, when invoking host_compiler.
124         (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking
125         ld.
126
127 2015-01-08  Oleg Endo  <olegendo@gcc.gnu.org>
128
129         * config/sh/sh-mem.cc: Use constant as second operand when emitting
130         tstsi_t insns.
131
132 2015-01-08  Oleg Endo  <olegendo@gcc.gnu.org>
133
134         PR target/55212
135         * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
136         constant load if constant operand fits into I08.
137
138 2015-01-08  Jakub Jelinek  <jakub@redhat.com>
139
140         PR sanitizer/64336
141         * tree.c (build2_stat): Fix up initialization of TREE_READONLY
142         and TREE_THIS_VOLATILE for MEM_REFs.
143         (build5_stat): Fix up initialization of TREE_READONLY and
144         TREE_THIS_VOLATILE for TARGET_MEM_REFs.
145
146 2015-01-08  Kaz Kojima  <kkojima@gcc.gnu.org>
147
148         PR target/64533
149         * config/sh/sh.md (*addsi3_compact): Use u constraint instead
150         of r for the second alternative of the destination operand.
151
152 2015-01-07  Segher Boessenkool  <segher@kernel.crashing.org>
153
154         PR target/36557
155         * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New.
156
157 2015-01-07  Sandra Loosemore  <sandra@codesourcery.com>
158
159         * doc/invoke.texi ([-fvtable-verify]): Fix markup on option
160         keywords.
161         ([-fivar-visibility], [-fvisibility]): Likewise.
162
163 2015-01-07  Sandra Loosemore  <sandra@codesourcery.com>
164
165         * doc/invoke.texi: Fix incorrect uses of @samp markup throughout
166         the file where @code, @command, etc is more appropriate.
167
168 2015-01-06  Sandra Loosemore  <sandra@codesourcery.com>
169
170         * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting
171         of -mrecip= documentation.
172
173 2015-01-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
174
175         PR target/64505
176         * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the
177         correct reload handler if -m32 -mpowerpc64 is used.
178
179 2015-01-06  Tom de Vries  <tom@codesourcery.com>
180
181         * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment.
182
183 2015-01-08  Christian Bruel  <christian.bruel@st.com>
184
185         PR target/64507
186         * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length.
187
188 2015-01-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>
189
190         PR tree-optimization/63259
191         * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking
192         if optab exists for 16bit byteswap.
193
194 2015-01-06  Jakub Jelinek  <jakub@redhat.com>
195
196         * opts.c (common_handle_option): Add support for
197         -fno-sanitize=all and -f{,no-}sanitize-recover=all.
198         * doc/invoke.texi: Document -fno-sanitize=all,
199         -f{,no-}sanitize-recover=all.  Document that
200         -fsanitize=float-cast-overflow is not enabled
201         by -fsanitize=undefined.  Fix up documentation
202         of -f{,no-}sanitize-recover.
203
204 2015-01-06  Eric Botcazou  <ebotcazou@adacore.com>
205
206         * config.gcc: Add Visium support.
207         * configure.ac: Likewise.
208         * configure: Regenerate.
209         * doc/extend.texi (interrupt attribute): Add Visium.
210         * doc/invoke.texi: Document Visium options.
211         * doc/install.texi: Document Visium target.
212         * doc/md.texi: Document Visium constraints.
213         * common/config/visium: New directory.
214         * config/visium: Likewise.
215
216 2015-01-05  Segher Boessenkool  <segher@kernel.crashing.org>
217
218         * simplify-rtx.c (simplify_binary_operation_1): Handle more cases
219         for the "(and X (ior (not X) Y) -> (and X Y)" transform.
220
221 2015-01-05  Segher Boessenkool  <segher@kernel.crashing.org>
222
223         * combine.c (combine_validate_cost): Do not count the cost of a
224         split I2 twice.  Do not display it twice in the dump, either.
225
226 2015-01-05  Sandra Loosemore  <sandra@codesourcery.com>
227
228         Revert parts of r219199.
229         * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on
230         <inttypes.h>.
231         ([-Wtraditional]): Restore markup on <limits.h>.
232
233 2015-01-05  Trevor Saunders  <tsaunders@mozilla.com>
234
235         PR c++/31397
236         * doc/invoke.texi: Document -Wsuggest-override.
237
238 2015-01-05  Radovan Obradovic  <radovan.obradovic@imgtec.com>
239
240         PR rtl-optimization/64287
241         * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default.
242         (process_options): Disable flag_ipa_ra if profiling.
243
244 2015-01-05  Eric Botcazou  <ebotcazou@adacore.com>
245
246         * config/nds32/nds32-peephole2.md: Do not mention define_peephole.
247
248 2015-01-05  Max Filippov  <jcmvbkbc@gmail.com>
249
250         * config/xtensa/xtensa.c (hwloop_optimize, hwloop_fail,
251         hwloop_pattern_reg, xtensa_doloop_hooks, xtensa_reorg_loops):
252         put under #if TARGET_LOOPS guard.
253
254 2015-01-05  Uros Bizjak  <ubizjak@gmail.com>
255
256         * config/i386/i386.c (output_387_binary_op): Use std::swap.
257
258 2015-01-05  Oleg Endo  <olegendo@gcc.gnu.org>
259
260         * rtlanal.c (refers_to_regno_p): Change return value from int to bool.
261         * rtl.h (refers_to_regno_p): Add overload.
262         * cse.c: Use it.
263         * bt-load.c: Likewise.
264         * combine.c: Likewise.
265         * df-scan.c: Likewise.
266         * sched-deps.c: Likewise.
267         * config/s390/s390.c: Likewise.
268         * config/m32r/m32r.c: Likewise.
269         * config/rs6000/spe.md: Likewise.
270         * config/rs6000/rs6000.c: Likewise.
271         * config/pa/pa.c: Likewise.
272         * config/stormy16/stormy16.c: Likewise.
273         * config/cris/cris.c: Likewise.
274         * config/arc/arc.md: Likewise.
275         * config/arc/arc.c: Likewise.
276         * config/sh/sh.md: Likewise.
277         * config/sh/sh.c: Likewise.
278         * config/frv/frv.c: Likewise.
279
280 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
281
282         PR sanitizer/64265
283         * gimplify.c (gimplify_function_tree): Add TSAN_FUNC_EXIT internal
284         call as cleanup of the whole body.
285         * internal-fn.def (TSAN_FUNC_EXIT): New internal call.
286         * tsan.c (replace_func_exit): New function.
287         (instrument_func_exit): Moved earlier.
288         (instrument_memory_accesses): Adjust TSAN_FUNC_EXIT internal calls.
289         Call instrument_func_exit if no TSAN_FUNC_EXIT internal calls have
290         been found.
291         (tsan_pass): Don't call instrument_func_exit.
292         * internal-fn.c (expand_TSAN_FUNC_EXIT): New function.
293         * tree-inline.c (copy_bb): Drop TSAN_FUNC_EXIT internal calls during
294         inlining.
295
296         PR sanitizer/64344
297         * ubsan.h (ubsan_instrument_float_cast): Add ARG argument.
298         * ubsan.c (ubsan_instrument_float_cast): Add ARG argument, pass
299         it to libubsan handler instead of EXPR.  Fold comparisons earlier,
300         if the result is integer_zerop, return NULL_TREE.
301         * convert.c (convert_to_integer): Pass expr as ARG.
302
303         PR tree-optimization/64465
304         * tree-inline.c (redirect_all_calls): During inlining
305         clean up EH stmts and EH edges if redirect_call_stmt_to_callee
306         changed the stmt to a non-throwing call.
307
308 2015-01-05  Sandra Loosemore  <sandra@codesourcery.com>
309
310         * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp,
311         etc markup throughout the file.
312
313 2015-01-05  Bernd Edlinger  <bernd.edlinger@hotmail.de>
314
315         Enable experimental TSAN support for Ada.
316         * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR.
317
318 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
319
320         PR tree-optimization/64494
321         * tree-ssa-loop-im.c (move_computations_dom_walker::before_dom): Also
322         clear SSA_NAME_ANTI_RANGE_P flag.
323
324 2015-01-05  Marek Polacek  <polacek@redhat.com>
325
326         * doc/extend.texi (Arrays of Length Zero): Add missing comma.
327
328 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
329
330         Update copyright years.
331
332         * gcc.c (process_command): Update copyright notice dates.
333         * gcov-dump.c: Ditto.
334         * gcov.c: Ditto.
335         * doc/cpp.texi: Bump @copying's copyright year.
336         * doc/cppinternals.texi: Ditto.
337         * doc/gcc.texi: Ditto.
338         * doc/gccint.texi: Ditto.
339         * doc/gcov.texi: Ditto.
340         * doc/install.texi: Ditto.
341         * doc/invoke.texi: Ditto.
342
343         * auto-profile.c, auto-profile.h: Fix up Copyright line.
344
345 2015-01-04  Sandra Loosemore  <sandra@codesourcery.com>
346
347         * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix
348         verb tense, etc.
349         ([-fvtable-verify], [-fvtv-debug]): Likewise.
350         ([-Wabi]): Likewise.
351         ([-fmessage-length]): Likewise.
352         ([-Wsuggest-final-types], [-Wsuggest-final-methods]): Likewise.
353         ([-Wno-discarded-qualifiers]): Likewise.
354         ([-Wnodiscarded-array-qualifiers]): Likewise.
355         ([-Wno-virtual-move-assign]): Likewise.
356         ([-fsanitize=address], [-fsanitize=thread]): Likewise.
357         ([-fsanitize=leak], [-fsanitize=undefined]): Likewise.
358         ([-fsanitize=unreachable], [-fsanitize-recover]): Likewise.
359         ([-fsanitize-undefined-trap-on-error]): Likewise.
360         ([-floop-interchange]): Likewise.
361         ([-ftree-coalesce-inlined-vars]): Likewise.
362         ([-fvect-cost-model]): Likewise.
363         ([-flto]): Likewise.
364         ([--param]): Likewise.
365         (Spec Files): Likewise.
366         ([-mstrict-align]): Likewise.
367         ([-mfix-cortex-a53-835769]): Likewise.
368         ([-march], [-mtune]): Likewise.
369         ([-mpic-register]): Likewise.
370         ([-munaligned-access]): Likewise.
371         ([-msp8]): Likewise.
372         (EIND and Devices with more than 128 Ki Bytes of Flash): Likewise.
373         (AVR Built-in Macros): Likewise.
374         ([-mpreferred-stack-boundary]): Likewise.
375         ([-mtune-crtl]): Likewise.
376         ([-mashf]): Likewise.
377         ([-mmcu=]): Likewise.
378         ([-minrt]): Likewise.
379         ([-maltivec], [-maltivec=be], [-maltivec=le]): Likewise.
380         ([-mupper-regs]): Likewise.
381         ([-matomic-model]): Likewise.
382         ([-mdiv]): Likewise.
383         ([-mzdcbranch]): Likewise.
384         ([-mdisable-callt]): Likewise.
385         ([-msoft-float]): Likewise.
386         ([-m8byte-align]): Likewise.
387         ([-fstack-reuse]): Likewise.
388
389 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
390
391         * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]):
392         Fix markup, light copy-editing.
393         ([-fauto-profile]): Rewrite to fix formatting and content
394         problems.
395
396 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
397
398         * doc/invoke.texi ([-fisolate-erroneous-paths-dereference]):
399         Copy-edit description.
400         ([-fisolate-erroneous-paths-attribute]): Likewise.
401         * common.opt (fisolate-erroneous-paths-dereference):
402         Copy-edit description.
403         (fisolate-erroneous-paths-attribute): Likewise.
404
405 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
406
407         * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
408         tidy grammar.
409
410 2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>
411
412         * doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex.
413         ([-fvtv-debug]): Likewise.
414         ([-Wc++-compat]): Likewise.
415         ([-Wc++11-compat]): Likewise.
416         ([-Wc++14-compat]): Likewise.
417         ([-Wno-sized-deallocation]): Likewise.
418         ([-femit-class-debug-always]): Likewise.
419         ([-femit-struct-debug-detailed]): Likewise.
420         ([-fno-keep-inline-dllexport]): Likewise.
421         ([-fira-algorithm]): Likewise.
422         ([-fira-region]): Likewise.
423         ([-flra-remat]): Likewise.
424         ([-fipa-ra]): Likewise.
425         ([-fhoist-adjacent-loads]): Likewise.
426         ([-fisolate-erroneous-paths-dereference]): Likewise.
427         ([-fisolate-erroneous-paths-attribute]): Likewise.
428         ([-ftree-switch-conversion]): Likewise.
429         ([-ftree-tail-merge]): Likewise.
430         ([-ftree-loop-if-convert]): Likewise.
431         ([-ftree-loop-if-convert-stores]): Likewise.
432         ([-ftree-loop-distribution]): Likewise.
433         ([-ftree-loop-distribute-patterns]): Likewise.
434         ([-flto-compression-level]): Likewise.
435         ([-flto-report]): Likewise.
436         ([-flto-report-wpa]): Likewise.
437         ([-fuse-linker-plugin]): Likewise.
438         ([-mfix-cortex-a53-835769]): Likewise.
439         ([-mno-fix-cortex-a53-835769]): Likewise.
440         ([-mmmx]...[-mno-3dnow]): Remove the -mno- forms from the
441         explicit listing; add a note to the discussion indicating they
442         exist.  Reorder table to group similar options.  Add missing
443         @opindex entries.  Add @need commands throughout the table to
444         allow it to be split across multiple pages.
445         ([-m8bit-idiv]): Fix @opindex.
446         ([-mavx256-split-unaligned-load]): Likewise.
447         ([-mavx256-split-unaligned-store]): Likewise.
448         ([-mstack-protector-guard]): Likewise.
449         ([-mcpu=]): Likewise.
450         ([-mcpu]): Likewise.
451         ([-mpointer-size=]): Likewise.
452
453 2015-01-03  John David Anglin  <danglin@gcc.gnu.org>
454
455         * config/pa/pa.md (decrement_and_branch_until_zero): Use `Q' constraint
456         instead of `m' constraint.  Likewise for unnamed movb comparison
457         patterns using reg_before_reload_operand predicate.
458         * config/pa/predicates.md (reg_before_reload_operand): Tighten
459         predicate to reject register index and LO_SUM DLT memory forms
460         after reload.
461
462 2015-01-02  Sandra Loosemore  <sandra@codesourcery.com>
463
464         * doc/invoke.texi (Option Summary): Fix spelling of
465         -fdevirtualize-at-ltrans.
466         ([-fdevirtualize]): Fix markup.
467         ([-fdevirtualize-speculatively]): Fix typo.
468         ([-fdevirtualize-at-ltrans]): Likewise.  Make description less
469         implementor-speaky.
470         * common.opt (fdevirtualize-at-ltrans): Likewise.
471         * ipa-devirt.c: Fix typos in comments throughout the file.
472         (ipa_devirt): Fix typos in format strings for dump output.
473
474 2015-01-02  Sandra Loosemore  <sandra@codesourcery.com>
475
476         * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate
477         discussion of defaults, light copy-editing.
478
479 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
480
481         * tsan.c (instrument_expr): corrected previous checkin.
482
483 2015-01-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
484
485         Instrument bit field and unaligned accesses for TSAN.
486         * sanitizer.def (BUILT_IN_TSAN_READ_RANGE): New built-in function.
487         (BUILT_IN_TSAN_WRITE_RANGE): New built-in function.
488         * tsan.c (instrument_expr): Handle COMPONENT_REF and BIT_FIELD_REF.
489         Use BUILT_IN_TSAN_READ_RANGE and BUILT_IN_TSAN_WRITE_RANGE for
490         unaligned memory regions.
491
492 2015-01-01  Anthony Green  <green@moxielogic.com>
493
494         * config/moxie/predicates.md (moxie_general_movsrc_operand):
495         Restrict move source register offsets to 16 bits.
496 \f
497 Copyright (C) 2015 Free Software Foundation, Inc.
498
499 Copying and distribution of this file, with or without modification,
500 are permitted in any medium without royalty provided the copyright
501 notice and this notice are preserved.