140232 Commits

Author SHA1 Message Date
Ian Lance Taylor
f999c862ec libgo/testsuite: another fix for killing the sleep process
Avoid ps padding issues.  Make sure we locate and kill just the sleep
    process.
    
    Reviewed-on: https://go-review.googlesource.com/13634

From-SVN: r227037
2015-08-20 17:10:45 +00:00
Bill Schmidt
6992707b2a altivec.h (vec_pmsum_be): New #define.
[gcc]

2015-08-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/altivec.h (vec_pmsum_be): New #define.
	(vec_shasigma_be): New #define.
	* config/rs6000/rs6000-builtin.def (VPMSUMB): New BU_P8V_AV2_2.
	(VPMSUMH): Likewise.
	(VPMSUMW): Likewise.
	(VPMSUMD): Likewise.
	(VPMSUM): New BU_P8V_OVERLOAD_2.
	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): New
	entries for VEC_MADD and VEC_VPMSUM.

[gcc/testsuite]

2015-08-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.target/powerpc/altivec-35.c (foo): Add tests for vec_madd.
	* gcc.target/powerpc/p8vector-builtin-8.c (foo): Add tests for
	vec_vpmsum_be and vec_shasigma_be.

From-SVN: r227036
2015-08-20 17:01:32 +00:00
Georg-Johann Lay
b68db6d189 avr.c (avr_insert_attributes): In diagnostic essage: Multiply argument avr_n_flash by 64 to match unit of "KiB".
* config/avr/avr.c (avr_insert_attributes): In diagnostic essage:
	Multiply argument avr_n_flash by 64 to match unit of "KiB".
	(avr_pgm_check_var_decl): Same.

From-SVN: r227035
2015-08-20 14:22:35 +00:00
Alan Lawrence
50399bb138 [ARM] Hide existing float16 intrinsics unless we have a scalar __fp16 type
gcc/:

	* config/arm/arm-builtins.c (arm_init_simd_builtin_types): Move
	initialization of HFmode scalar type (float16_t) to...
	(arm_init_fp16_builtins): ... Here. Combine with __fp16 initialization
	code.

	(arm_init_builtins): Call arm_init_fp16_builtins earlier and always.

	* config/arm/arm_neon.h (vcvt_f16_f32, vcvt_f32_f16): Condition on
	having an -mfp16-format.

gcc/testsuite/:

	* lib/target-supports.exp
	(check_effective_target_arm_neon_fp16_ok_nocache): Add flag variants
	with -mfp16-format=ieee.

From-SVN: r227033
2015-08-20 12:38:20 +00:00
Richard Sandiford
30aa6349e1 predicates.md (vector_all_ones_operand): Use CONSTM1_RTX to simplify definition.
gcc/
	* config/i386/predicates.md (vector_all_ones_operand): Use
	CONSTM1_RTX to simplify definition.

From-SVN: r227032
2015-08-20 11:36:00 +00:00
Richard Biener
5fc6ae7dab toplev.c (compile_file): Remove loop calling late_global_decl on all symbols.
2015-08-20  Richard Biener  <rguenther@suse.de>

	* toplev.c (compile_file): Remove loop calling late_global_decl
	on all symbols.
	* varpool.c (varpool_node::assemble_decl): Call late_global_decl
	on decls we assembled.

From-SVN: r227031
2015-08-20 11:02:30 +00:00
Jonathan Wakely
f3f61ed2ab Makefile.am: Ensure gdb.py is installed for libstdc++ not libstdc++fs.
* python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
	libstdc++fs.
	* python/Makefile.in: Regenerate.

# Auto-generated commit message above this line, original below.
	* python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
	libstdc++fs.
	* python/Makefile.in: Regenerate.

