Commit Graph

133866 Commits

Author SHA1 Message Date
Ian Lance Taylor
c9bc4e2d2b sync/atomic: fix data races in tests
Backport https://codereview.appspot.com/111320044 from Go
master library.

From-SVN: r217110
2014-11-05 03:39:49 +00:00
GCC Administrator
659e39f1bc Daily bump.
From-SVN: r217109
2014-11-05 00:16:21 +00:00
Ian Lance Taylor
1fec5f5274 libgo: add s390 support
From Dominik Vogt.

* libgo/go/syscall/libcall_linux_s390.go: New file for s390 support.
* libgo/go/syscall/syscall_linux_s390.go: Ditto.
* libgo/go/syscall/libcall_linux_s390x.go: New file for s390x support.
* libgo/go/syscall/syscall_linux_s390x.go: Ditto.
* libgo/go/runtime/pprof/pprof.go (printStackRecord): Support s390 and
s390x.
* libgo/runtime/runtime.c (runtime_cputicks): Add support for s390 and
s390x
* libgo/mksysinfo.sh: Ditto.
(upcase_fields): New helper function

* libgo/go/debug/elf/file.go (applyRelocations): Implement relocations
on s390x.
(applyRelocationsS390x): Ditto.
(DWARF): Ditto.
* libgo/go/debug/elf/elf.go (R_390): New constants for S390 relocations.
(r390Strings): Ditto.
(String): Helper function for S390 relocations.
(GoString): Ditto.

* libgo/go/reflect/makefuncgo_s390.go: New file.
(S390MakeFuncStubGo): Implementation of s390 abi.
* libgo/go/reflect/makefuncgo_s390x.go: New file.
(S390xMakeFuncStubGo): Implementation of s390x abi.
* libgo/go/reflect/makefunc_s390.c: New file.
(makeFuncStub): s390 and s390x specific implementation of function.
* libgo/go/reflect/makefunc.go
(MakeFunc): Add support for s390 and s390x.
(makeMethodValue): Ditto.
(makeValueMethod): Ditto.
* libgo/Makefile.am (go_reflect_makefunc_s_file): Ditto.
(go_reflect_makefunc_file): Ditto.
* libgo/go/reflect/makefunc_dummy.c: Ditto.
* libgo/runtime/runtime.h (__go_makefunc_can_recover): Export prototype
for use in makefunc_s390.c.
(__go_makefunc_returning): Ditto.

* libgo/go/syscall/exec_linux.go (forkAndExecInChild): Fix order of the
arguments of the clone system call for s390[x].

* libgo/configure.ac (is_s390): New variable.
(is_s390x): Ditto
(LIBGO_IS_S390): Ditto.
(LIBGO_IS_S390X): Ditto.
(GOARCH): Support s390 and s390x.
* libgo/go/go/build/build.go (cgoEnabled): Ditto.
* libgo/go/go/build/syslist.go (goarchList): Ditto.

From-SVN: r217106
2014-11-04 22:39:30 +00:00
Pat Haugen
f6166a42cc rs6000.c (atomic_hold_decl, [...]): Guard declaration with #ifdef.
* config/rs6000/rs6000.c (atomic_hold_decl, atomic_clear_decl,
	atomic_update_decl): Guard declaration with #ifdef.

From-SVN: r217105
2014-11-04 22:34:43 +00:00
Richard Biener
6f45018142 c-common.c (shorten_compare): Do not shorten mixed DFP and non-DFP compares.
2014-11-04  Richard Biener  <rguenther@suse.de>

	* c-common.c (shorten_compare): Do not shorten mixed
	DFP and non-DFP compares.

From-SVN: r217101
2014-11-04 20:46:52 +00:00
Marek Polacek
673fade339 * sanopt.c (sanopt_optimize_walker): Remove unused variables.
From-SVN: r217100
2014-11-04 19:59:35 +00:00
Marek Polacek
06cefae97e Makefile.in (OBJS): Add sanopt.o.
* Makefile.in (OBJS): Add sanopt.o.
	(GTFILES): Add sanopt.c.
	* asan.h (asan_expand_check_ifn): Declare.
	* asan.c (asan_expand_check_ifn): No longer static.
	(class pass_sanopt, pass_sanopt::execute, make_pass_sanopt): Move...
	* sanopt.c: ...here.  New file.
testsuite/
	* c-c++-common/ubsan/align-2.c: Remove dg-output.
	* c-c++-common/ubsan/align-4.c: Likewise.
	* g++.dg/ubsan/null-1.C: Likewise.
	* g++.dg/ubsan/null-2.C: Likewise.

From-SVN: r217099
2014-11-04 19:43:01 +00:00
Uros Bizjak
9c636298c0 godump-1.c (dg-skip-if): Add alpha*-*-*.
* gcc.misc-tests/godump-1.c (dg-skip-if): Add alpha*-*-*.

From-SVN: r217098
2014-11-04 19:30:32 +01:00
Uros Bizjak
a765878ad7 devirt-44.C (dg-options): Remove -fdump-tree-optimized.
* g++.dg/ipa/devirt-44.C (dg-options): Remove -fdump-tree-optimized.
	* g++.dg/ipa/devirt-45.C (dg-options): Ditto.
	* g++.dg/tree-prof/morefunc.C (dg-final-use): Cleanup profile ipa dump.
	* g++.dg/tree-prof/reorder.C (dg-final-use): Ditto.
	* g++.dg/tree-prof/pr35545.C (dg-fina-use): Cleanup profile_estimate
	ipa dump.
	* gcc.dg/fold-reassoc-3.c (dg-final): Fix scan string.
	Cleanup original tree dump.
	* gcc.dg/tree-prof/20050826-2.c (dg-final-use): Cleanup dom1 tree dump.
	* gcc.dg/tree-prof/cmpsf-1.c (dg-final-use): Ditto.
	* gcc.dg/tree-ssa/pr61144.c (dg-final): Cleanup optimized tree dump.

From-SVN: r217097
2014-11-04 19:21:34 +01:00
Ian Lance Taylor
8b06e1880e compiler: Logical operators should yield untyped bool for untyped operands.
Fixes issue 6671 for gccgo.

From-SVN: r217094
2014-11-04 17:49:01 +00:00
Martin Jambor
4456c6bff2 devirt-40.C: Changed dump to not matching OBJ_TYPE_REF in function body.
gcc/testsuite/

2014-11-04  Martin Jambor  <mjambor@suse.cz>

	* g++/dg/ipa/devirt-40.C: Changed dump to not matching OBJ_TYPE_REF in
	function body.

From-SVN: r217092
2014-11-04 18:39:06 +01:00
Jiong Wang
7e8c2bd54a [AArch64] fix unsafe access to deallocated stack
2014-11-04  Jiong Wang  <jiong.wang@arm.com>
2014-11-04  Wilco Dijkstra  <wilco.dijkstra@arm.com>

  gcc/
    PR target/63293
    * config/aarch64/aarch64.c (aarch64_expand_epiloue): Add barriers before
    stack adjustment.

From-SVN: r217091
2014-11-04 17:13:25 +00:00
Jonathan Wakely
2acb709654 * testsuite/util/testsuite_allocator.h (operator==): Fix recursion.
From-SVN: r217090
2014-11-04 16:54:49 +00:00
Bernd Schmidt
bf42f4fd59 Fix up mode confusion in combine_simplify_rtx.
The surrounding code was already fixed back when BImode was added.

	* combine.c (combine_simplify_rtx): In STORE_FLAG_VALUE == -1 case,
	also verify that mode is equal to the mode of op0.

From-SVN: r217089
2014-11-04 15:25:45 +00:00
Bernd Schmidt
ed2b2162d0 Make a temporary sequence for a jump emitted only to examine its length.
* bb-reorder.c (get_uncond_jump_length): Avoid using delete_insn,
	emit into a sequence instead.

From-SVN: r217088
2014-11-04 15:25:37 +00:00
Bernd Schmidt
5cfd56a7db Fix type mismatches in intrinsic functions.
* f95-lang.c (gfc_init_builtin_functions): Use type index 2 for
	scalbn, scalbnl and scalbnf.
	* mathbuiltins.def (JN, YN): Use type index 5.

From-SVN: r217087
2014-11-04 15:25:28 +00:00
Jason Merrill
0dadf72895 g++-dg.exp (g++-dg-runtest): Change -std=c++1y to -std=c++14.
* lib/g++-dg.exp (g++-dg-runtest): Change -std=c++1y to -std=c++14.
	* lib/target-supports.exp (check_effective_target_c++14_only): Likewise.

From-SVN: r217085
2014-11-04 09:55:32 -05:00
Jan-Benedict Glaw
0caee3cadf sh.c (emit_fpu_switch): Drop unused automatic variable.
2014-11-04  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/sh/sh.c (emit_fpu_switch): Drop unused automatic variable.

From-SVN: r217082
2014-11-04 12:41:23 +00:00
Andrew Stubbs
a5fc83a151 pr60102.c: Move dg-skip-if after dg-options.
gcc/testsuite/
	* gcc.target/powerpc/pr60102.c: Move dg-skip-if after dg-options.
	* gcc.target/powerpc/swaps-p8-12.c: Skip test if there would be
	conflicting -mcpu options.
	* gcc.target/powerpc/ppc-target-2.c: Likewise.
	* gcc.target/powerpc/cell_builtin-7.c: Likewise.
	* gcc.target/powerpc/dfp-builtin-1.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-7.c: Likewise.
	* gcc.target/powerpc/p8vector-vectorize-1.c: Likewise.
	* gcc.target/powerpc/pr48053-3.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-6.c: Likewise.
	* gcc.target/powerpc/440-nmaclhw-1.c: Likewise.
	* gcc.target/powerpc/pr57744.c: Likewise.
	* gcc.target/powerpc/pr47862.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-8.c: Likewise.
	* gcc.target/powerpc/recip-1.c: Likewise.
	* gcc.target/powerpc/darwin-longlong.c: Likewise.
	* gcc.target/powerpc/bool2-p8.c: Likewise.
	* gcc.target/powerpc/mmfpgpr.c: Likewise.
	* gcc.target/powerpc/pr60203.c: Likewise.
	* gcc.target/powerpc/direct-move-vint1.c: Likewise.
	* gcc.target/powerpc/bool2-av.c: Likewise.
	* gcc.target/powerpc/pr43154.c: Likewise.
	* gcc.target/powerpc/ppc-fma-2.c: Likewise.
	* gcc.target/powerpc/swaps-p8-5.c: Likewise.
	* gcc.target/powerpc/pr59054.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-11.c: Likewise.
	* gcc.target/powerpc/440-mullhwu-1.c: Likewise.
	* gcc.target/powerpc/swaps-p8-13.c: Likewise.
	* gcc.target/powerpc/ppc-target-3.c: Likewise.
	* gcc.target/powerpc/cell_builtin-8.c: Likewise.
	* gcc.target/powerpc/dfp-builtin-2.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-2.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-8.c: Likewise.
	* gcc.target/powerpc/p8vector-vectorize-2.c: Likewise.
	* gcc.target/powerpc/p8vector-vbpermq.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-1.c: Likewise.
	* gcc.target/powerpc/bswap64-3.c: Likewise.
	* gcc.target/powerpc/bcd-1.c: Likewise.
	* gcc.target/powerpc/440-mulchwu-1.c: Likewise.
	* gcc.target/powerpc/extend-divide-1.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-7.c: Likewise.
	* gcc.target/powerpc/pr48192.c: Likewise.
	* gcc.target/powerpc/pr52775.c: Likewise.
	* gcc.target/powerpc/p8vector-int128-1.c: Likewise.
	* gcc.target/powerpc/pr58673-1.c: Likewise.
	* gcc.target/powerpc/pr53487.c: Likewise.
	* gcc.target/powerpc/440-nmaclhw-2.c: Likewise.
	* gcc.target/powerpc/recip-2.c: Likewise.
	* gcc.target/powerpc/p8vector-fp.c: Likewise.
	* gcc.target/powerpc/direct-move-vint2.c: Likewise.
	* gcc.target/powerpc/ppc-fma-3.c: Likewise.
	* gcc.target/powerpc/pr57150.c: Likewise.
	* gcc.target/powerpc/pr47251.c: Likewise.
	* gcc.target/powerpc/swaps-p8-6.c: Likewise.
	* gcc.target/powerpc/440-mullhwu-2.c: Likewise.
	* gcc.target/powerpc/bool3-p7.c: Likewise.
	* gcc.target/powerpc/cell_builtin-1.c: Likewise.
	* gcc.target/powerpc/swaps-p8-14.c: Likewise.
	* gcc.target/powerpc/ppc-target-4.c: Likewise.
	* gcc.target/powerpc/440-mulhhw-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-1.c: Likewise.
	* gcc.target/powerpc/440-machhw-1.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-3.c: Likewise.
	* gcc.target/powerpc/vsx-mass-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-9.c: Likewise.
	* gcc.target/powerpc/p8vector-vectorize-3.c: Likewise.
	* gcc.target/powerpc/loop_align.c: Likewise.
	* gcc.target/powerpc/lhs-1.c: Likewise.
	* gcc.target/powerpc/sd-vsx.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-2.c: Likewise.
	* gcc.target/powerpc/bcd-2.c: Likewise.
	* gcc.target/powerpc/20040121-1.c: Likewise.
	* gcc.target/powerpc/pr52457.c: Likewise.
	* gcc.target/powerpc/440-mulchwu-2.c: Likewise.
	* gcc.target/powerpc/extend-divide-2.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-8.c: Likewise.
	* gcc.target/powerpc/p8vector-int128-2.c: Likewise.
	* gcc.target/powerpc/pr58673-2.c: Likewise.
	* gcc.target/powerpc/atomic-p7.c: Likewise.
	* gcc.target/powerpc/recip-3.c: Likewise.
	* gcc.target/powerpc/440-maclhwu-1.c: Likewise.
	* gcc.target/powerpc/optimize-bswapsi-2.c: Likewise.
	* gcc.target/powerpc/popcount-1.c: Likewise.
	* gcc.target/powerpc/altivec-32.c: Likewise.
	* gcc.target/powerpc/timode_off.c: Likewise.
	* gcc.target/powerpc/p8vector-ldst.c: Likewise.
	* gcc.target/powerpc/pack01.c: Likewise.
	* gcc.target/powerpc/pr55033.c: Likewise.
	* gcc.target/powerpc/ppc-fma-4.c: Likewise.
	* gcc.target/powerpc/swaps-p8-7.c: Likewise.
	* gcc.target/powerpc/ppu-intrinsics.c: Likewise.
	* gcc.target/powerpc/440-macchwu-1.c: Likewise.
	* gcc.target/powerpc/440-mulhhwu-1.c: Likewise.
	* gcc.target/powerpc/440-mulchw-1.c: Likewise.
	* gcc.target/powerpc/bool3-p8.c: Likewise.
	* gcc.target/powerpc/cell_builtin-2.c: Likewise.
	* gcc.target/powerpc/swaps-p8-15.c: Likewise.
	* gcc.target/powerpc/440-macchw-1.c: Likewise.
	* gcc.target/powerpc/440-mulhhw-2.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-2.c: Likewise.
	* gcc.target/powerpc/440-machhw-2.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-4.c: Likewise.
	* gcc.target/powerpc/pr46728-16.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-1.c: Likewise.
	* gcc.target/powerpc/bool3-av.c: Likewise.
	* gcc.target/powerpc/p8vector-vectorize-4.c: Likewise.
	* gcc.target/powerpc/ppc-pow.c: Likewise.
	* gcc.target/powerpc/lhs-2.c: Likewise.
	* gcc.target/powerpc/pr39902-2.c: Likewise.
	* gcc.target/powerpc/20041111-1.c: Likewise.
	* gcc.target/powerpc/builtins-1.c: Likewise.
	* gcc.target/powerpc/bcd-3.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-3.c: Likewise.
	* gcc.target/powerpc/pr57949-1.c: Likewise.
	* gcc.target/powerpc/atomic-p8.c: Likewise.
	* gcc.target/powerpc/sd-pwr6.c: Likewise.
	* gcc.target/powerpc/recip-4.c: Likewise.
	* gcc.target/powerpc/440-maclhwu-2.c: Likewise.
	* gcc.target/powerpc/warn-2.c: Likewise.
	* gcc.target/powerpc/parity-1.c: Likewise.
	* gcc.target/powerpc/popcount-2.c: Likewise.
	* gcc.target/powerpc/crypto-builtin-1.c: Likewise.
	* gcc.target/powerpc/ppc-fma-5.c: Likewise.
	* gcc.target/powerpc/swaps-p8-8.c: Likewise.
	* gcc.target/powerpc/pr42747.c: Likewise.
	* gcc.target/powerpc/440-macchwu-2.c: Likewise.
	* gcc.target/powerpc/440-mulhhwu-2.c: Likewise.
	* gcc.target/powerpc/dfp-dd-2.c: Likewise.
	* gcc.target/powerpc/direct-move-float1.c: Likewise.
	* gcc.target/powerpc/440-mulchw-2.c: Likewise.
	* gcc.target/powerpc/cell_builtin-3.c: Likewise.
	* gcc.target/powerpc/swaps-p8-16.c: Likewise.
	* gcc.target/powerpc/440-macchw-2.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-3.c: Likewise.
	* gcc.target/powerpc/dfp-td-2.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-5.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-2.c: Likewise.
	* gcc.target/powerpc/p8vector-vectorize-5.c: Likewise.
	* gcc.target/powerpc/lhs-3.c: Likewise.
	* gcc.target/powerpc/440-nmachhw-1.c: Likewise.
	* gcc.target/powerpc/builtins-2.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-4.c: Likewise.
	* gcc.target/powerpc/pr52199.c: Likewise.
	* gcc.target/powerpc/440-machhwu-1.c: Likewise.
	* gcc.target/powerpc/pr57949-2.c: Likewise.
	* gcc.target/powerpc/recip-5.c: Likewise.
	* gcc.target/powerpc/popcount-3.c: Likewise.
	* gcc.target/powerpc/vsx-vector-1.c: Likewise.
	* gcc.target/powerpc/swaps-p8-1.c: Likewise.
	* gcc.target/powerpc/optimize-bswapdi-2.c: Likewise.
	* gcc.target/powerpc/ppc-fma-6.c: Likewise.
	* gcc.target/powerpc/vsx-extract-1.c: Likewise.
	* gcc.target/powerpc/pr48226.c: Likewise.
	* gcc.target/powerpc/swaps-p8-9.c: Likewise.
	* gcc.target/powerpc/pr47755-2.c: Likewise.
	* gcc.target/powerpc/direct-move-float2.c: Likewise.
	* gcc.target/powerpc/cell_builtin-4.c: Likewise.
	* gcc.target/powerpc/direct-move-double1.c: Likewise.
	* gcc.target/powerpc/swaps-p8-17.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-4.c: Likewise.
	* gcc.target/powerpc/dfp-td-3.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-6.c: Likewise.
	* gcc.target/powerpc/440-nmacchw-1.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-3.c: Likewise.
	* gcc.target/powerpc/440-nmachhw-2.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-5.c: Likewise.
	* gcc.target/powerpc/bool2-p5.c: Likewise.
	* gcc.target/powerpc/440-machhwu-2.c: Likewise.
	* gcc.target/powerpc/fusion.c: Likewise.
	* gcc.target/powerpc/recip-6.c: Likewise.
	* gcc.target/powerpc/altivec-cell-6.c: Likewise.
	* gcc.target/powerpc/vsx-vector-2.c: Likewise.
	* gcc.target/powerpc/swaps-p8-2.c: Likewise.
	* gcc.target/powerpc/optimize-bswapdi-3.c: Likewise.
	* gcc.target/powerpc/ppc-fma-7.c: Likewise.
	* gcc.target/powerpc/vsx-extract-2.c: Likewise.
	* gcc.target/powerpc/direct-move-long1.c: Likewise.
	* gcc.target/powerpc/dfp-dd.c: Likewise.
	* gcc.target/powerpc/swaps-p8-10.c: Likewise.
	* gcc.target/powerpc/cell_builtin-5.c: Likewise.
	* gcc.target/powerpc/direct-move-double2.c: Likewise.
	* gcc.target/powerpc/440-mullhw-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-5.c: Likewise.
	* gcc.target/powerpc/440-maclhw-1.c: Likewise.
	* gcc.target/powerpc/dfp-td.c: Likewise.
	* gcc.target/powerpc/p8vector-builtin-7.c: Likewise.
	* gcc.target/powerpc/pr48053-1.c: Likewise.
	* gcc.target/powerpc/440-nmacchw-2.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-4.c: Likewise.
	* gcc.target/powerpc/pr60676.c: Likewise.
	* gcc.target/powerpc/pr48258-1.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-6.c: Likewise.
	* gcc.target/powerpc/pr48857.c: Likewise.
	* gcc.target/powerpc/quad-atomic.c: Likewise.
	* gcc.target/powerpc/altivec-cell-7.c: Likewise.
	* gcc.target/powerpc/atomic_load_store-p8.c: Likewise.
	* gcc.target/powerpc/vsx-vector-3.c: Likewise.
	* gcc.target/powerpc/swaps-p8-3.c: Likewise.
	* gcc.target/powerpc/pr56605.c: Likewise.
	* gcc.target/powerpc/vsx-extract-3.c: Likewise.
	* gcc.target/powerpc/pr53199.c: Likewise.
	* gcc.target/powerpc/direct-move-long2.c: Likewise.
	* gcc.target/powerpc/swaps-p8-11.c: Likewise.
	* gcc.target/powerpc/vsx-float0.c: Likewise.
	* gcc.target/powerpc/ppc-target-1.c: Likewise.
	* gcc.target/powerpc/altivec-20.c: Likewise.
	* gcc.target/powerpc/cell_builtin-6.c: Likewise.
	* gcc.target/powerpc/440-mullhw-2.c: Likewise.
	* gcc.target/powerpc/darwin-ehreturn-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-6.c: Likewise.
	* gcc.target/powerpc/440-maclhw-2.c: Likewise.
	* gcc.target/powerpc/440-dlmzb-strlen-1.c: Likewise.
	* gcc.target/powerpc/pr60137.c: Likewise.
	* gcc.target/powerpc/bswap64-1.c: Likewise.
	* gcc.target/powerpc/pr48053-2.c: Likewise.
	* gcc.target/powerpc/vsx-builtin-5.c: Likewise.
	* gcc.target/powerpc/pr48258-2.c: Likewise.
	* gcc.target/powerpc/vsx-vectorize-7.c: Likewise.
	* gcc.target/powerpc/vsx-sfminmax.c: Likewise.
	* gcc.target/powerpc/bool2-p7.c: Likewise.
	* gcc.target/powerpc/ppc-round.c: Likewise.
	* gcc.target/powerpc/altivec-cell-8.c: Likewise.
	* gcc.target/powerpc/vsx-vector-4.c: Likewise.
	* gcc.target/powerpc/ppc-fma-1.c: Likewise.
	* gcc.target/powerpc/swaps-p8-4.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-10.c: Likewise.
	* gcc.target/powerpc/pr47755.c: Likewise.

From-SVN: r217081
2014-11-04 12:09:50 +00:00
Alan Lawrence
f5dcbee165 [ARM] Migrate to new reduc_[us](min|max)_scal_optab
config/arm/neon.md (reduc_smin_<mode> *2): Rename to...
	(reduc_smin_scal_<mode> *2): ...this; extract scalar result.
	(reduc_smax_<mode> *2): Rename to...
	(reduc_smax_scal_<mode> *2): ...this; extract scalar result.
	(reduc_umin_<mode> *2): Rename to...
	(reduc_umin_scal_<mode> *2): ...this; extract scalar result.
	(reduc_umax_<mode> *2): Rename to...
	(reduc_umax_scal_<mode> *2): ...this; extract scalar result.

From-SVN: r217080
2014-11-04 12:09:38 +00:00
Alan Lawrence
89edc98667 [ARM] Migrate to new reduc_plus_scal_optab
config/arm/neon.md (reduc_plus_*): Rename to...
	(reduc_plus_scal_*): ...this; reduce to temp and extract scalar result.

From-SVN: r217079
2014-11-04 12:05:52 +00:00
Michael Collison
95d47b10be [AArch64] Fix predicate and constraint mismatch in logical atomic operations
2014-11-04  Michael Collison <michael.collison@linaro.org>

	* config/aarch64/iterators.md (lconst_atomic): New mode attribute
	to support constraints for CONST_INT in atomic operations.
	* config/aarch64/atomics.md
	(atomic_<atomic_optab><mode>): Use lconst_atomic constraint.
	(atomic_nand<mode>): Likewise.
	(atomic_fetch_<atomic_optab><mode>): Likewise.
	(atomic_fetch_nand<mode>): Likewise.
	(atomic_<atomic_optab>_fetch<mode>): Likewise.
	(atomic_nand_fetch<mode>): Likewise.

From-SVN: r217076
2014-11-04 12:23:10 +01:00
Ramana Radhakrishnan
5d1f63255b Fix typo in definition of __ARM_FEATURE_IDIV
From-SVN: r217073
2014-11-04 09:45:22 +00:00
Ramana Radhakrishnan
06c0c6fa0c Fix typo in definition of __ARM_FEATURE_IDIV
From-SVN: r217072
2014-11-04 09:45:06 +00:00
Marek Polacek
74e3d997b3 ubsan.c (instrument_object_size): Optimize [x & CST] array accesses.
* ubsan.c (instrument_object_size): Optimize [x & CST] array accesses.
testsuite/
	* c-c++-common/ubsan/object-size-10.c: New test.

From-SVN: r217071
2014-11-04 09:30:47 +00:00
Jan-Benedict Glaw
107bdb31ee rx.c (rx_handle_func_attribute): Mark unused argument.
2014-11-03  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/rx/rx.c (rx_handle_func_attribute): Mark unused argument.

From-SVN: r217070
2014-11-04 09:22:51 +00:00
Jonathan Wakely
335a3ed6a1 numeric.h: Do not use default arguments in function template redeclarations (definitions).
* include/parallel/numeric.h: Do not use default arguments in function
	template redeclarations (definitions).

From-SVN: r217069
2014-11-04 03:41:16 +00:00
Jonathan Wakely
d3cf41899e Do not assume allocator is assignable.
* include/bits/stl_deque.h (_Deque_base(_Deque_base&&)): Copy
	allocator instead of moving.
	* testsuite/23_containers/deque/allocator/move-2.cc: New.

