2014-05-27  Dominique d'Humieres <dominiq@lps.ens.fr>

	PR testsuite/61319
	* c-c++-common/ubsan/float-cast-overflow-1.c: Make the sign of
	-nan optional.
	* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210958 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libgcc/61152
	* config/arm/arm-opts.h (License): Add GCC Runtime Library Exception.
	* config/arm/arm-cores.def (License): Same.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210959 138bc75d-0d04-0410-961f-82ee72b054a4
	* testsuite/libgomp.fortran/declare-simd-1.f90: Require
	vect_simd_clones effective target.
	* testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210961 138bc75d-0d04-0410-961f-82ee72b054a4
	* intrinsics/getcwd.c: Include stdlib.h.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210962 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* gencodes.c (main): Make LAST_INSN_CODE higher than any insn code,
	rather than any named insn's code.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210963 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* system.h (TEST_BIT): New macro.
	* recog.h (alternative_mask): New type.
	(ALL_ALTERNATIVES, ALTERNATIVE_BIT): New macros.
	(recog_data_d): Replace alternative_enabled_p array with
	enabled_alternatives.
	(target_recog): New structure.
	(default_target_recog, this_target_recog): Declare.
	(get_enabled_alternatives, recog_init): Likewise.
	* recog.c (default_target_recog, this_target_recog): New variables.
	(get_enabled_alternatives): New function.
	(extract_insn): Use it.
	(recog_init): New function.
	(preprocess_constraints, constrain_operands): Adjust for change to
	recog_data.
	* postreload.c (reload_cse_simplify_operands): Likewise.
	* reload.c (find_reloads): Likewise.
	* ira-costs.c (record_reg_classes): Likewise.
	* ira-lives.c (single_reg_class): Likewise.  Fix bug in which
	all alternatives after a disabled one would be skipped.
	(ira_implicitly_set_insn_hard_regs): Likewise.
	* ira.c (ira_setup_alts): Adjust for change to recog_data.
	* lra-int.h (lra_insn_recog_data): Replace alternative_enabled_p
	with enabled_alternatives.
	* lra.c (free_insn_recog_data): Update accordingly.
	(lra_update_insn_recog_data): Likewise.
	(lra_set_insn_recog_data): Likewise.  Use get_enabled_alternatives.
	* lra-constraints.c (process_alt_operands): Likewise.  Handle
	only_alternative as part of the enabled mask.
	* target-globals.h (this_target_recog): Declare.
	(target_globals): Add a recog field.
	(restore_target_globals): Restore this_target_recog.
	* target-globals.c: Include recog.h.
	(default_target_globals): Initialize recog field.
	(save_target_globals): Likewise.
	* reginfo.c (reinit_regs): Call recog_init.
	* toplev.c (backend_init_target): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210964 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* ira.c (commutative_operand): Adjust for change to recog_data.
	[Missing from previous commit.]


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210965 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-27  Richard Biener  <rguenther@suse.de>

	* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
	Try using literal operands when comparing value-ranges failed.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210966 138bc75d-0d04-0410-961f-82ee72b054a4
[ARM] Vectorise bswap* in aarch32.

	* config/arm/neon.md (neon_bswap<mode>): New pattern.
	* config/arm/arm.c (neon_itype): Add NEON_BSWAP.
	(arm_init_neon_builtins): Handle NEON_BSWAP.
	Define required type nodes.
	(arm_expand_neon_builtin): Handle NEON_BSWAP.
	(arm_builtin_vectorized_function): Handle BUILTIN_BSWAP builtins.
	* config/arm/arm_neon_builtins.def (bswap): Define builtins.
	* config/arm/iterators.md (VDQHSD): New mode iterator.

	* lib/target-supports.exp (check_effective_target_vect_bswap):
	Specify arm*-*-* support.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210967 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libstdc++/61329
	* include/bits/regex_automaton.tcc (_State_base::_M_print): Add
	inline specifier.
	(_State_base::_M_dot): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210968 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libgcc/61152
	* config/arm/arm.h (License): Add note to COPYING.RUNTIME.
	* config/arm/arm-cores.def (License): Same.
	* config/arm/arm-opts.h (License): Same.
	* config/arm/aout.h (License): Same.
	* config/arm/bpabi.h (License): Same.
	* config/arm/elf.h (License): Same.
	* config/arm/linux-elf.h (License): Same.
	* config/arm/linux-gas.h (License): Same.
	* config/arm/netbsd-elf.h (License): Same.
	* config/arm/uclinux-eabi.h (License): Same.
	* config/arm/uclinux-elf.h (License): Same.
	* config/arm/vxworks.h (License): Same.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210969 138bc75d-0d04-0410-961f-82ee72b054a4
	PR testsuite/61319
	* c-c++-common/ubsan/float-cast.h: Conditionally define LLONG_MAX,
	LLONG_MIN, and ULLONG_MAX.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210970 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-27  Richard Biener  <rguenther@suse.de>

	* system.h (__STDC_FORMAT_MACROS): Define as very first thing.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210973 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-27  Richard Biener  <rguenther@suse.de>

	* gcc.dg/tree-ssa/vrp92.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210974 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-27  Steve Ellcey  <sellcey@mips.com>

	* config/mips/mips.c: Add include of cgraph.h.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210975 138bc75d-0d04-0410-961f-82ee72b054a4
	* stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT
	before printing.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210978 138bc75d-0d04-0410-961f-82ee72b054a4
	* fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2
	to X CMP C2 -+ C1 transformation to EQ_EXPR/NE_EXPR.
	Add X - Y CMP 0 to X CMP Y transformation.
	(fold_binary_loc) <EQ_EXPR/NE_EXPR>: Remove same transformations.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210979 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c/56724
	* c-typeck.c (convert_arguments): Get location of a parameter.  Change
	error and warning calls to error_at and warning_at.  Pass location of
	a parameter to it.  Call warning_at with OPT_Wtraditional_conversion.
	(convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
	WARN_FOR_QUALIFIERS.  Pass expr_loc to those.

	* gcc.dg/pr56724-1.c: New test.
	* gcc.dg/pr56724-2.c: New test.
	* gcc.dg/wtr-conversion-1.c: Use -Wtraditional-conversion instead of
	-Wtraditional.
	* gcc.dg/dfp/wtr-conversion-1.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210980 138bc75d-0d04-0410-961f-82ee72b054a4
	* double-int.c (div_and_round_double) <ROUND_DIV_EXPR>: Use the proper
	predicate to detect a negative quotient.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210981 138bc75d-0d04-0410-961f-82ee72b054a4
	* gnat.dg/aliasing1.adb (dg-final): Robustify pattern matching.


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