From-SVN: r227030
2015-08-20 11:50:02 +01:00
James Greenhalgh
054b4005fa [AArch64] Break -mcpu tie between the compiler and assembler
gcc/

	* common/config/aarch64/aarch64-common.c
	(AARCH64_CPU_NAME_LENGTH): Delete.
	(aarch64_option_extension): New.
	(all_extensions): Likewise.
	(processor_name_to_arch): Likewise.
	(arch_to_arch_name): Likewise.
	(all_cores): New.
	(all_architectures): Likewise.
	(aarch64_get_extension_string_for_isa_flags): Likewise.
	(aarch64_rewrite_selected_cpu): Change to rewrite CPU names to
	architecture names.
	* config/aarch64/aarch64-protos.h
	(aarch64_get_extension_string_for_isa_flags): New.
	* config/aarch64/aarch64.c (aarch64_print_extension): Delete.
	(aarch64_option_print): Get the string to print from
	aarch64_get_extension_string_for_isa_flags.
	(aarch64_declare_function_name): Likewise.
	* config/aarch64/aarch64.h (BIG_LITTLE_SPEC): Rename to...
	(MCPU_TO_MARCH_SPEC): This.
	(ASM_CPU_SPEC): Use it.
	(BIG_LITTLE_SPEC_FUNCTIONS): Rename to...
	(MCPU_TO_MARCH_SPEC_FUNCTIONS): ...This.
	(EXTRA_SPEC_FUNCTIONS): Use it.

From-SVN: r227028
2015-08-20 10:18:54 +00:00
Paolo Carlini
dfd71aba57 re PR c++/67065 ([DR 1886] Missing diagnostics for ill-formed program with main variable instead of function)
/cp
2015-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67065
	* decl.c (grokvardecl): Reject 'main' as global variable.

/testsuite
2015-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67065
	* g++.dg/other/pr67065.C: New.

From-SVN: r227027
2015-08-20 10:18:03 +00:00
Simon Dardis
58df0b91cb mips.c (mips_expand_block_move): Enable inline memcpy expansion when !ISA_HAS_LWL_LWR.
gcc/

  	* config/mips/mips.c (mips_expand_block_move): Enable inline memcpy
	expansion when !ISA_HAS_LWL_LWR.
	(mips_block_move_straight): Update the size of elements copied to
	account for alignment when !ISA_HAS_LWL_LWR.
	* config/mips/mips.h (MIPS_MIN_MOVE_MEM_ALIGN): New macro.

gcc/testsuite/

	* inline-memcpy-1.c: Test for inline expansion of memcpy.
	* inline-memcpy-2.c: Ditto.
	* inline-memcpy-3.c: Ditto.
	* inline-memcpy-4.c: Ditto.
	* inline-memcpy-5.c: Ditto.

From-SVN: r227026
2015-08-20 10:45:33 +01:00
Simon Dardis
95f25df08f * MAINTAINERS: fix date.
From-SVN: r227025
2015-08-20 10:36:33 +01:00
Simon Dardis
21590a3963 MAINTAINERS: Add myself.
* MAINTAINERS:	Add myself.

From-SVN: r227024
2015-08-20 10:12:06 +01:00
Jason Merrill
7ac2c0bd17 re PR c++/66957 (incorrect "is protected within this context" error)
PR c++/66957
	* search.c (protected_accessible_p): Remove redundant access_in_type.
	Add otype parm instead of walking binfo.
	(friend_accessible_p): Check SCOPE itself.  Handle class
	templates.  Pass through otype.
	(dfs_accessible_post): Handle all accessibility cases.
	(dfs_accessible_pre): New.
	(accessible_p): Use it.  Don't check protected access here.  Pass
	decl and otype to dfs_walk.
	(member_declared_in_type, dfs_access_in_type_pre): New.
	(access_in_type): Use dfs_access_in_type_pre.
	* friend.c (add_friend): Fix multiple friends with the same name.

From-SVN: r227023
2015-08-19 21:45:49 -04:00
Jason Merrill
18c4fa8ef0 * lambda.c (current_nonlambda_scope): New.
From-SVN: r227022
2015-08-19 21:45:44 -04:00
GCC Administrator
f02fe7889f Daily bump.
From-SVN: r227021
2015-08-20 00:16:13 +00:00
Jiong Wang
b61a0d75fe [Patch][expand] Check gimple statement to improve LSHIFT_EXP expand
This patch improves LSHIFT_EXP expand if the shift operand comes from sign
extension and the shift result across word_mode_size boundary. See code
comments for details.

2015-08-19  Jiong.Wang  <jiong.wang@arm.com>

gcc/
  * expr.c (expand_expr_real_2): Check gimple statement during
  LSHIFT_EXPR expand.
  
gcc/testsuite
  * gcc.dg/wide_shift_64_1.c: New testcase.
  * gcc.dg/wide_shift_128_1.c: Likewise.
  * gcc.target/aarch64/ashlti3_1.c: Likewise.

From-SVN: r227018
2015-08-19 22:55:28 +00:00
Magnus Granberg
e0f6cba004 common.opt (fstack-protector): Initialize to -1.
* common.opt (fstack-protector): Initialize to -1.
        (fstack-protector-all): Likewise.
        (fstack-protector-strong): Likewise.
        (fstack-protector-explicit): Likewise.
        * configure.ac: Add --enable-default-ssp.
        * defaults.h (DEFAULT_FLAG_SSP): New.  Default SSP to strong.
        * opts.c (finish_options): Update opts->x_flag_stack_protect if it is
        -1.
        * doc/install.texi: Document --enable-default-ssp.
        * config.in: Regenerated.
        * configure: Likewise.

        * lib/target-supports.exp
        (check_effective_target_fstack_protector_enabled): New test.
        * gcc.target/i386/ssp-default.c: New test.

From-SVN: r227017
2015-08-19 16:07:06 -06:00
Alexandre Oliva
c24f5688ad [PR64164] fix regressions reported on m68k and armeb
Defer stack slot address assignment for all parms that can't live in
pseudos, and accept pseudos assignments in assign_param_setup_block.

for  gcc/ChangeLog

	PR rtl-optimization/64164
	* cfgexpand.c (parm_maybe_byref_p): Renamed to...
	(parm_in_stack_slot_p): ... this.  Disregard mode, what
	matters is whether the parm will live in a pseudo or a stack
	slot.
	(expand_one_ssa_partition): Deal with params without a default
	def.  Disregard mode.
	* cfgexpand.h: Renamed function declaration.
	* tree-ssa-coalesce.c: Adjust.
	* function.c (split_complex_args): Allocate stack slot for
	unassigned parms before splitting.
	(parm_in_unassigned_mem_p): New.  Use it instead of
	parm_maybe_byref_p throughout this file.
	(assign_parm_setup_block): Use it.  Accept pseudos in the
	expand-assigned rtl.
	(assign_parm_setup_reg): Drop BLKmode requirement.
	(assign_parm_setup_stack): Allocate and fill in the address of
	unassigned MEM parms.

From-SVN: r227015
2015-08-19 17:00:32 +00:00
David Sherwood
8dc89e4d7e genmodes.c (emit_mode_unit_size_inline): New function.
2015-08-19  David Sherwood  <david.sherwood@arm.com>

    gcc/
	* genmodes.c (emit_mode_unit_size_inline): New function.
	(emit_mode_unit_precision_inline): New function.
	(emit_insn_modes_h): Emit new #define.  Emit new functions.
	(emit_mode_unit_size): New function.
	(emit_mode_unit_precision): New function.
	(emit_mode_adjustments): Add mode_unit_size adjustments.
	(emit_insn_modes_c): Emit new arrays.
	* machmode.h (GET_MODE_UNIT_SIZE, GET_MODE_UNIT_PRECISION): Update to
	use new inline methods.

From-SVN: r227013
2015-08-19 15:23:11 +00:00
Kyrylo Tkachov
8d55c61ba8 [AArch64] Use popcount_hwi instead of homebrew version
* config/aarch64/aarch64.c (bit_count): Delete prototype
	and definition.
	(aarch64_print_operand): Use popcount_hwi instead of the above.

