+2014-06-30 Joseph Myers <joseph@codesourcery.com>
+
+ * var-tracking.c (add_stores): Return instead of asserting if old
+ and new values for conditional store are the same.
+
+2014-06-30 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/61608
+ PR target/39284
+ * bb-reorder.c (pass_duplicate_computed_gotos::execute): Cleanup
+ the cfg if there were any changes.
+ * passes.def: Revert move of peephole2 after reorder_blocks;
+ move duplicate_computed_gotos before peephole2.
+
+2014-06-30 Uros Bizjak <ubizjak@gmail.com>
+
+ * except.c (emit_note_eh_region_end): New helper function.
+ (convert_to_eh_region_ranges): Use emit_note_eh_region_end to
+ emit EH_REGION_END note.
+ * jump.c (cleanup_barriers): Do not split a call and its
+ corresponding CALL_ARG_LOCATION note.
+
+2014-06-30 Jeff Law <law@redhat.com>
+
+ PR tree-optimization/61607
+ * tree-ssa-threadedge.c (simplify_control_stmt_condition): Look
+ deeper into the SSA_NAME_VALUE chain.
+
+2014-06-30 Marek Polacek <polacek@redhat.com>
+
+ * convert.c (convert_to_integer): Don't instrument conversions if the
+ function has no_sanitize_undefined attribute.
+ * ubsan.c: Don't run the ubsan pass if the function has
+ no_sanitize_undefined attribute.
+
+2014-06-30 Jakub Jelinek <jakub@redhat.com>
+
+ * doc/invoke.texi (-fsanitize=bounds): Move to the table with
+ -fsanitize=undefined suboptions.
+
+2014-06-30 Alan Lawrence <alan.lawrence@arm.com>
+
+ * config/aarch64/aarch64-simd.md (vec_perm): Enable for bigendian.
+ * config/aarch64/aarch64.c (aarch64_expand_vec_perm): Remove assert
+ against bigendian and adjust indices.
+
+2014-06-30 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/install.texi (Specific, aarch64*-*-*): Fix markup. Reword a bit.
+
+2014-06-30 Marcus Shawcroft <marcus.shawcroft@arm.com>
+
+ PR target/61633
+ * config/aarch64/aarch64.md (*aarch64_ashr_sisd_or_int_<mode>3):
+ Add alternative; make early clobber. Adjust both split patterns
+ to use operand 0 as the working register.
+
+2014-06-30 Jakub Jelinek <jakub@redhat.com>
+
+ * ira-build.c (sort_conflict_id_map): Don't call qsort if num is 0,
+ as ira_object_id_map might be NULL, or 1.
+
+2014-06-30 Zhenqiang Chen <zhenqiang.chen@linaro.org>
+
+ * loop-invariant.c (get_inv_cost): Handle register class.
+ (gain_for_invariant): Check the register pressure of the inv
+ and its overlapped register class, other than all.
+
+2014-06-30 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/invoke.texi (Optimize Options): Fix descriptions of
+ ipa-cp-loop-hint-bonus and ipa-cp-array-index-hint-bonus.
+
+2014-06-29 David Wohlferd <dw@LimeGreenSocks.com>
+
+ * doc/extend.texi (Function Attributes): Update 'naked' attribute
+ documentation.
+
+2014-06-29 Tobias Grosser <tobias@grosser.es>
+
+ PR bootstrap/61650
+ * graphite-isl-ast-to-gimple.c: Add missing guards.
+
+2014-06-29 Roman Gareev <gareevroman@gmail.com>
+
+ * Makefile.in: Add the compilation of graphite-isl-ast-to-gimple.o.
+ * common.opt: Add new switch fgraphite-code-generator=[isl|cloog].
+ * flag-types.h: Add new enum fgraphite_generator.
+ * graphite-isl-ast-to-gimple.c: New.
+ * graphite-isl-ast-to-gimple.h: New.
+ * graphite.c (graphite_transform_loops): Add choice of Graphite
+ code generator, which depends on flag_graphite_code_gen.
+
+2014-06-29 Roman Gareev <gareevroman@gmail.com>
+
+ * graphite-dependences.c (subtract_commutative_associative_deps):
+ Add NULL checking of the following variables: must_raw_no_source,
+ may_raw_no_source, must_war_no_source, may_war_no_source,
+ must_waw_no_source, may_waw_no_source, must_raw, may_raw,
+ must_war, may_war, must_waw, may_waw.
+
+2014-06-29 Roman Gareev <gareevroman@gmail.com>
+
+ * graphite-clast-to-gimple.c: gloog is renamed to
+ graphite_regenerate_ast_cloog. gloog_error is renamed to
+ graphite_regenerate_error.
+ * graphite-clast-to-gimple.h: The definition of the struct
+ bb_pbb_def is moved to graphite-htab.h.
+ Add inclusion of the hash-table.h.
+ * graphite-htab.h: The declaration of the function gloog is moved
+ to graphite-clast-to-gimple.h and renamed to
+ graphite_regenerate_ast_cloog.
+ * graphite.c (graphite_transform_loops): gloog is renamed
+ to graphite_regenerate_ast_cloog.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * tree-streamer-out.c (pack_ts_type_common_value_fields): Stream if
+ type is complete.
+ (write_ts_type_common_tree_pointers): Do not stream fields not set
+ for incomplete types; do not stream duplicated fields for variants;
+ sanity check that variant and type match.
+ (write_ts_type_non_common_tree_pointers): Likewise.
+ * tree-streamer-in.c (unpack_ts_type_common_value_fields): Mark in
+ TYPE_SIZE whether type is complete.
+ (lto_input_ts_type_common_tree_pointers): Do same changes as in
+ write_ts_type_common_tree_pointers
+ (lto_input_ts_type_non_common_tree_pointers): Likewise.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * cgraph.c (dump_cgraph_node): Dump init&fini priorities.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * tree-inline.c (remap_type_1): Do not duplicate fields
+ that are shared in between type and its main variant.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa-prop.c (ipa_set_jf_known_type): Record always the main variant
+ of the type.
+ (ipa_set_ancestor_jf) Likewise.
+ (check_stmt_for_type_change): Check that we work on main variant.
+ (detect_type_change): Look into main variant.
+ (compute_known_type_jump_func): Check that main variant has BINFO.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa-devirt.c (set_type_binfo): New function.
+ (add_type_duplicate): Use it.
+ (get_odr_type): Sanity check that binfos points to main variants.
+ (get_class_context): Be sure the context's outer_type is main variant.
+ (contains_type_p): Walk main variant.
+ (get_polymorphic_call_info_for_decl): Set outer_type to be
+ main variant.
+ (get_polymorphic_call_info): Likewise.
+ (possible_polymorphic_call_targets): Sanity check that we operate
+ on main variant.
+
+2014-06-28 Jan Hubicka <hubicka@ucw.cz>
+
+ * stor-layout.c (finish_builtin_struct): Copy fields into the variants.
+
+2014-06-28 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/rs6000/rs6000.c (rs6000_aggregate_candidate): Revert
+ accidental change due to wide-int branch merge.
+
+2014-06-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * configure.ac (gcc_cv_as_compress_debug): Check for assembler
+ compressed debug support.
+ (gcc_cv_ld_compress_debug): Check for linker compressed debug support.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * common.opt (compressed_debug_sections): New enum.
+ (gz, gz=): New options.
+ * gcc.c (LINK_COMPRESS_DEBUG_SPEC, ASM_COMPRESS_DEBUG_SPEC): Define.
+ (LINK_COMMAND_SPEC): Invoke LINK_COMPRESS_DEBUG_SPEC.
+ (asm_options): Invoke ASM_COMPRESS_DEBUG_SPEC.
+ * config/darwin.h (LINK_COMMAND_SPEC_A): Invoke
+ LINK_COMPRESS_DEBUG_SPEC.
+ * config/i386/djgpp.h (LINK_COMMAND_SPEC): Likewise.
+ * opts.c (common_handle_option): Handle OPT_gz, OPT_gz_.
+ * doc/invoke.texi (Option Summary, Debugging Options): Add -gz[=type].
+ (Debugging Options): Document -gz[=type].
+
+2014-06-27 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/61160
+ * cgraphclones.c (duplicate_thunk_for_node): Removed parameter
+ args_to_skip, use those from node instead. Copy args_to_skip and
+ combined_args_to_skip from node to the new thunk.
+ (redirect_edge_duplicating_thunks): Removed parameter args_to_skip.
+ (cgraph_create_virtual_clone): Moved computation of
+ combined_args_to_skip...
+ (cgraph_clone_node): ...here, simplify it to bitmap_ior..
+
+2014-06-27 trevor Saunders <tsaunders@mozilla.com>
+
+ * config/i386/winnt.c (i386_pe_section_type_flags): Remove
+ redundant diagnostic machinary.
+
+2014-06-27 Richard Biener <rguenther@suse.de>
+
+ * tree-ssa-math-opts.c (bswap_replace): Fix
+ SLOW_UNALIGNED_ACCESS test to only apply to unaligned object.
+
+2014-06-27 Martin Liska <mliska@suse.cz>
+
+ * gimple.h (gimple_location_safe): New function introduced.
+ * cgraphunit.c (walk_polymorphic_call_targets): Usage
+ of gimple_location_safe replaces gimple_location.
+ (gimple_fold_call): Likewise.
+ * ipa-devirt.c (ipa_devirt): Likewise.
+ * ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
+ * ipa.c (walk_polymorphic_call_targets): Likewise.
+ * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Likewise.
+
+2014-06-27 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/57233
+ PR tree-optimization/61299
+ * tree-vect-generic.c (get_compute_type, count_type_subparts): New
+ functions.
+ (expand_vector_operations_1): Use them. If {L,R}ROTATE_EXPR
+ would be lowered to scalar shifts, check if corresponding
+ shifts and vector BIT_IOR_EXPR are supported and don't lower
+ or lower just to narrower vector type in that case.
+ * expmed.c (expand_shift_1): Fix up handling of vector
+ shifts and rotates.
+
+2014-06-26 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/61586
+ * config/alpha/alpha.c (alpha_handle_trap_shadows): Handle BARRIER RTX.
+
+2014-06-26 Jan Hubicka <hubicka@ucw.cz>
+
+ * doc/invoke.texi (-fsemantic-interposition): Document.
+ * common.opt (fsemantic-interposition): New flag.
+ * varasm.c (decl_replaceable_p): Use it.
+
2014-06-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/61542
* opts.c (default_options_optimization): Set
PARAM_ALLOW_STORE_DATA_RACES to one at -Ofast.
* doc/invoke.texi (allow-load-data-races)
- (allow-packed-load-data-races, allow-packed-store-data-races):
- Removed.
+ (allow-packed-load-data-races, allow-packed-store-data-races): Removed.
(allow-store-data-races): Document the new default.
2014-06-26 Martin Jambor <mjambor@suse.cz>
2014-06-26 Bernd Schmidt <bernds@codesourcery.com>
- * Makefile.in (COLLECT2_OBJS): Add collect-utils.o.
- (LTO_WRAPPER_OBJS): New variable.
- (lto-wrapper$(exeext)): Use it.
- * collect2.c: Include "collect-utils.h".
- (verbose, debug): Remove variables.
- (at_file_supplied): No longer static.
- (tool_name): New variable.
- (do_wait, fork_execute, maybe_unlink): Don't declare.
- (tool_cleanup): No longer static.
- (notice): Remove function.
- (maybe_run_lto_and_relink, main, do_dsymutil): Add new arg to
- fork_execute calls.
- (collect_wait, do_wait, collect_execute): Remove functions.
- (maybe_unlink): No longer static.
- * collect2.h (verbose, debug): Don't declare.
- (at_file_supplied): Declare.
- * collect-utils.c (utils_cleanup): New arg from_signal. All callers
- changed.
- (collect_execute): Replace with implementation from collect2, plus a
- new arg use_atfile. All callers changed.
- (collect_wait): Replace with implementation from collect2.
- (maybe_unlink_file): Remove function.
- (fork_execute): Replace with implementation from collect2, plus a
- new arg use_atfile. All callers changed.
- (do_wait): Add call to utils_cleanup to the error path.
- * collect-utils.h (collect_execute, fork_execute, utils_cleanup)
- (tool_cleanup): Adjust declarations.
- * lto-wrapper.c (tool_cleanup): Add unused bool argument.
- * tlink.c: Include "collect-utils.h".
- (tlink_execute): New arg use_atfile. All callers changed.
- (tlink_init, tlink_execute): Remove declarations.
-
- * collect-utils.c (save_temps): New variable.
- (do_wait): Use it instead of debug. Use fatal_error.
- * collect-utils.h (save_temps): Declare.
- * collect2.c (verbose): Rename from vflag. All uses changed.
- (tool_cleanup): New function, copied from collect_atexit.
- (collect_atexit, handler): Just call it.
- * collect2.h (verbose): Declaration renamed from vflag.
- * lto-wrapper.c (maybe_unlink, run_gcc): Use save_temps instead of
- debug.
-
- * Makefile.in (ALL_HOST_BACKEND_OBJS): Add collect-utils.o.
- (lto-wrapper$(exeext)): Link with collect-utils.o.
- * collect-utils.c: New file.
- * collect-utils.h: New file.
- * lto-wrapper.c: Include "collect-utils.h".
- (args_name): Delete variable.
- (tool_name): New variable.
- (tool_cleanup): New function.
- (maybe_unlink): Renamed from maybe_unlink_file. All callers changed.
- (lto_wrapper_cleanup, fatal_signal, collect_execute, collect_wait,
- fork_execute): Remove functions.
+ * Makefile.in (COLLECT2_OBJS): Add collect-utils.o.
+ (LTO_WRAPPER_OBJS): New variable.
+ (lto-wrapper$(exeext)): Use it.
+ * collect2.c: Include "collect-utils.h".
+ (verbose, debug): Remove variables.
+ (at_file_supplied): No longer static.
+ (tool_name): New variable.
+ (do_wait, fork_execute, maybe_unlink): Don't declare.
+ (tool_cleanup): No longer static.
+ (notice): Remove function.
+ (maybe_run_lto_and_relink, main, do_dsymutil): Add new arg to
+ fork_execute calls.
+ (collect_wait, do_wait, collect_execute): Remove functions.
+ (maybe_unlink): No longer static.
+ * collect2.h (verbose, debug): Don't declare.
+ (at_file_supplied): Declare.
+ * collect-utils.c (utils_cleanup): New arg from_signal. All callers
+ changed.
+ (collect_execute): Replace with implementation from collect2, plus a
+ new arg use_atfile. All callers changed.
+ (collect_wait): Replace with implementation from collect2.
+ (maybe_unlink_file): Remove function.
+ (fork_execute): Replace with implementation from collect2, plus a
+ new arg use_atfile. All callers changed.
+ (do_wait): Add call to utils_cleanup to the error path.
+ * collect-utils.h (collect_execute, fork_execute, utils_cleanup)
+ (tool_cleanup): Adjust declarations.
+ * lto-wrapper.c (tool_cleanup): Add unused bool argument.
+ * tlink.c: Include "collect-utils.h".
+ (tlink_execute): New arg use_atfile. All callers changed.
+ (tlink_init, tlink_execute): Remove declarations.
+
+ * collect-utils.c (save_temps): New variable.
+ (do_wait): Use it instead of debug. Use fatal_error.
+ * collect-utils.h (save_temps): Declare.
+ * collect2.c (verbose): Rename from vflag. All uses changed.
+ (tool_cleanup): New function, copied from collect_atexit.
+ (collect_atexit, handler): Just call it.
+ * collect2.h (verbose): Declaration renamed from vflag.
+ * lto-wrapper.c (maybe_unlink, run_gcc): Use save_temps instead of
+ debug.
+
+ * Makefile.in (ALL_HOST_BACKEND_OBJS): Add collect-utils.o.
+ (lto-wrapper$(exeext)): Link with collect-utils.o.
+ * collect-utils.c: New file.
+ * collect-utils.h: New file.
+ * lto-wrapper.c: Include "collect-utils.h".
+ (args_name): Delete variable.
+ (tool_name): New variable.
+ (tool_cleanup): New function.
+ (maybe_unlink): Renamed from maybe_unlink_file. All callers changed.
+ (lto_wrapper_cleanup, fatal_signal, collect_execute, collect_wait)
+ (fork_execute): Remove functions.
2014-06-26 Nick Clifton <nickc@redhat.com>
2014-06-25 Jan Hubicka <hubicka@ucw.cz>
- * toplev.c (backend_init_target): Move init_emit_regs and init_regs to...
+ * toplev.c (backend_init_target): Move init_emit_regs and
+ init_regs to...
(backend_init) ... here; skip ira_init_once and backend_init_target.
- (target_reinit) ... and here; clear this_target_rtl->lang_dependent_initialized.
- (lang_dependent_init_target): Clear this_target_rtl->lang_dependent_initialized;
+ (target_reinit) ... and here; clear
+ this_target_rtl->lang_dependent_initialized.
+ (lang_dependent_init_target): Clear
+ this_target_rtl->lang_dependent_initialized;
break out rtl initialization to ...
- (initialize_rtl): ... here; call also backend_init_target and ira_init_once.
+ (initialize_rtl): ... here; call also backend_init_target
+ and ira_init_once.
* toplev.h (initialize_rtl): New function.
* function.c: Include toplev.h
(init_function_start): Call initialize_rtl.
(set_writeonly_bit): Likewise.
* lto-cgraph.c: Implementation of new symtab_node member functions
that uses new IPA REF functions.
- * lto-streamer-in.c (fixup_call_stmt_edges_1): New IPA REF function used.
+ * lto-streamer-in.c (fixup_call_stmt_edges_1): New IPA REF
+ function used.
* lto-streamer-out.c (output_symbol_p): Likewise.
* lto-streamer.h (referenced_from_this_partition_p): Argument type
changed.
tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-ssa-strlen.c,
tree-ssa-structalias.c, tree-ssa-tail-merge.c,
tree-ssa-threadupdate.c, tree-ssa-uncprop.c,
-tree-vect-data-refs.c, tree-vect-loop.c, tree-vectorizer.c,
-tree-vectorizer.h, valtrack.c, valtrack.h, var-tracking.c,
-vtable-verify.c, vtable-verify.h: Adjust.
+ tree-vect-data-refs.c, tree-vect-loop.c, tree-vectorizer.c,
+ tree-vectorizer.h, valtrack.c, valtrack.h, var-tracking.c,
+ vtable-verify.c, vtable-verify.h: Adjust.
2014-06-24 Richard Biener <rguenther@suse.de>
* varpool.c (dump_varpool_node): Dump used_by_single_function.
* tree-pass.h (make_pass_ipa_single_use): New pass.
* cgraph.h (used_by_single_function): New flag.
- * lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Stream
- it.
+ * lto-cgraph.c (lto_output_varpool_node, input_varpool_node):
+ Stream it.
* passes.def (pass_ipa_single_use): Scedule.
* ipa.c (BOTTOM): New macro.
(meet): New function
2014-06-23 Kai Tietz <ktietz@redhat.com>
PR target/39284
- * passes.def (peephole2): Move peephole2 pass before
- before sched2 pass.
- * config/i386/i386.md (peehole2): Combine memories
- and indirect jumps.
+ * passes.def (peephole2): Move peephole2 pass before sched2 pass.
+ * config/i386/i386.md (peehole2): Combine memories and indirect jumps.
2014-06-23 Richard Biener <rguenther@suse.de>
variant but not df.
(vreinterpretv1df*, vreinterpret*v1df): New.
(vreinterpretdf*, vreinterpret*df): Remove.
- * config/aarch64/aarch64-simd.md (aarch64_create, aarch64_reinterpret*):
- Generate V1DFmode pattern not DFmode.
+ * config/aarch64/aarch64-simd.md (aarch64_create,
+ aarch64_reinterpret*): Generate V1DFmode pattern not DFmode.
* config/aarch64/iterators.md (VD_RE): Include V1DF, remove DF.
(VD1): New.
* config/aarch64/arm_neon.h (float64x1_t): typedef with gcc extensions.
2014-06-23 Jan Hubicka <hubicka@ucw.cz>
- * lto-cgraph.c (lto_output_node, input_node): Set/get init/fini priority
- directly.
+ * lto-cgraph.c (lto_output_node, input_node): Set/get init/fini
+ priority directly.
2014-06-23 Zhenqiang Chen <zhenqiang.chen@linaro.org>
expand variant and aarch64_emit_call_insn.
2014-06-18 Radovan Obradovic <robradovic@mips.com>
- Tom de Vries <tom@codesourcery.com>
+ Tom de Vries <tom@codesourcery.com>
* config/arm/arm-protos.h (arm_emit_call_insn): Add bool parameter.
* config/arm/arm.c (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS):