* 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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205476 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/nds32/nds32.c (nds32_rtx_costs): Adjust MULT cost if it is
	not optimized for size.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205478 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-26  Matthew Leach  <matthew.leach@arm.com>

	* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state):	Check
	for correct opcodes on BE.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205479 138bc75d-0d04-0410-961f-82ee72b054a4
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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205481 138bc75d-0d04-0410-961f-82ee72b054a4
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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205482 138bc75d-0d04-0410-961f-82ee72b054a4
Add -lrt on Solaris

	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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205483 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-28  Terry Guo  <terry.guo@arm.com>

	* config/arm/arm.c (v7m_extra_costs): New table.
	(arm_v7m_tune): Use it.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205484 138bc75d-0d04-0410-961f-82ee72b054a4

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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205485 138bc75d-0d04-0410-961f-82ee72b054a4
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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205486 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-28  Richard Biener  <rguenther@suse.de>

	PR lto/59323
	* gcc.dg/lto/pr59323-2_0.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205487 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/32/sfp-machine.h (__FP_FRAC_ADDI_4): New macro.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205488 138bc75d-0d04-0410-961f-82ee72b054a4
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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205489 138bc75d-0d04-0410-961f-82ee72b054a4
	* 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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205490 138bc75d-0d04-0410-961f-82ee72b054a4
[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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205492 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205498 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/59327
	* cfgexpand.c (expand_used_vars): Avoid warning on 32-bit
	HWI hosts.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205499 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/59297
	* semantics.c (finish_omp_atomic): Call finish_expr_stmt
	rather than add_stmt.

	* g++.dg/gomp/pr59297.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205500 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205504 138bc75d-0d04-0410-961f-82ee72b054a4
	* 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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205505 138bc75d-0d04-0410-961f-82ee72b054a4
	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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205506 138bc75d-0d04-0410-961f-82ee72b054a4