From-SVN: r227012
2015-08-19 15:09:38 +00:00
Kyrylo Tkachov
474b0f70a8 [AArch64][obvious] Remove obsolete comment in aarch64-option-extensions.def
* config/aarch64/aarch64-option-extensions.def: Delete obsolete
	comment.

From-SVN: r227011
2015-08-19 15:01:21 +00:00
Mikael Morin
ea0daf5f37 Forward-port test generic_31.f90 from the 5 branch.
gcc/testsuite/
	PR fortran/66929
	* gfortran.dg/generic_31.f90: New.

From-SVN: r227010
2015-08-19 14:47:23 +00:00
Marek Polacek
255520e020 re PR middle-end/67133 (ICE at -Os and above on x86_64-linux-gnu in gimple_op, at gimple.h:2274)
PR middle-end/67133
	* gimple-ssa-isolate-paths.c
	(insert_trap_and_remove_trailing_statements): Rename to ...
	(insert_trap): ... this.  Don't remove trailing statements; split
	block instead.
	(find_explicit_erroneous_behaviour): Don't remove all outgoing edges.

	* g++.dg/torture/pr67133.C: New test.

From-SVN: r227009
2015-08-19 14:22:26 +00:00
Mikael Morin
d63c864834 Avoid signed left shift undefined behaviour in sext_hwi
gcc/
	PR other/67042
	* hwint.h (sext_hwi): Switch to unsigned for the left shift, and
	conditionalize the whole on __GNUC__.  Add fallback code
	depending neither on undefined nor implementation-defined behaviour.

From-SVN: r227008
2015-08-19 13:42:36 +00:00
Paolo Carlini
dce573c43f cmath: Fix typo in comment.
2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_global/cmath: Fix typo in comment.

From-SVN: r227007
2015-08-19 13:20:29 +00:00
Paolo Carlini
157177af99 cmath: Revert fix for libstdc++/58625...
2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_global/cmath: Revert fix for libstdc++/58625, no
	longer necessary (__builtin_signbit is now type-generic).

From-SVN: r227006
2015-08-19 13:17:51 +00:00
Jiong Wang
a3957742f3 [AArch64] Cleanup whitespace in aarch64.c
2015-08-19  Jiong Wang  <jiong.wang@arm.com>

gcc/
  * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Replace
  whitespaces with tab.

From-SVN: r227005
2015-08-19 13:02:19 +00:00
Florian Weimer
4a5dc5994e Make the stack non-executable in GNAT tools
Due to PR67205, the deeply nested instantiations require trampolines,
which in turn requires an executable stack for the GNAT tools on
architectures such as x86_64.

From-SVN: r227004
2015-08-19 15:00:24 +02:00
Uros Bizjak
3bbce100e9 * ChangeLog: Fix corrupted entry.
From-SVN: r227003
2015-08-19 11:19:08 +02:00
Kyrylo Tkachov
eb9137dfe3 [ARM] Use %wd format for lane printing in bounds_check
* config/arm/arm.c (bounds_check): Use %wd print format
	for HOST_WIDE_INT arguments.

From-SVN: r227002
2015-08-19 08:26:43 +00:00
Trevor Saunders
a79683d5f0 remove more useless typedefs
gcc/c-family/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
	c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
 typedefs.

gcc/c/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* c-aux-info.c, c-parser.c, c-tree.h: Remove useless typedefs.

gcc/cp/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* call.c, class.c, cp-tree.h, decl.c, except.c, mangle.c,
	method.c, name-lookup.h, parser.c, parser.h, rtti.c,
	semantics.c, typeck2.c: Remove useless typedefs.

gcc/fortran/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* dependency.c, dependency.h, gfortran.h, io.c, module.c,
	parse.h, resolve.c, trans-types.h, trans.h: remove useless
typedefs.

gcc/lto/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* lto.h: Remove useless typedefs.

gcc/objc/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* objc-act.h, objc-next-runtime-abi-02.c, objc-runtime-hooks.h:
	Remove useless typedefs.