From-SVN: r217068
2014-11-04 03:41:12 +00:00
Jonathan Wakely
565115eaaf Make reference_wrapper trivially copyable.
* include/std/functional (reference_wrapper): Define copy constructor
	and copy assignment as defaulted.
	* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error.
	* testsuite/20_util/reference_wrapper/requirements.cc: New.

From-SVN: r217067
2014-11-04 02:49:33 +00:00
Jonathan Wakely
ac6f071ad9 Use ctype_base::blank in regex_traits.
* include/bits/regex.h (regex_traits::_RegexMask): Remove _S_blank and
	adjust _S_valid_mask.
	* include/bits/regex.tcc (regex_traits::lookup_classname): Use
	ctype_base::blank.

From-SVN: r217066
2014-11-04 02:49:30 +00:00
Jonathan Wakely
9bcb72e0b0 * include/std/functional (_Bind_simple): Simplify construction.
From-SVN: r217065
2014-11-04 02:49:27 +00:00
Jonathan Wakely
8a57bed1d6 Use aliases for type traits in C++14 mode.
* include/bits/unique_ptr.h (make_unique): Use alias for trait.
	* include/experimental/optional (__constexpr_addressof): Likewise.
	(_Optional_base, optional, make_optional): Likewise.

From-SVN: r217064
2014-11-04 02:49:20 +00:00
Zhenqiang Chen
fc628a8153 revert: ifcvt.c (noce_emit_cmove, [...]): Allow CC mode if HAVE_cbranchcc4.
2014-11-04  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	Revert:
	2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>
	* ifcvt.c (noce_emit_cmove, noce_get_alt_condition, noce_get_condition):
	Allow CC mode if HAVE_cbranchcc4.

