1. 29 Nov, 2013 10 commits
    • revert: cgraph.h (varpool_node): Add need_bounds_init field. · 089d1227
      	Reverted:
      	2013-11-20  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* cgraph.h (varpool_node): Add need_bounds_init field.
      	* lto-cgraph.c (lto_output_varpool_node): Output
      	need_bounds_init value.
      	(input_varpool_node): Read need_bounds_init value.
      	* varpool.c (dump_varpool_node): Dump need_bounds_init field.
      
      	Reverted:
      	2013-11-20  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* dbxout.c (dbxout_type): Ignore POINTER_BOUNDS_TYPE.
      	* dwarf2out.c (gen_subprogram_die): Ignore bound args.
      	(gen_type_die_with_usage): Skip pointer bounds.
      	(dwarf2out_global_decl): Likewise.
      
      	Reverted:
      	2013-11-18  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* builtin-types.def (BT_FN_PTR_CONST_PTR_VAR): New.
      	* chkp-builtins.def (BUILT_IN_CHKP_BIND_BOUNDS): New.
      	* cfgexpand.c (expand_call_stmt): Expand BUILT_IN_CHKP_BIND_BOUNDS.
      	* gimple.c (gimple_call_get_nobnd_arg_index): Remove.
      	* gimple.h (gf_mask): Add GF_CALL_WITH_BOUNDS.
      	(gimple_call_with_bounds_p): New.
      	(gimple_call_set_with_bounds): New.
      	(gimple_call_num_nobnd_args): Remove.
      	(gimple_call_nobnd_arg): Remove.
      	* tree.h (CALL_WITH_BOUNDS_P): New.
      	* rtl.h (CALL_EXPR_WITH_BOUNDS_P): New.
      
      	Reverted:
      	2013-11-08  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* common.opt (fcheck-pointer-bounds): Move to ...
      	* c-family/c.opt: ... here.
      	* langhooks-def.h (LANG_HOOKS_CHKP_SUPPORTED): Remove.
      	(LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_CHKP_SUPPORTED.
      	* langhooks.h (lang_hooks): Remove chkp_supported field.
      	* toplev.c (process_options): Remove chkp_supported check.
      
      	Reverted:
      	2013-10-30  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* tree-core.h (tree_index): Add TI_POINTER_BOUNDS_TYPE.
      	* tree.h (POINTER_BOUNDS_P): New.
      	(BOUNDED_TYPE_P): New.
      	(BOUNDED_P): New.
      	(pointer_bounds_type_node): New.
      	* tree.c (build_common_tree_nodes): Initialize
      	pointer_bounds_type_node.
      	* gimple.h (gimple_call_get_nobnd_arg_index): New.
      	(gimple_call_num_nobnd_args): New.
      	(gimple_call_nobnd_arg): New.
      	(gimple_return_retbnd): New.
      	(gimple_return_set_retbnd): New
      	* gimple.c (gimple_build_return): Increase number of ops
      	for return statement.
      	(gimple_call_get_nobnd_arg_index): New.
      	* gimple-pretty-print.c (dump_gimple_return): Print second op.
      
      	Reverted:
      	2013-10-30  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* ipa.c (cgraph_build_static_cdtor_1): Support contructors
      	with "chkp ctor" and "bnd_legacy" attributes.
      	* gimplify.c (gimplify_init_constructor): Avoid infinite
      	loop during gimplification of bounds initializer.
      
      	Reverted:
      	2013-10-30  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* c-family/c-common.c (handle_bnd_variable_size_attribute): New.
      	(handle_bnd_legacy): New.
      	(c_common_attribute_table): Add bnd_variable_size and bnd_legacy.
      	* doc/extend.texi: Document bnd_variable_size and bnd_legacy
      	attributes.
      
      	Reverted:
      	2013-10-29  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* builtin-types.def (BT_FN_VOID_CONST_PTR): New.
      	(BT_FN_PTR_CONST_PTR): New.
      	(BT_FN_CONST_PTR_CONST_PTR): New.
      	(BT_FN_PTR_CONST_PTR_SIZE): New.
      	(BT_FN_PTR_CONST_PTR_CONST_PTR): New.
      	(BT_FN_VOID_PTRPTR_CONST_PTR): New.
      	(BT_FN_VOID_CONST_PTR_SIZE): New.
      	(BT_FN_PTR_CONST_PTR_CONST_PTR_SIZE): New.
      	* chkp-builtins.def: New.
      	* builtins.def: include chkp-builtins.def.
      	(DEF_CHKP_BUILTIN): New.
      	* builtins.c (expand_builtin): Support BUILT_IN_CHKP_INIT_PTR_BOUNDS,
      	BUILT_IN_CHKP_NULL_PTR_BOUNDS, BUILT_IN_CHKP_COPY_PTR_BOUNDS,
      	BUILT_IN_CHKP_CHECK_PTR_LBOUNDS, BUILT_IN_CHKP_CHECK_PTR_UBOUNDS,
      	BUILT_IN_CHKP_CHECK_PTR_BOUNDS, BUILT_IN_CHKP_SET_PTR_BOUNDS,
      	BUILT_IN_CHKP_NARROW_PTR_BOUNDS, BUILT_IN_CHKP_STORE_PTR_BOUNDS,
      	BUILT_IN_CHKP_GET_PTR_LBOUND, BUILT_IN_CHKP_GET_PTR_UBOUND,
      	BUILT_IN_CHKP_BNDMK, BUILT_IN_CHKP_BNDSTX, BUILT_IN_CHKP_BNDCL,
      	BUILT_IN_CHKP_BNDCU, BUILT_IN_CHKP_BNDLDX, BUILT_IN_CHKP_BNDRET,
      	BUILT_IN_CHKP_INTERSECT, BUILT_IN_CHKP_ARG_BND, BUILT_IN_CHKP_NARROW,
      	BUILT_IN_CHKP_EXTRACT_LOWER, BUILT_IN_CHKP_EXTRACT_UPPER.
      	* common.opt (fcheck-pointer-bounds): New.
      	* toplev.c (process_options): Check Pointer Bounds Checker is
      	supported.
      	* doc/extend.texi: Document Pointer Bounds Checker built-in functions.
      
      	Reverted:
      	2013-10-30  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* target.def (builtin_chkp_function): New.
      	(chkp_bound_type): New.
      	(chkp_bound_mode): New.
      	(fn_abi_va_list_bounds_size): New.
      	(load_bounds_for_arg): New.
      	(store_bounds_for_arg): New.
      	* targhooks.h (default_load_bounds_for_arg): New.
      	(default_store_bounds_for_arg): New.
      	(default_fn_abi_va_list_bounds_size): New.
      	(default_chkp_bound_type): New.
      	(default_chkp_bound_mode): New.
      	(default_builtin_chkp_function): New.
      	* targhooks.c (default_load_bounds_for_arg): New.
      	(default_store_bounds_for_arg): New.
      	(default_fn_abi_va_list_bounds_size): New.
      	(default_chkp_bound_type): New.
      	(default_chkp_bound_mode); New.
      	(default_builtin_chkp_function): New.
      	* doc/tm.texi.in (TARGET_FN_ABI_VA_LIST_BOUNDS_SIZE): New.
      	(TARGET_LOAD_BOUNDS_FOR_ARG): New.
      	(TARGET_STORE_BOUNDS_FOR_ARG): New.
      	(TARGET_BUILTIN_CHKP_FUNCTION): New.
      	(TARGET_CHKP_BOUND_TYPE): New.
      	(TARGET_CHKP_BOUND_MODE): New.
      	* doc/tm.texi: Regenerated.
      	* langhooks.h (lang_hooks): Add chkp_supported field.
      	* langhooks-def.h (LANG_HOOKS_CHKP_SUPPORTED): New.
      	(LANG_HOOKS_INITIALIZER); Add LANG_HOOKS_CHKP_SUPPORTED.
      
      	Reverted:
      	2013-10-24  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* config/i386/constraints.md (B): New.
      	(Ti): New.
      	(Tb): New.
      	* config/i386/i386-c.c (ix86_target_macros_internal): Add __MPX__.
      	* config/i386/i386-modes.def (BND32): New.
      	(BND64): New.
      	* config/i386/i386-protos.h (ix86_bnd_prefixed_insn_p): New.
      	* config/i386/i386.c (isa_opts): Add mmpx.
      	(regclass_map): Add bound registers.
      	(dbx_register_map): Likewise.
      	(dbx64_register_map): Likewise.
      	(svr4_dbx_register_map): Likewise.
      	(PTA_MPX): New.
      	(ix86_option_override_internal): Support MPX ISA.
      	(ix86_conditional_register_usage): Support bound registers.
      	(print_reg): Likewise.
      	(ix86_code_end): Add MPX bnd prefix.
      	(output_set_got): Likewise.
      	(ix86_output_call_insn): Likewise.
      	(ix86_print_operand): Add '!' (MPX bnd) print prefix support.
      	(ix86_print_operand_punct_valid_p): Likewise.
      	(ix86_print_operand_address): Support UNSPEC_BNDMK_ADDR and
      	UNSPEC_BNDMK_ADDR.
      	(ix86_class_likely_spilled_p): Add bound regs support.
      	(ix86_hard_regno_mode_ok): Likewise.
      	(x86_order_regs_for_local_alloc): Likewise.
      	(ix86_bnd_prefixed_insn_p): New.
      	* config/i386/i386.h (FIRST_PSEUDO_REGISTER): Fix to new value.
      	(FIXED_REGISTERS): Add bound registers.
      	(CALL_USED_REGISTERS): Likewise.
      	(REG_ALLOC_ORDER): Likewise.
      	(HARD_REGNO_NREGS): Likewise.
      	(TARGET_MPX): New.
      	(VALID_BND_REG_MODE): New.
      	(FIRST_BND_REG): New.
      	(LAST_BND_REG): New.
      	(reg_class): Add BND_REGS.
      	(REG_CLASS_NAMES): Likewise.
      	(REG_CLASS_CONTENTS): Likewise.
      	(BND_REGNO_P): New.
      	(ANY_BND_REG_P): New.
      	(BNDmode): New.
      	(HI_REGISTER_NAMES): Add bound registers.
      	* config/i386/i386.md (UNSPEC_BNDMK): New.
      	(UNSPEC_BNDMK_ADDR): New.
      	(UNSPEC_BNDSTX): New.
      	(UNSPEC_BNDLDX): New.
      	(UNSPEC_BNDLDX_ADDR): New.
      	(UNSPEC_BNDCL): New.
      	(UNSPEC_BNDCU): New.
      	(UNSPEC_BNDCN): New.
      	(UNSPEC_MPX_FENCE): New.
      	(BND0_REG): New.
      	(BND1_REG): New.
      	(type): Add mpxmov, mpxmk, mpxchk, mpxld, mpxst.
      	(length_immediate): Likewise.
      	(prefix_0f): Likewise.
      	(memory): Likewise.
      	(prefix_rep): Check for bnd prefix.
      	(length_nobnd): New.
      	(length): Use length_nobnd if specified.
      	(BND): New.
      	(bnd_ptr): New.
      	(BNDCHECK): New.
      	(bndcheck): New.
      	(*jcc_1): Add bnd prefix and rename length attr to length_nobnd.
      	(*jcc_2): Likewise.
      	(jump): Likewise.
      	(simple_return_internal): Likewise.
      	(simple_return_pop_internal): Likewise.
      	(*indirect_jump): Add MPX bnd prefix.
      	(*tablejump_1): Likewise.
      	(simple_return_internal_long): Likewise.
      	(simple_return_indirect_internal): Likewise.
      	(<mode>_mk): New.
      	(*<mode>_mk): New.
      	(mov<mode>): New.
      	(*mov<mode>_internal_mpx): New.
      	(<mode>_<bndcheck>): New.
      	(*<mode>_<bndcheck>): New.
      	(<mode>_ldx): New.
      	(*<mode>_ldx): New.
      	(<mode>_stx): New.
      	(*<mode>_stx): New.
      	* config/i386/predicates.md (lea_address_operand): Rename to...
      	(address_no_seg_operand): ... this.
      	(address_mpx_no_base_operand): New.
      	(address_mpx_no_index_operand): New.
      	(bnd_mem_operator): New.
      	* config/i386/i386.opt (mmpx): New.
      	* doc/invoke.texi: Add documentation for the flags -mmpx, -mno-mpx.
      	* doc/rtl.texi Add documentation for BND32mode and BND64mode.
      
      	Reverted:
      	2013-10-24  Ilya Enkovich  <ilya.enkovich@intel.com>
      	* mode-classes.def (MODE_POINTER_BOUNDS): New.
      	* tree.def (POINTER_BOUNDS_TYPE): New.
      	* genmodes.c (complete_mode): Support MODE_POINTER_BOUNDS.
      	(POINTER_BOUNDS_MODE): New.
      	(make_pointer_bounds_mode): New.
      	* machmode.h (POINTER_BOUNDS_MODE_P): New.
      	* stor-layout.c (int_mode_for_mode): Support MODE_POINTER_BOUNDS.
      	(layout_type): Support POINTER_BOUNDS_TYPE.
      	* tree-pretty-print.c (dump_generic_node): Support POINTER_BOUNDS_TYPE.
      	* tree.c (build_int_cst_wide): Support POINTER_BOUNDS_TYPE.
      	(type_contains_placeholder_1): Likewise.
      	* tree.h (POINTER_BOUNDS_TYPE_P): New.
      	* varasm.c (output_constant): Support POINTER_BOUNDS_TYPE.
      	* doc/rtl.texi (MODE_POINTER_BOUNDS): New.
      
      From-SVN: r205522
      Ilya Enkovich committed
    • re PR middle-end/59338 (error: position plus size exceeds size of referenced… · b8815bd3
      re PR middle-end/59338 (error: position plus size exceeds size of referenced object in BIT_FIELD_REF)
      
      2013-11-29  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/59338
      	* tree-cfg.c (verify_expr): Restrict bounds verification of
      	BIT_FIELD_REF arguments to non-aggregate typed base objects.
      
      	* gcc.dg/torture/pr59338.c: New testcase.
      
      From-SVN: r205521
      Richard Biener committed
    • re PR tree-optimization/59334 (r205486 caused many failures) · b54fc5b7
      2013-11-29  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/59334
      	* tree-ssa-dce.c (eliminate_unnecessary_stmts): Fix bug
      	in previous commit.
      
      From-SVN: r205515
      Richard Biener committed
    • re PR lto/59326 (FAIL: gcc.dg/vect/vect-simd-clone-*.c) · e06f9964
      	PR lto/59326
      	* omp-low.c (simd_clone_create): Return NULL if for definition
      	!cgraph_function_with_gimple_body_p (old_node).  Call cgraph_get_body
      	before calling cgraph_function_versioning.
      	(expand_simd_clones): Look for "omp declare simd" attribute first.
      	Don't check targetm.simd_clone.compute_vecsize_and_simdlen here.
      	Punt if node->global.inlined_to.
      	(pass_omp_simd_clone::gate): Also enable if in_lto_p && !flag_wpa.
      	Disable pass if targetm.simd_clone.compute_vecsize_and_simdlen is NULL.
      	* lto-streamer-out.c (hash_tree): Handle OMP_CLAUSE.
      lto/
      	* lto.c (compare_tree_sccs_1): Handle OMP_CLAUSE.
      testsuite/
      	* gcc.dg/vect/vect-simd-clone-12.c: New test.
      	* gcc.dg/vect/vect-simd-clone-12a.c: New test.
      	* gcc.dg/vect/vect-simd-clone-10a.c: Remove extern keywords.
      
      Co-Authored-By: Richard Biener <rguenther@suse.de>
      
      From-SVN: r205514
      Jakub Jelinek committed
    • re PR lto/59326 (FAIL: gcc.dg/vect/vect-simd-clone-*.c) · c193f58b
      	PR lto/59326
      	* tree-core.h (enum omp_clause_schedule_kind): Add
      	OMP_CLAUSE_SCHEDULE_LAST.
      	(enum omp_clause_default_kind): Add OMP_CLAUSE_DEFAULT_LAST.
      	(enum omp_clause_depend_kind): Add OMP_CLAUSE_DEPEND_LAST.
      	(enum omp_clause_map_kind): Add OMP_CLAUSE_MAP_LAST.
      	(enum omp_clause_proc_bind_kind): Add OMP_CLAUSE_PROC_BIND_LAST.
      	* lto-streamer-out.c (lto_is_streamable): Allow streaming
      	OMP_CLAUSE.
      	(DFS_write_tree_body): Handle OMP_CLAUSE.
      	* tree-streamer-out.c (pack_ts_omp_clause_value_fields): New
      	function.
      	(streamer_pack_tree_bitfields): Call it for OMP_CLAUSE.
      	(write_ts_omp_clause_tree_pointers): New function.
      	(streamer_write_tree_body): Call it for OMP_CLAUSE.
      	(streamer_write_tree_header): For OMP_CLAUSE stream OMP_CLAUSE_CODE.
      	* tree-streamer-in.c (unpack_ts_omp_clause_value_fields): New
      	function.
      	(unpack_value_fields): Call it for OMP_CLAUSE.
      	(streamer_alloc_tree): Handle OMP_CLAUSE.
      	(lto_input_ts_omp_clause_tree_pointers): New function.
      	(streamer_read_tree_body): Call it for OMP_CLAUSE.
      lto/
      	* lto.c (mentions_vars_p_omp_clause): New function.
      	(mentions_vars_p): Call it for OMP_CLAUSE.  Remove break;
      	after return stmts.
      
      From-SVN: r205512
      Jakub Jelinek committed
    • re PR c/59280 (ICE with attribute((constructor(invalid)))) · fad7652e
      	PR c/59280
      	* c-common.c (get_priority): If TREE_VALUE (args) is IDENTIFIER_NODE,
      	goto invalid.  If it is error_mark_node, don't issue further
      	diagnostics.
      testsuite/
      	* c-c++-common/pr59280.c: New test.
      
      From-SVN: r205510
      Jakub Jelinek committed
    • lp1243022.c: Skip target arm-neon. · b82e0d0d
      testsuite/ChangeLog:
      
      2013-11-29  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
      
      	* gcc.target/arm/lp1243022.c: Skip target arm-neon.
      
      From-SVN: r205509
      Zhenqiang Chen committed
    • re PR c/57574 (-std=c99 inline function incorrectly has external linkage with… · 6763b9f7
      re PR c/57574 (-std=c99 inline function incorrectly has external linkage with prior static declaration)
      
      	PR c/57574
      c:
      	* c-decl.c (merge_decls): Clear DECL_EXTERNAL for a definition of
      	an inline function following a static declaration.
      
      testsuite:
      	* gcc.dg/inline-35.c: New test.
      
      From-SVN: r205506
      Joseph Myers committed
    • implement-c.texi: Document C11 implementation-defined behavior. · b76f5d16
      	* doc/implement-c.texi: Document C11 implementation-defined
      	behavior.  Refer to -ffp-contract=fast for contraction behavior.
      	* doc/invoke.texi (-std=c99, std=c11): Update description of
      	completeness.
      	(-std=gnu99): Don't mention as future default.
      	(-std=gnu11): Mention as intended future default.
      	* doc/standards.texi: Update descriptions of C99 and C11 support.
      	Limit statement about C99 facilities for freestanding
      	implementations to some platforms only.
      
      From-SVN: r205505
      Joseph Myers committed
    • Daily bump. · a6797ed6
      From-SVN: r205504
      GCC Administrator committed
  2. 28 Nov, 2013 19 commits
    • re PR c++/59297 (ICE: openmp atomic with indirect LHS) · e3f505d8
      	PR c++/59297
      	* semantics.c (finish_omp_atomic): Call finish_expr_stmt
      	rather than add_stmt.
      
      	* g++.dg/gomp/pr59297.C: New test.
      
      From-SVN: r205500
      Jakub Jelinek committed
    • re PR middle-end/59327 (warning in expand_used_vars) · 3dc87cc0
      	PR middle-end/59327
      	* cfgexpand.c (expand_used_vars): Avoid warning on 32-bit
      	HWI hosts.
      
      From-SVN: r205499
      Jakub Jelinek committed
    • re PR target/57293 (not needed frame pointers on IA-32 (performance regression?)) · 8d49e7ef
      2013-11-28  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/57293
      	* ira.h (ira_setup_eliminable_regset): Remove parameter.
      	* ira.c (ira_setup_eliminable_regset): Ditto.  Add
      	SUPPORTS_STACK_ALIGNMENT for crtl->stack_realign_needed.
      	Don't call lra_init_elimination.
      	(ira): Call ira_setup_eliminable_regset without arguments.
      	* loop-invariant.c (calculate_loop_reg_pressure): Remove argument
      	from ira_setup_eliminable_regset call.
      	* gcse.c (calculate_bb_reg_pressure): Ditto.
      	* haifa-sched.c (sched_init): Ditto.
      	* lra.h (lra_init_elimination): Remove the prototype.
      	* lra-int.h (lra_insn_recog_data): New member sp_offset.  Move
      	used_insn_alternative upper.
      	(lra_eliminate_regs_1): Add one more parameter.
      	(lra-eliminate): Ditto.
      	* lra.c (lra_invalidate_insn_data): Set sp_offset.
      	(setup_sp_offset): New.
      	(lra_process_new_insns): Call setup_sp_offset.
      	(lra): Add argument to lra_eliminate calls.
      	* lra-constraints.c (get_equiv_substitution): Rename to get_equiv.
      	(get_equiv_with_elimination): New.
      	(process_addr_reg): Call get_equiv_with_elimination instead of
      	get_equiv_substitution.
      	(equiv_address_substitution): Ditto.
      	(loc_equivalence_change_p): Ditto.
      	(loc_equivalence_callback, lra_constraints): Ditto.
      	(curr_insn_transform): Ditto.  Print the sp offset
      	(process_alt_operands): Prevent stack pointer reloads.
      	(lra_constraints): Remove one argument from lra_eliminate call.
      	Move it up.  Mark used hard regs bfore it.  Use
      	get_equiv_with_elimination instead of get_equiv_substitution.
      	* lra-eliminations.c (lra_eliminate_regs_1): Add parameter and
      	assert for param values combination.  Use sp offset.  Add argument
      	to lra_eliminate_regs_1 calls.
      	(lra_eliminate_regs): Add argument to lra_eliminate_regs_1 call.
      	(curr_sp_change): New static var.
      	(mark_not_eliminable): Add parameter.  Update curr_sp_change.
      	Don't prevent elimination to sp if we can calculate its change.
      	Pass the argument to mark_not_eliminable calls.
      	(eliminate_regs_in_insn): Add a parameter.  Use sp offset.  Add
      	argument to lra_eliminate_regs_1 call.
      	(update_reg_eliminate): Move calculation of hard regs for spill
      	lower.  Switch off lra_in_progress temporarily to generate regs
      	involved into elimination.
      	(lra_init_elimination): Rename to init_elimination.  Make it
      	static.  Set up insn sp offset, check the offsets at the end of
      	BBs.
      	(process_insn_for_elimination): Add parameter.  Pass its value to
      	eliminate_regs_in_insn.
      	(lra_eliminate): : Add parameter.  Pass its value to
      	process_insn_for_elimination.  Add assert for param values
      	combination.  Call init_elimination.  Don't update offsets in
      	equivalence substitutions.
      	* lra-spills.c (assign_mem_slot): Don't call lra_eliminate_regs_1
      	for created stack slot.
      	(remove_pseudos): Call lra_eliminate_regs_1 before changing memory
      	onto stack slot.
      
      2013-11-28  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/57293
      	* gcc.target/i386/pr57293.c: New.
      
      From-SVN: r205498
      Vladimir Makarov committed
    • iterators.md (vrint_conds): New int attribute. · fca0efeb
      [gcc/]
      2013-11-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* config/arm/iterators.md (vrint_conds): New int attribute.
      	* config/arm/vfp.md (<vrint_pattern><SDF:mode>2): Set conds attribute.
      	(smax<mode>3): Likewise.
      	(smin<mode>3): Likewise.
      
      [gcc/testsuite/]
      2013-11-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* gcc.target/arm/vrinta-ce.c: New testcase.
      
      From-SVN: r205492
      Kyrylo Tkachov committed
    • dwarf.c (find_address_ranges): New static function, broken out of build_address_map. · b8ddd61b
      	* dwarf.c (find_address_ranges): New static function, broken out
      	of build_address_map.
      	(build_address_map): Call it.
      	* btest.c (check): Check for missing filename or function, rather
      	than crashing.
      	(f3): Check that enough frames were returned.
      
      From-SVN: r205490
      Ian Lance Taylor committed
    • tree-core.h (tree_base): Document use of static_flag for SSA_NAME. · f5c8b24c
      gcc/
      	* tree-core.h (tree_base): Document use of static_flag for SSA_NAME.
      	* tree.h (SSA_NAME_ANTI_RANGE_P, SSA_NAME_RANGE_TYPE): New macros.
      	* tree-ssanames.h (set_range_info): Add range_type argument.
      	(duplicate_ssa_name_range_info): Likewise.
      	* tree-ssanames.c (set_range_info): Take the range type as argument
      	and store it in SSA_NAME_ANTI_RANGE_P.
      	(duplicate_ssa_name_range_info): Likewise.
      	(get_range_info): Use SSA_NAME_ANTI_RANGE_P.
      	(set_nonzero_bits): Update call to set_range_info.
      	(duplicate_ssa_name_fn): Update call to duplicate_ssa_name_range_info.
      	* tree-ssa-copy.c (fini_copy_prop): Likewise.
      	* tree-vrp.c (remove_range_assertions): Update call to set_range_info.
      	(vrp_finalize): Likewise, passing anti-ranges directly.
      
      From-SVN: r205489
      Richard Sandiford committed
    • sfp-machine.h (__FP_FRAC_ADDI_4): New macro. · 3c716922
      	* config/i386/32/sfp-machine.h (__FP_FRAC_ADDI_4): New macro.
      
      From-SVN: r205488
      Uros Bizjak committed
    • re PR debug/59323 (Int. comp. error: in add_AT_specification, at dwarf2out.c:4026) · 4d858799
      2013-11-28  Richard Biener  <rguenther@suse.de>
      
      	PR lto/59323
      	* gcc.dg/lto/pr59323-2_0.c: New testcase.
      
      From-SVN: r205487
      Richard Biener committed
    • re PR middle-end/59330 (Crash in is_gimple_reg_type) · c54e2022
      2013-11-28  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/59330
      	* tree-ssa-dce.c (eliminate_unnecessary_stmts): Simplify
      	and fix delayed marking of free calls not necessary.
      
      	* gcc.dg/torture/pr59330.c: New testcase.
      
      From-SVN: r205486
      Richard Biener committed
    • tree-ssa-propagate.c (valid_gimple_call_p): Pass TREE_TYPE to is_gimple_reg_type. · 0c6b087c
      
      2013-11-28  Andrew MacLeod  <amacleod@redhat.com>
      
      	* tree-ssa-propagate.c (valid_gimple_call_p): Pass TREE_TYPE to
      	is_gimple_reg_type.
      	* ipa-prop.c (determine_known_aggregate_parts): Likewise.
      
      From-SVN: r205485
      Andrew MacLeod committed
    • arm.c (v7m_extra_costs): New table. · 2f3be698
      2013-11-28  Terry Guo  <terry.guo@arm.com>
      
      	* config/arm/arm.c (v7m_extra_costs): New table.
      	(arm_v7m_tune): Use it.
      
      From-SVN: r205484
      Terry Guo committed
    • Add -lrt on Solaris · ff082cab
      	gcc/cp:
      	* g++spec.c (TIMELIB): Define.
      	(WITHLIBC, SKIPOPT): Adjust values.
      	(lang_specific_driver): Add TIME_LIBRARY if not passed explicitly.
      
      	gcc:
      	* config/sol2.h (TIME_LIBRARY): Define.
      
      From-SVN: r205483
      Rainer Orth committed
    • re PR sanitizer/59106 (Failure to link against static libasan) · 049558ed
      2013-11-28  Jakub Jelinek  <jakub@redhat.com>
      	    Yury Gribov  <y.gribov@samsung.com>
      
      	PR sanitizer/59106
      	* ubsan/Makefile.am (AM_CXXFLAGS): Disable -frtti for files that
      	don't need it.
      	* ubsan/Makefile.in: Regenerated.
      
      Co-Authored-By: Yury Gribov <y.gribov@samsung.com>
      
      From-SVN: r205482
      Jakub Jelinek committed
    • re PR debug/59323 (Int. comp. error: in add_AT_specification, at dwarf2out.c:4026) · 53a5717e
      2013-11-28  Richard Biener  <rguenther@suse.de>
      
      	PR lto/59323
      	* lto-streamer-out.c (tree_is_indexable): TYPE_DECLs and
      	CONST_DECLs in function context are not indexable.
      
      	* gcc.dg/lto/pr59323_0.c: New testcase.
      
      From-SVN: r205481
      Richard Biener committed
    • linux-unwind.h (aarch64_fallback_frame_state): Check for correct opcodes on BE. · cceeb9a9
      2013-11-26  Matthew Leach  <matthew.leach@arm.com>
      
      	* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state):	Check
      	for correct opcodes on BE.
      
      From-SVN: r205479
      Matthew Leach committed
    • nds32.c (nds32_rtx_costs): Adjust MULT cost if it is not optimized for size. · 506cb361
      	* config/nds32/nds32.c (nds32_rtx_costs): Adjust MULT cost if it is
      	not optimized for size.
      
      From-SVN: r205478
      Chung-Ju Wu committed
    • cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb fields. · e361382f
      	* cfgexpand.c (struct stack_vars_data): Add asan_base and asan_alignb
      	fields.
      	(expand_stack_vars): For -fsanitize=address, use (and set initially)
      	data->asan_base as base for vars and update asan_alignb.
      	(expand_used_vars): Initialize data.asan_base and data.asan_alignb.
      	Pass them to asan_emit_stack_protection.
      	* asan.c (asan_detect_stack_use_after_return): New variable.
      	(asan_emit_stack_protection): Add pbase and alignb arguments.
      	Implement use after return sanitization.
      	* asan.h (asan_emit_stack_protection): Adjust prototype.
      	(ASAN_STACK_MAGIC_USE_AFTER_RET, ASAN_STACK_RETIRED_MAGIC): Define.
      
      From-SVN: r205476
      Jakub Jelinek committed
    • common.opt: Introduced a new option -fsimd-cost-model. · 8b5e1202
      gcc/
      	* common.opt: Introduced a new option -fsimd-cost-model.
      	* doc/invoke.texi: Introduced a new openmp-simd warning and
      	a new -fsimd-cost-model option.
      	* tree-vectorizer.h (unlimited_cost_model): Interface updated
      	to rely on the particular loop info.
      	* tree-vect-data-refs.c (vect_peeling_hash_insert): Ditto.
      	(vect_peeling_hash_choose_best_peeling): Ditto.
      	(vect_enhance_data_refs_alignment): Ditto.
      	* tree-vect-slp.c (vect_slp_analyze_bb_1): Ditto.
      	* tree-vect-loop.c (vect_estimate_min_profitable_iters): Ditto
      	plus added openmp-simd warining.
      
      gcc/c-family/
      	* c.opt (Wopenmp-simd): New.
      
      gcc/fortran/
      	* lang.opt (Wopenmp-simd): New.
      
      From-SVN: r205475
      Sergey Ostanevich committed
    • Daily bump. · d0da87f3
      From-SVN: r205471
      GCC Administrator committed
  3. 27 Nov, 2013 11 commits