gcc/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

	* bb-reorder.c, cfgloop.h, collect2.c, combine.c, dse.c,
	dwarf2cfi.c, gcse-common.h, genopinit.c, ggc-page.c, machmode.h,
	mcf.c, modulo-sched.c, omp-low.c, read-rtl.c, sched-rgn.c,
	signop.h, tree-call-cdce.c, tree-dfa.c, tree-diagnostic.c,
	tree-inline.h, tree-scalar-evolution.c, tree-ssa-address.c,
	tree-ssa-loop-niter.c, tree-ssa-loop.h, tree-ssa-pre.c,
	tree-ssa-reassoc.c, tree-ssa-sccvn.h, tree-ssa-structalias.c,
	tree-ssa-uninit.c, tree-ssa.h, tree-vect-loop-manip.c,
	tree-vectorizer.h, tree-vrp.c, var-tracking.c: Remove useless
typedefs.

From-SVN: r227001
2015-08-19 02:48:48 +00:00
Trevor Saunders
506868500a remove useless typedefs
gcc/ChangeLog:

2015-08-11  trevor Saunders  <tbsaunde@tbsaunde.org>

	* bt-load.c, cgraph.h, dwarf2out.c, dwarf2out.h, final.c,
	function.c, graphite-scop-detection.c, haifa-sched.c,
	ipa-devirt.c, ipa-split.c, recog.c, ree.c, stmt.c,
	tree-data-ref.c, tree-ssa-dom.c, tree-ssa-loop-ivopts.c,
	varasm.c: Remove typedefs of structs.

From-SVN: r227000
2015-08-19 02:48:16 +00:00
GCC Administrator
9e110892a3 Daily bump.
From-SVN: r226998
2015-08-19 00:16:12 +00:00
Bill Schmidt
29ec406adc altivec.h (vec_adde): New define.
[gcc]

2015-08-18  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

	* config/rs6000/altivec.h (vec_adde): New define.
	(vec_addec): Likewise.
	(vec_double): Likewise.
	(vec_bperm): Likewise.
	(vec_gb): Likewise.
	* config/rs6000/rs6000-builtin.def (ADDE): New
	BU_ALTIVEC_OVERLOAD_3.
	(ADDEC): Likewise.
	(DOUBLE): New BU_VSX_OVERLOAD_1.
	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add new
	entries for ALTIVEC_BUILTIN_VEC_ADDC, ALTIVEC_BUILTIN_VEC_ADDE,
	ALTIVEC_BUILTIN_VEC_ADDEC, ALTIVEC_BUILTIN_VEC_ANDC,
	VSX_BUILTIN_VEC_DOUBLE, ALTIVEC_BUILTIN_VEC_MERGEH,
	ALTIVEC_BUILTIN_VEC_MERGEL, ALTIVEC_BUILTIN_VEC_NOR,
	ALTIVEC_BUILTIN_VEC_OR, ALTIVEC_BUILTIN_VEC_XOR,
	ALTIVEC_BUILTIN_VEC_PERM, ALTIVEC_BUILTIN_VEC_SEL,
	P8V_BUILTIN_VEC_EQV, P8V_BUILTIN_VEC_NAND, P8V_BUILTIN_VEC_ORC,
	and P8V_BUILTIN_VEC_VBPERMQ.

[gcc/testsuite]

2015-08-18  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

	* gcc.target/powerpc/altivec-35.c: New test.
	* gcc.target/powerpc/p8vector-builtin-8.c: New test.
	* gcc.target/powerpc/vsx-vector-7.c: New test.

From-SVN: r226995
2015-08-18 22:02:46 +00:00
Jason Merrill
7940cae431 * print-tree.c (print_node): Handle TREE_BINFO.
From-SVN: r226994
2015-08-18 17:29:12 -04:00
Jason Merrill
fc40eb7580 re PR c++/66919 (C++14 ICE during error reporting)
PR c++/66919
	* g++.dg/cpp1y/auto-fn27.C: New.