From-SVN: r217062
2014-11-04 02:21:51 +00:00
GCC Administrator
b86fa3ee6d Daily bump.
From-SVN: r217061
2014-11-04 00:16:27 +00:00
Dominik Vogt
57ab091577 godump.c (go_format_type): Rewrite RECORD_TYPE nad UNION_TYPE support with -fdump-go-spec.
gcc/:
	* godump.c (go_format_type): Rewrite RECORD_TYPE nad UNION_TYPE support
	with -fdump-go-spec.  Anonymous substructures are now flattened and
	replaced by their fields (record) or the first named, non-bitfield
	field (union).
gcc/testsuite/:
	* build-go/gcc/testsuite/gcc/godump-1.out: Update godump tests.

From-SVN: r217058
2014-11-04 00:00:14 +00:00
Manuel López-Ibáñez
e1f0c17813 input.c (expand_location_to_spelling_point): Fix typo.
2014-11-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* input.c (expand_location_to_spelling_point): Fix typo.
	(expansion_point_location_if_in_system_header): Fix comment.

From-SVN: r217057
2014-11-03 22:57:33 +00:00
Tobias Burnus
7ba43edaea coarray_collectives_14.f90: Fix testcase.
2014-11-03  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_collectives_14.f90: Fix testcase.

From-SVN: r217053
2014-11-03 21:14:48 +01:00
Pitchumani Sivanupandi
8bc991d41a * config/avr/gen-avr-mmcu-specs.c: Remove unnecessary format specifier.
From-SVN: r217051
2014-11-03 22:03:34 +03:00
Paolo Carlini
3384321048 algo.h: Do not use default arguments in function template redeclarations (definitions).
2014-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/algo.h: Do not use default arguments in function
	template redeclarations (definitions).

From-SVN: r217050
2014-11-03 17:54:59 +00:00
Ian Lance Taylor
24606f7137 runtime: use "$GOC -dumpversion" instead of BASE-VER to discover compiler version
From-SVN: r217049
2014-11-03 16:30:51 +00:00
Richard Biener
741233cf4d tree-eh.c (operation_could_trap_helper_p): Handle conversions like ordinary operations.
2014-11-03  Richard Biener  <rguenther@suse.de>

	* tree-eh.c (operation_could_trap_helper_p): Handle conversions
	like ordinary operations.
	* gimplify.c (gimplify_conversion): Gimplify CONVERT_EXPR
	as NOP_EXPR.

From-SVN: r217048
2014-11-03 15:49:43 +00:00
Joseph Myers
2f73a6c7b4 Implement TARGET_ATOMIC_ASSIGN_EXPAND_FENV for powerpc*-*-linux* soft-float and e500.
This patch implements support for TARGET_ATOMIC_ASSIGN_EXPAND_FENV for
powerpc*-*-linux* soft-float and e500, provided GCC is configured for
glibc 2.19 or later on the target.

New functions __atomic_feholdexcept, __atomic_feclearexcept and
__atomic_feupdateenv were added (to libc) in that glibc version (for
powerpc soft-float / e500 only) in order to support this part of C11.
For soft-float, libc functions are needed because the floating-point
exception state is in TLS variables in libc that aren't directly
accessible outside of glibc.  For e500, they are also needed because
of the prctl syscalls involved in controlling trapping for exceptions
and informing the kernel when certain exception flags have been
cleared.  The actual implementation in GCC is a straightforward matter
of calling those functions.

Tested with no regressions for cross to powerpc-linux-gnu
(soft-float); the c11-atomic-exec-5.c results go from FAIL to PASS.

	* configure.ac (TARGET_GLIBC_MAJOR, TARGET_GLIBC_MINOR): Define
	macros.
	* configure, config.h.in: Regenerate.
	* config/rs6000/linux.h [TARGET_GLIBC_MAJOR > 2 ||
	(TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 19)]
	(RS6000_GLIBC_ATOMIC_FENV): New macro.
	* config/rs6000/linux64.h [TARGET_GLIBC_MAJOR > 2 ||
	(TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 19)]
	(RS6000_GLIBC_ATOMIC_FENV): New macro.
	* config/rs6000/rs6000.c (atomic_hold_decl, atomic_clear_decl)
	(atomic_update_decl): New static variables.
	(rs6000_atomic_assign_expand_fenv) [RS6000_GLIBC_ATOMIC_FENV]:
	Generate calls to __atomic_feholdexcept, __atomic_feclearexcept
	and __atomic_feupdateenv for soft-float and no-FPRs.

