1 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
3 * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of
6 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
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.
14 2015-01-09 Richard Biener <rguenther@suse.de>
16 PR tree-optimization/64410
17 * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR
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.
23 2015-01-09 Martin Liska <mliska@suse.cz>
25 * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA
27 (func_checker::compare_memory_operand): New function.
28 (func_checker::compare_operand): Split case to newly
30 (func_checker::compare_cst_or_decl): New function.
31 (func_checker::compare_gimple_call): Identify
33 (func_checker::compare_gimple_assign): Likewise.
34 * ipa-icf-gimple.h: New function.
36 2015-01-09 Martin Liska <mliska@suse.cz>
39 * sreal.c (sreal::dump): Change unsigned format to signed for
41 (sreal::to_double): Replace exp2 with scalbln.
43 2015-01-09 Martin Liska <mliska@suse.cz>
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.
51 2015-01-09 Tom de Vries <tom@codesourcery.com>
53 * omp-low.c (expand_omp_for_static_chunk): Fix assert.
55 2015-01-09 Kito Cheng <kito@0xlab.org>
57 PR rtl-optimization/64348
58 * lra-constraints.c (split_reg): Fix caller-save store/restore
59 instruction generation.
61 2015-01-08 John David Anglin <danglin@gcc.gnu.org>
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.
68 2015-01-08 Jakub Jelinek <jakub@redhat.com>
70 PR tree-optimization/63989
71 * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
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.
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.
90 2015-01-08 Jason Merrill <jason@redhat.com>
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.
97 2015-01-08 Jakub Jelinek <jakub@redhat.com>
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.
106 2015-01-08 Mike Stump <mikestump@comcast.net>
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
113 2015-01-08 Thomas Schwinge <thomas@codesourcery.com>
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
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
127 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
129 * config/sh/sh-mem.cc: Use constant as second operand when emitting
132 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
135 * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
136 constant load if constant operand fits into I08.
138 2015-01-08 Jakub Jelinek <jakub@redhat.com>
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.
146 2015-01-08 Kaz Kojima <kkojima@gcc.gnu.org>
149 * config/sh/sh.md (*addsi3_compact): Use u constraint instead
150 of r for the second alternative of the destination operand.
152 2015-01-07 Segher Boessenkool <segher@kernel.crashing.org>
155 * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New.
157 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
159 * doc/invoke.texi ([-fvtable-verify]): Fix markup on option
161 ([-fivar-visibility], [-fvisibility]): Likewise.
163 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
165 * doc/invoke.texi: Fix incorrect uses of @samp markup throughout
166 the file where @code, @command, etc is more appropriate.
168 2015-01-06 Sandra Loosemore <sandra@codesourcery.com>
170 * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting
171 of -mrecip= documentation.
173 2015-01-06 Michael Meissner <meissner@linux.vnet.ibm.com>
176 * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the
177 correct reload handler if -m32 -mpowerpc64 is used.
179 2015-01-06 Tom de Vries <tom@codesourcery.com>
181 * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment.
183 2015-01-08 Christian Bruel <christian.bruel@st.com>
186 * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length.
188 2015-01-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
190 PR tree-optimization/63259
191 * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking
192 if optab exists for 16bit byteswap.
194 2015-01-06 Jakub Jelinek <jakub@redhat.com>
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.
204 2015-01-06 Eric Botcazou <ebotcazou@adacore.com>
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.
216 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
218 * simplify-rtx.c (simplify_binary_operation_1): Handle more cases
219 for the "(and X (ior (not X) Y) -> (and X Y)" transform.
221 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
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.
226 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
228 Revert parts of r219199.
229 * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on
231 ([-Wtraditional]): Restore markup on <limits.h>.
233 2015-01-05 Trevor Saunders <tsaunders@mozilla.com>
236 * doc/invoke.texi: Document -Wsuggest-override.
238 2015-01-05 Radovan Obradovic <radovan.obradovic@imgtec.com>
240 PR rtl-optimization/64287
241 * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default.
242 (process_options): Disable flag_ipa_ra if profiling.
244 2015-01-05 Eric Botcazou <ebotcazou@adacore.com>
246 * config/nds32/nds32-peephole2.md: Do not mention define_peephole.
248 2015-01-05 Max Filippov <jcmvbkbc@gmail.com>
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.
254 2015-01-05 Uros Bizjak <ubizjak@gmail.com>
256 * config/i386/i386.c (output_387_binary_op): Use std::swap.
258 2015-01-05 Oleg Endo <olegendo@gcc.gnu.org>
260 * rtlanal.c (refers_to_regno_p): Change return value from int to bool.
261 * rtl.h (refers_to_regno_p): Add overload.
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.
280 2015-01-05 Jakub Jelinek <jakub@redhat.com>
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
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
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.
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.
308 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
310 * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp,
311 etc markup throughout the file.
313 2015-01-05 Bernd Edlinger <bernd.edlinger@hotmail.de>
315 Enable experimental TSAN support for Ada.
316 * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR.
318 2015-01-05 Jakub Jelinek <jakub@redhat.com>
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.
324 2015-01-05 Marek Polacek <polacek@redhat.com>
326 * doc/extend.texi (Arrays of Length Zero): Add missing comma.
328 2015-01-05 Jakub Jelinek <jakub@redhat.com>
330 Update copyright years.
332 * gcc.c (process_command): Update copyright notice dates.
333 * gcov-dump.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.
343 * auto-profile.c, auto-profile.h: Fix up Copyright line.
345 2015-01-04 Sandra Loosemore <sandra@codesourcery.com>
347 * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix
349 ([-fvtable-verify], [-fvtv-debug]): 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.
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.
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.
383 ([-mzdcbranch]): Likewise.
384 ([-mdisable-callt]): Likewise.
385 ([-msoft-float]): Likewise.
386 ([-m8byte-align]): Likewise.
387 ([-fstack-reuse]): Likewise.
389 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
391 * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]):
392 Fix markup, light copy-editing.
393 ([-fauto-profile]): Rewrite to fix formatting and content
396 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
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.
405 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
407 * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
410 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
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.
451 ([-mpointer-size=]): Likewise.
453 2015-01-03 John David Anglin <danglin@gcc.gnu.org>
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
462 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
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
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.
474 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
476 * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate
477 discussion of defaults, light copy-editing.
479 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
481 * tsan.c (instrument_expr): corrected previous checkin.
483 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
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.
492 2015-01-01 Anthony Green <green@moxielogic.com>
494 * config/moxie/predicates.md (moxie_general_movsrc_operand):
495 Restrict move source register offsets to 16 bits.
497 Copyright (C) 2015 Free Software Foundation, Inc.
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.