From-SVN: r226993
2015-08-18 17:29:07 -04:00
Jason Merrill
8e43da810d DR 1155
DR 1155
	* pt.c (convert_nontype_argument): Allow internal linkage in C++11
	and up.

From-SVN: r226992
2015-08-18 17:29:01 -04:00
Francois-Xavier Coudert
61717a4593 re PR middle-end/36757 (__builtin_signbit should be type-generic)
PR middle-end/36757

	* builtins.c (expand_builtin_signbit): Add asserts to make sure
	we can expand BUILT_IN_SIGNBIT inline.
	* builtins.def (BUILT_IN_SIGNBIT): Make type-generic.
	* doc/extend.texi: Document the type-generic __builtin_signbit.

	* c-common.c (check_builtin_function_arguments): Add check
	for BUILT_IN_SIGNBIT argument.

	* gcc.dg/builtins-error.c: Add checks for __builtin_signbit.
	* gcc.dg/tg-tests.h: Add checks for __builtin_signbit.

From-SVN: r226990
2015-08-18 20:07:57 +00:00
Richard Sandiford
a1c045caab re PR rtl-optimization/67218 (Combine incorrectly folds (double) (float) (unsigned))
gcc/
	PR rtl-optimization/67218
	* simplify-rtx.c (exact_int_to_float_conversion_p): New function.
	(simplify_unary_operation_1): Use it.

gcc/testsuite/
	PR rtl-optimization/67218
	* gcc.c-torture/execute/ieee/pr67218.c,
	gcc.target/aarch64/fcvt_int_float_double1.c,
	gcc.target/aarch64/fcvt_int_float_double2.c,
	gcc.target/aarch64/fcvt_int_float_double3.c,
	gcc.target/aarch64/fcvt_int_float_double4.c,
	gcc.target/aarch64/fcvt_uint_float_double1.c,
	gcc.target/aarch64/fcvt_uint_float_double2.c,
	gcc.target/aarch64/fcvt_uint_float_double3.c,
	gcc.target/aarch64/fcvt_uint_float_double4.c: New tests.

From-SVN: r226987
2015-08-18 19:04:41 +00:00
Jonathan Wakely
f641b2d6bb re PR c++/67216 (false is still a null pointer constant)
PR c++/67216
	* testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
	Fix use of safe-bool idiom that isn't valid in C++11.

