2014-02-07  Richard Biener  <rguenther@suse.de>

	PR middle-end/60092
	* gimple-low.c (lower_builtin_posix_memalign): New function.
	(lower_stmt): Call it to lower posix_memalign in a way
	to make alignment info accessible.

	* gcc.dg/vect/pr60092-2.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207598 138bc75d-0d04-0410-961f-82ee72b054a4
2014-02-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* optabs.c (expand_atomic_compare_and_swap): Allow expander to
	fail.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207599 138bc75d-0d04-0410-961f-82ee72b054a4
2014-02-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/gcc-have-sync-compare-and-swap.c: Align the 16 byte
	variable used for atomic operations.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207600 138bc75d-0d04-0410-961f-82ee72b054a4
2014-02-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.md ("atomic_load<mode>", "atomic_store<mode>")
	("atomic_compare_and_swap<mode>", "atomic_fetch_<atomic><mode>"):
	Reject misaligned operands.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207601 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* var-tracking.c (vt_stack_adjustments): Don't require stack_adjusts
	to match for the exit block.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207602 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* config/s390/s390.c: Include tree-pass.h and context.h.
	(s390_early_mach): New function, split out from...
	(s390_emit_prologue): ...here.
	(pass_data_s390_early_mach): New pass structure.
	(pass_s390_early_mach): New class.
	(s390_option_override): Create and register early_mach pass.
	Move to end of file.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207603 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* config/s390/s390.c (s390_restore_gprs_from_fprs): Add REG_CFA_RESTORE
	notes to each restore.  Also add REG_CFA_DEF_CFA when restoring %r15.
	(s390_optimize_prologue): Don't clear RTX_FRAME_RELATED_P.  Update the
	REG_CFA_RESTORE list when deciding not to restore a register.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207604 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* config/s390/s390-protos.h (s390_can_use_simple_return_insn)
	(s390_can_use_return_insn): Declare.
	* config/s390/s390.h (EPILOGUE_USES): Define.
	* config/s390/s390.c (s390_mainpool_start): Allow two main_pool
	instructions.
	(s390_chunkify_start): Handle return JUMP_LABELs.
	(s390_early_mach): Emit a main_pool instruction on the entry edge.
	(s300_set_up_by_prologue, s390_can_use_simple_return_insn)
	(s390_can_use_return_insn): New functions.
	(s390_fix_long_loop_prediction): Handle conditional returns.
	(TARGET_SET_UP_BY_PROLOGUE): Define.
	* config/s390/s390.md (ANY_RETURN): New code iterator.
	(*creturn, *csimple_return, return, simple_return): New patterns.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207605 138bc75d-0d04-0410-961f-82ee72b054a4
	PR preprocessor/56824
	* line-map.c (get_combined_adhoc_loc, linemap_get_expansion_line,
	linemap_get_expansion_filename, linemap_location_in_system_header_p,
	linemap_location_from_macro_expansion_p,
	linemap_macro_loc_to_spelling_point, linemap_macro_loc_to_def_point,
	linemap_macro_loc_to_exp_point, linemap_expand_location): Fix
	formatting.
	(linemap_compare_locations): Look through adhoc locations for both
	l0 and l1.

	* gcc.dg/pr56824.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207606 138bc75d-0d04-0410-961f-82ee72b054a4
       * ipa-inline.c (inline_small_functions): Fix typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207608 138bc75d-0d04-0410-961f-82ee72b054a4
        PR translation/52289
        * fortran/resolve.c (resolve_ordinary_assign): Fix typoed word
        in an error message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207609 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/58710
	* configure.ac: Use AC_LINK_IFELSE in check for
	_Unwind_GetIPInfo.
	* configure: Regenerate.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207612 138bc75d-0d04-0410-961f-82ee72b054a4
	* c-parser.c (c_parser_get_builtin_args): Replace calls to
	C_EXPR_APPEND by vec_safe_push.
	* c-tree.h (C_EXPR_APPEND): Remove.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207614 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/40977
	* config/m68k/m68k.md (ashldi_extsi): Turn into a
	define_insn_and_split.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207615 138bc75d-0d04-0410-961f-82ee72b054a4
	* gimple-fold.c (gimple_get_virt_method_for_vtable): Do O(1)
	lookup in the vtable constructor.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207616 138bc75d-0d04-0410-961f-82ee72b054a4
	* lto.c (unify_scc): Free CONSTRUCTOR_ELTS.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207619 138bc75d-0d04-0410-961f-82ee72b054a4
	* varpool.c: Include pointer-set.h.
	(varpool_remove_unreferenced_decls): Variables in other partitions
	will not be output; be however careful to not lose information
	about partitioning.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207620 138bc75d-0d04-0410-961f-82ee72b054a4
	PR ipa/60026
	* ipa-cp.c (determine_versionability): Fail at -O0
	or __attribute__((optimize (0))) or -fno-ipa-cp functions.
	* tree-sra.c (ipa_sra_preliminary_function_checks): Similarly.

	Revert:
	2014-02-04  Jakub Jelinek  <jakub@redhat.com>

	PR ipa/60026
	* tree-inline.c (copy_forbidden): Fail for
	__attribute__((optimize (0))) functions.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207621 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/60077
	* gcc.target/i386/pr60077-1.c: New test.
	* gcc.target/i386/pr60077-2.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207622 138bc75d-0d04-0410-961f-82ee72b054a4
	* cilk-common.c (cilk_init_builtins): Clear TREE_NOTHROW
	flag on __cilkrts_rethrow builtin.


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