From-SVN: r217040
2014-11-03 13:40:50 +00:00
Richard Biener
f3582e541c match.pd: Add two abs patterns.
2014-11-03  Richard Biener  <rguenther@suse.de>

	* match.pd: Add two abs patterns.  Announce tree_expr_nonnegative_p.
	Also drop bogus FLOAT_EXPR and FIX_TRUNC_EXPR.
	* fold-const.c (fold_unary_loc): Remove them here.
	(tree_unary_nonnegative_warnv_p): Use CASE_CONVERT.
	* gimple-fold.c (fold_gimple_assign): Remove now obsolete
	GIMPLE_UNARY_RHS case.
	(gimple_fold_stmt_to_constant_1): Likewise.
	(replace_stmt_with_simplification): Fix inverted comparison.

From-SVN: r217039
2014-11-03 12:59:47 +00:00
Marek Polacek
9929321af7 re PR c/52769 (Unspecified designated initializer might not set to zero in some cases)
PR c/52769
	* gcc.dg/pr52769.c: New test.

From-SVN: r217036
2014-11-03 12:35:35 +00:00
Paolo Carlini
3e449f8061 re PR c++/57820 ([DR 253] NSDMI and const objects)
2014-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57820
	* g++.dg/cpp0x/constexpr-ctor16.C: New.
	* g++.dg/cpp0x/constexpr-ctor17.C: Likewise.

From-SVN: r217035
2014-11-03 10:49:05 +00:00
Marc Glisse
956623c137 re PR tree-optimization/60770 (disappearing clobbers)
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/60770
gcc/
	* tree-into-ssa.c (rewrite_update_stmt): Return whether the
	statement should be removed.
	(maybe_register_def): Likewise. Replace clobbers with default
	definitions.
	(rewrite_dom_walker::before_dom_children): Remove statement if
	rewrite_update_stmt says so.
	* tree-ssa-live.c: Include tree-ssa.h.
	(set_var_live_on_entry): Do not mark undefined variables as live.
	(verify_live_on_entry): Do not check undefined variables.
	* tree-ssa.h (ssa_undefined_value_p): New parameter for the case
	of partially undefined variables.
	* tree-ssa.c (ssa_undefined_value_p): Likewise.
	(execute_update_addresses_taken): Do not drop clobbers.

gcc/testsuite/
	* gcc.dg/tree-ssa/pr60770-1.c: New file.

From-SVN: r217034
2014-11-03 10:47:04 +00:00
Marc Glisse
b25b35c4ca re PR tree-optimization/63666 (FAIL: gcc.dg/vect/pr45752.c (internal compiler error))
2014-11-03  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/63666
	* fold-const.c: Include "optabs.h".
	(fold_ternary_loc) <VEC_PERM_EXPR>: Avoid canonicalizing a
	can_vec_perm_p permutation to one that is not.

From-SVN: r217033
2014-11-03 10:36:35 +00:00
Jan Beulich
7629320a53 x86: extend vect-args testcase to AVX flavors
gcc/testsuite:
2014-11-03  Jan Beulich  <jbeulich@suse.com>

	* gcc.target/i386/i386.exp: Extend option set to test
	vect-args.c with to include -mavx, -mavx2, and -mavx512f.
	* gcc.target/i386/vect-args.c: Add AVX* modes and tests.

From-SVN: r217032
2014-11-03 09:18:51 +00:00
Uros Bizjak
b1c94de07f 20010129-1.c: Compile with -mtune=i686 for ia32 targets only.
* gcc.c-torture/execute/20010129-1.c: Compile with -mtune=i686
	for ia32 targets only.
	* g++.dg/ext/attrib42.C: Compile for ia32 targets only.
	* g++.dg/tree-ssa/pr29902.C: Ditto.
	* g++.dg/cpp0x/gen-attrs-42.C: Ditto.

From-SVN: r217030
2014-11-03 09:30:21 +01:00
Zhenqiang Chen
b5a4533b36 ifcvt.c (noce_try_store_flag_mask): Check rtx cost.
ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* ifcvt.c (noce_try_store_flag_mask): Check rtx cost.

testsuite/ChangeLog:
2014-11-03  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* gcc.target/arm/ifcvt-size-check.c: New test.

From-SVN: r217029
2014-11-03 06:36:11 +00:00