From-SVN: r226986
2015-08-18 19:04:48 +01:00
Jonathan Wakely
e92e7c15e1 * include/bits/ptr_traits.h: Include <bits/move.h> for addressof.
From-SVN: r226985
2015-08-18 19:04:42 +01:00
Jonathan Wakely
4c2b10d6a4 re PR libstdc++/67066 (libstdc++-v3/src/filesystem/dir.cc fails to compile with --enable-concept-checks)
PR libstdc++/67066
	* doc/xml/manual/configure.xml (manual.intro.setup.configure): Add
	caveats for --enable-concept-checks. Improve link text.
	* doc/xml/manual/diagnostics.xml (std.diagnostics.concept_checking):
	Clarify caveats.
	* doc/html/*: Regenerate.
	* include/bits/stl_deque.h (deque): Only use concept checks in C++03.
	* include/bits/stl_stack.h (stack): Likewise.
	* include/bits/stl_vector.h (vector): Likewise.

From-SVN: r226984
2015-08-18 19:04:32 +01:00
Matthew Wahab
f6e93c21e7 atomic-comp-swap-release-acquire.c: Adjust dg-options to disable LSE extensions.
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Adjust
	dg-options to disable LSE extensions.
	* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
	* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
	* gcc.target/aarch64/atomic-op-char.c: Likewise.
	* gcc.target/aarch64/atomic-op-consume.c: Likewise.
	* gcc.target/aarch64/atomic-op-imm.c: Likewise.
	* gcc.target/aarch64/atomic-op-int.c: Likewise.
	* gcc.target/aarch64/atomic-op-long.c: Likewise.
	* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
	* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
	* gcc.target/aarch64/atomic-op-release.c: Likewise.
	* gcc.target/aarch64/atomic-op-short.c: Likewise.
	* gcc.target/aarch64/sync-comp-swap.c: Likewise.
	* gcc.target/aarch64/sync-op-acquire.c: Likewise.
	* gcc.target/aarch64/sync-op-full.c: Likewise.
	* gcc.target/aarch64/sync-op-release.c: Likewise.

From-SVN: r226979
2015-08-18 16:10:10 +00:00
Paolo Carlini
329524f568 re PR c++/67160 (static_assert feature test macro)
c-family/
2015-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67160
	* c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
	in c++1z mode.

testsuite/
2015-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67160
	* g++.dg/cpp1z/feat-cxx1z.C: New.

From-SVN: r226972
2015-08-18 14:38:51 +00:00
Marek Polacek
41dd7cf747 re PR middle-end/67222 (ICE in gimple_call_arg with bogus posix_memalign)
PR middle-end/67222
	* gimple-low.c (lower_stmt): Don't lower BUILT_IN_POSIX_MEMALIGN
	if the call isn't valid.
	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Check builtins using
	gimple_call_builtin_p.
	(call_may_clobber_ref_p_1): Likewise.
	(stmt_kills_ref_p): Likewise.

	* gcc.dg/torture/pr67222.c: New test.

From-SVN: r226969
2015-08-18 13:41:27 +00:00
Robert Suchanek
ec8a2131b6 [MIPS] Fix register renaming in the interrupt handlers.
gcc/
	* config/mips/mips-protos.h (mips_hard_regno_rename_ok): New prototype.
	* config/mips/mips.c (mips_hard_regno_rename_ok): New function.
	(mips_hard_regno_scratch_ok): Likewise.
	(TARGET_HARD_REGNO_SCRATCH_OK): Define macro.
	* config/mips/mips.h (HARD_REGNO_RENAME_OK): New.

gcc/testsuite/
	* gcc.target/mips/interrupt_handler-bug-1.c: New test.

From-SVN: r226968
2015-08-18 12:42:12 +00:00
Bin Cheng
7b008bbc0c tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
* tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
	(determine_value_range): Call refine_value_range_using_guard for
	each loop initial condition to improve value range.

	gcc/testsuite/ChangeLog
	* gcc.dg/tree-ssa/loop-bound-1.c: New test.
	* gcc.dg/tree-ssa/loop-bound-3.c: New test.
	* gcc.dg/tree-ssa/loop-bound-5.c: New test.

From-SVN: r226966
2015-08-18 07:57:54 +00:00
Max Filippov
991995c4e7 xtensa: fix _Unwind_GetCFA
Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame
higher than what was actually used by code at context->ra. This results
in invalid CFA value in signal frames and premature unwinding completion
in forced unwinding used by uClibc NPTL thread cancellation.
Returning context->sp from _Unwind_GetCFA makes all CFA values valid and
matching code that used them.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
	* config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return
	context->sp instead of context->cfa.

From-SVN: r226964
2015-08-18 01:08:22 +00:00
Max Filippov
0e19db59e2 xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde
This allows having exception cleanup code in binaries that don't
register their unwind tables.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
	* config/xtensa/t-windowed (LIB2ADDEH): Replace unwind-dw2-fde
	with unwind-dw2-fde-dip.

From-SVN: r226963
2015-08-18 01:07:10 +00:00
Max Filippov
b6ac5f6231 xtensa: reimplement register spilling
Spilling windowed registers in userspace is much easier, more portable,
less error-prone and equally effective as in kernel. Now that register
spilling syscall is considered obsolete in the xtensa linux kernel
replace it with CALL12 followed by series of ENTRY in libgcc.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
	* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use
	CALL12 followed by series of ENTRY to spill windowed registers.
	(__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill
	instead of making linux spill syscall.

From-SVN: r226962
2015-08-18 01:05:44 +00:00