Commit Graph

115134 Commits

Author SHA1 Message Date
Eric Botcazou
aa47290b04 re PR lto/52178 (Ada bootstrap failure in LTO mode)
PR lto/52178
	* gimple.c (iterative_hash_gimple_type): Use RECORD_OR_UNION_TYPE_P.
	(iterative_hash_canonical_type): Likewise.
	* tree-ssa-pre.c (fini_pre): Clean up the CFG only after purging all
	the dead edges.

From-SVN: r184246
2012-02-15 00:10:00 +00:00
Jonathan Wakely
e73bea1ceb * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
From-SVN: r184245
2012-02-14 23:55:18 +00:00
Bernd Schmidt
b75f962c90 haifa-sched.c (prune_ready_list): Ensure that if there is a sched-group insn...
* haifa-sched.c (prune_ready_list): Ensure that if there is a
	sched-group insn, it either remains alone or the entire list is
	pruned.

From-SVN: r184238
2012-02-14 23:26:47 +00:00
Hans-Peter Nilsson
5cd3514cdd target-supports.exp (check_effective_target_fgnu_tm): New proc.
* lib/target-supports.exp (check_effective_target_fgnu_tm): New
	proc.
	* gfortran.dg/trans-mem-skel.f90: Gate test on effective_target
	fgnu_tm. 
	* gcc.dg/lto/trans-mem-1_0.c, gcc.dg/lto/trans-mem-2_0.c,
	gcc.dg/lto/trans-mem-3_0.c, gcc.dg/lto/trans-mem-4_0.c: Ditto.
	* gcc.dg/tm/tm.exp: Gate the whole of gcc.dg/tm on
	effective_target fgnu_tm.
	* g++.dg/tm/tm.exp: Ditto for g++.dg/tm.

From-SVN: r184237
2012-02-14 22:06:56 +00:00
Jonathan Wakely
169264b372 install.texi (Prerequisites): Fix grammar.
* doc/install.texi (Prerequisites): Fix grammar.
	(Configuration): Likewise.

From-SVN: r184236
2012-02-14 20:55:35 +00:00
Ian Lance Taylor
35ea42ebad re PR go/48407 (libgo/configure --without-libffi doesn't work)
PR go/48407
runtime: Permit building libgo without libffi.

From-SVN: r184234
2012-02-14 20:47:35 +00:00
Tom Tromey
d25b1e3a80 cxx11.cc (main): Add new tests.
* testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
	tests.
	* python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
	Rewrite.
	(Tr1HashtableIterator.update): Remove.
	(Tr1HashtableIterator.next): Rewrite.

From-SVN: r184233
2012-02-14 20:38:39 +00:00
Jonathan Wakely
7a07ae5284 install.texi (Prerequisites): Suggest building GMP...
* doc/install.texi (Prerequisites): Suggest building GMP, MPFR and
	MPC as part of GCC before describing configuring with --with-gmp etc.
	(Installing GCC: Configuration): --with-gmp etc. aren't needed if
	sources are present.

From-SVN: r184232
2012-02-14 20:34:41 +00:00
Jakub Jelinek
61c8513078 re PR c++/52247 (ICE with asm goto)
PR c++/52247
	* pt.c (tsubst_copy_asm_operands): For LABEL_DECL values call
	lookup_label on label's name and set TREE_USED.

	* g++.dg/template/asmgoto1.C: New test.

From-SVN: r184229
2012-02-14 20:51:01 +01:00
Richard Henderson
72824d5e40 * config/x86/target.h (GTM_longjmp): Correct the .cfi corrections.
From-SVN: r184227
2012-02-14 11:46:46 -08:00
Jakub Jelinek
a85ce59dda re PR debug/51950 (fdebug-types-section regression for member pointers)
PR debug/51950
	* dwarf2out.c (clone_tree_hash): New function.
	(copy_decls_walk): Use it instead of clone_tree.

From-SVN: r184224
2012-02-14 20:40:10 +01:00
Ian Lance Taylor
317ea7c0f4 re PR go/48410 (weird installation dir)
PR go/48410
libgo: Don't put .gox files in version-specific directory.

From-SVN: r184223
2012-02-14 19:40:09 +00:00
Ian Lance Taylor
2b120fe98e syscall: Change Dup2 to only return an error.
From-SVN: r184222
2012-02-14 19:36:31 +00:00
Ian Lance Taylor
4b386d4d6a re PR go/48411 (Bogusly canonicalized $target-gccgo)
PR go/48411
	* Make-lang.in (gccgo-cross$(exeext)): New target.
	(go.all.cross): Depend on gccgo-cross$(exeext) instead of
	gccgo$(exeext).
	(go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
	gccgo-cross$(exeext) does not exist.

From-SVN: r184221
2012-02-14 18:58:48 +00:00
Uros Bizjak
1f319dbad6 target.h (GTM_longjmp): Correct .cfi directives.
* config/x86/target.h (GTM_longjmp): Correct .cfi directives.

From-SVN: r184220
2012-02-14 19:38:38 +01:00
Ian Lance Taylor
ebe8daca1e re PR go/48501 (64bit-out.go, select5-out.go, tmp.go compilation times out)
PR go/48501
	* go.test/go-test.exp (go-gc-tests): Disable optimizations when
	compiling generated file for 64bit and index tests.

From-SVN: r184219
2012-02-14 18:04:28 +00:00
Ian Lance Taylor
95787705db re PR go/48501 (64bit-out.go, select5-out.go, tmp.go compilation times out)
PR go/48501
runtime: Fix identity hash function for big-endian systems.

From-SVN: r184218
2012-02-14 18:02:09 +00:00
Uros Bizjak
7f0dbd0aee lower-subreg-1.c: Fix and simplify target selector.
* gcc.dg/lower-subreg-1.c: Fix and simplify target selector.

From-SVN: r184217
2012-02-14 16:50:32 +01:00
Richard Guenther
8085c58661 re PR middle-end/52244 (wrong code for function returning union between int and _Bool at O > 2, with no-early-inlining)
2012-02-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52244
	PR tree-optimization/51528
	* tree-sra.c (analyze_access_subtree): Only create INTEGER_TYPE
	replacements for integral types.

	* gcc.dg/torture/pr52244.c: New testcase.

From-SVN: r184214
2012-02-14 15:33:56 +00:00
Torvald Riegel
31772c9507 libitm: Add multi-lock, write-through TM method.
libitm/
	* libitm_i.h (GTM::gtm_rwlog_entry): New.
	(GTM::gtm_thread): Add read and write logs.
	(GTM::dispatch_ml_wt): Declare.
	* retry.cc (parse_default_method): Support ml_wt.
	* method-ml.cc: New file.
	* Makefile.am: Add method-ml.cc.
	* Makefile.in: Regenerate.

From-SVN: r184212
2012-02-14 13:14:27 +00:00
Torvald Riegel
5b9cf5d2bf libitm: Improve method reinit and choice.
libitm/
	* dispatch.h (GTM::abi_dispatch::supports): New.
	(GTM::method_group::reinit): New.
	* retry.cc (GTM::gtm_thread::decide_retry_strategy): Use reinit().
	(GTM::gtm_thread::number_of_threads_changed): Check that the method
	supports the current situation.

From-SVN: r184211
2012-02-14 13:14:12 +00:00
Torvald Riegel
7d33bcb738 libitm: Add xcalloc.
libitm/
	* util.cc (GTM::xcalloc): New.
	* common.h (GTM::xcalloc): Declare.

From-SVN: r184210
2012-02-14 13:13:56 +00:00
Walter Lee
dd552284fd Add ports for TILE-Gx and TILEPro.
.
	* MAINTAINERS (tilegx port): Add myself.
	(tilepro port): Add myself.

contrib
	* config-list.mk (LIST): Add tilegx-linux-gnu and
	tilepro-linux-gnu.
	* gcc_update (gcc/config/tilegx/mul-tables.c): New dependencies.
	(gcc/config/tilepro/mul-tables.c): New dependencies.

gcc
	* config.gcc: Handle tilegx and tilepro.
	* configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
	tilegx and tilepro.
	Add HAVE_AS_TLS check for tilegx and tilepro.
	* configure: Regenerate.
	* doc/contrib.texi: Add Mat Hostetter and self.
	* doc/extend.texi (TILE-Gx Built-in Functions): New node.
	Document instruction intrinsics and network accessing intrinsics.
	(TILEPro Built-in Functions): New node.	 Document instruction
	intrinsics and network accessing intrinsics.
	* doc/install.texi (Specific, tilegx-*-linux*): Document it.
	(Specific, tilepro-*-linux*): Likewise.
	* doc/invoke.texi (TILE-Gx Options): New section.
	(TILEPro Options): New section.
	* doc/md.texi (TILE-Gx): New section.
	(TILEPro): New section.
	* common/config/tilegx: New directory for tilegx.
	* common/config/tilepro: New directory for tilepro.
	* config/tilegx: New directory for tilegx.
	* config/tilepro: New directory for tilepro.

gcc/testsuite
	* g++.dg/other/PR23205.C: Disable test on tile.
	* g++.dg/other/pr23205-2.C: Disable test on tile.
	* gcc.dg/20020312-2.c: Add a condition for __tile__.
	* gcc.dg/20040813-1.c: Disable test on tile.
	* gcc.dg/lower-subreg-1.c: Disable test on tilegx.
	* gcc.misc-tests/linkage.exp: Handle tilegx.

libcpp
	* configure.ac: Require 64-bit hwint for tilegx and tilepro.
	* configure: Regenerate.

libgcc
	* config.host: Handle tilegx and tilepro.
	* config/tilegx: New directory for tilegx.
	* config/tilepro: New directory for tilepro.

libgomp
	* configure.tgt: Handle tilegx and tilepro.
	* config/linux/tile: New directory for tilegx and tilepro.

Added:
     trunk/gcc/common/config/tilegx/tilegx-common.c
     trunk/gcc/common/config/tilepro/tilepro-common.c
     trunk/gcc/config/tilegx/constraints.md
     trunk/gcc/config/tilegx/linux.h
     trunk/gcc/config/tilegx/mul-tables.c
     trunk/gcc/config/tilegx/predicates.md
     trunk/gcc/config/tilegx/sync.md
     trunk/gcc/config/tilegx/t-tilegx
     trunk/gcc/config/tilegx/tilegx-builtins.h
     trunk/gcc/config/tilegx/tilegx-c.c
     trunk/gcc/config/tilegx/tilegx-generic.md
     trunk/gcc/config/tilegx/tilegx-modes.def
     trunk/gcc/config/tilegx/tilegx-multiply.h
     trunk/gcc/config/tilegx/tilegx-protos.h
     trunk/gcc/config/tilegx/tilegx.c
     trunk/gcc/config/tilegx/tilegx.h
     trunk/gcc/config/tilegx/tilegx.md
     trunk/gcc/config/tilegx/tilegx.opt
     trunk/gcc/config/tilepro/constraints.md
     trunk/gcc/config/tilepro/gen-mul-tables.cc
     trunk/gcc/config/tilepro/linux.h
     trunk/gcc/config/tilepro/mul-tables.c
     trunk/gcc/config/tilepro/predicates.md
     trunk/gcc/config/tilepro/t-tilepro
     trunk/gcc/config/tilepro/tilepro-builtins.h
     trunk/gcc/config/tilepro/tilepro-c.c
     trunk/gcc/config/tilepro/tilepro-generic.md
     trunk/gcc/config/tilepro/tilepro-modes.def
     trunk/gcc/config/tilepro/tilepro-multiply.h
     trunk/gcc/config/tilepro/tilepro-protos.h
     trunk/gcc/config/tilepro/tilepro.c
     trunk/gcc/config/tilepro/tilepro.h
     trunk/gcc/config/tilepro/tilepro.md
     trunk/gcc/config/tilepro/tilepro.opt
     trunk/libgcc/config/tilegx/sfp-machine.h
     trunk/libgcc/config/tilegx/sfp-machine32.h
     trunk/libgcc/config/tilegx/sfp-machine64.h
     trunk/libgcc/config/tilegx/t-crtstuff
     trunk/libgcc/config/tilegx/t-softfp
     trunk/libgcc/config/tilegx/t-tilegx
     trunk/libgcc/config/tilepro/atomic.c
     trunk/libgcc/config/tilepro/atomic.h
     trunk/libgcc/config/tilepro/linux-unwind.h
     trunk/libgcc/config/tilepro/sfp-machine.h
     trunk/libgcc/config/tilepro/softdivide.c
     trunk/libgcc/config/tilepro/softmpy.S
     trunk/libgcc/config/tilepro/t-crtstuff
     trunk/libgcc/config/tilepro/t-tilepro
     trunk/libgomp/config/linux/tile/futex.h
Modified:
     trunk/MAINTAINERS
     trunk/contrib/config-list.mk
     trunk/contrib/gcc_update
     trunk/gcc/config.gcc
     trunk/gcc/configure
     trunk/gcc/configure.ac
     trunk/gcc/doc/contrib.texi
     trunk/gcc/doc/extend.texi
     trunk/gcc/doc/install.texi
     trunk/gcc/doc/invoke.texi
     trunk/gcc/doc/md.texi
     trunk/gcc/testsuite/g++.dg/other/PR23205.C
     trunk/gcc/testsuite/g++.dg/other/pr23205-2.C
     trunk/gcc/testsuite/gcc.dg/20020312-2.c
     trunk/gcc/testsuite/gcc.dg/20040813-1.c
     trunk/gcc/testsuite/gcc.dg/lower-subreg-1.c
     trunk/gcc/testsuite/gcc.misc-tests/linkage.exp
     trunk/libcpp/configure
     trunk/libcpp/configure.ac
     trunk/libgcc/config.host
     trunk/libgomp/configure.tgt

From-SVN: r184203
2012-02-14 10:02:21 +00:00
Eric Botcazou
62513f7bed target.h (cpu_relax): Read from CC register.
* config/sparc/target.h (cpu_relax): Read from CC register.
	* config/sparc/sjlj.S (GTM_longjmp): Restore %fp atomically.

From-SVN: r184202
2012-02-14 09:22:26 +00:00
Jakub Jelinek
7daac345d1 re PR tree-optimization/52210 (vect_model_simple_cost: reading uninitialised memory)
PR tree-optimization/52210
	* tree-vect-slp.c (vect_get_and_check_slp_defs): Call
	vect_model_simple_cost with two entry vect_def_type array instead
	of an address of dt.

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

From-SVN: r184201
2012-02-14 10:16:01 +01:00
Richard Guenther
837487be7b re PR lto/52178 (Ada bootstrap failure in LTO mode)
2012-02-14  Richard Guenther  <rguenther@suse.de>

	PR lto/52178
	* tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
	Do not stream DECL_QUALIFIER.
	* tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise.
	* tree.c (free_lang_data_in_decl): Free DECL_QUALIFIER.
	(find_decls_types_r): Do not walk DECL_QUALIFIER.

From-SVN: r184200
2012-02-14 08:39:55 +00:00
Jason Merrill
f0ebe02d7f re PR c++/39055 ([DR 1443][4.4/4.5/4.6/4.7 regression] questionable default parameter of a member function accepted)
PR c++/39055
	* decl.c (local_variable_p_walkfn): Don't check DECL_ARTIFICIAL.

From-SVN: r184199
2012-02-14 03:39:51 -05:00
Uros Bizjak
d4a698d494 target.h (GTM_longjmp): Jump indirect from memory address.
* config/x86/target.h (GTM_longjmp): Jump indirect from memory address.

From-SVN: r184198
2012-02-14 08:50:38 +01:00
Walter Lee
1982a38354 Add myself to MAINTAINERS file for write after approval.
From-SVN: r184196
2012-02-14 07:11:10 +00:00
Jakub Jelinek
45f41865ff re PR c/52181 (merge_decls doesn't handle DECL_USER_ALIGN properly)
PR c/52181
	* c-decl.c (merge_decls): Copy DECL_USER_ALIGN bit from olddecl to
	newdecl.

	* decl.c (duplicate_decls): If olddecl has bigger DECL_ALIGN than
	newdecl, copy DECL_ALIGN to newdecl and or DECL_USER_ALIGN bits.

	* c-c++-common/pr52181.c: New test.

From-SVN: r184193
2012-02-14 07:15:35 +01:00
Benjamin Kosnik
1380aca7e6 43820_neg.cc: Adjust line numbers.
2012-02-13  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.

From-SVN: r184192
2012-02-14 03:48:02 +00:00
Ian Lance Taylor
4ea063cacb re PR go/50654 (Many Go tests fail on emutls targets)
PR go/50654
runtime: Reload m and g if necessary after getcontext returns.

From-SVN: r184188
2012-02-14 00:38:07 +00:00
Ian Lance Taylor
09578bcd52 net: Don't run UDP multicast tests on Alpha GNU/Linux.
From Uros Bizjak.

From-SVN: r184187
2012-02-14 00:30:12 +00:00
GCC Administrator
a6d3e197fb Daily bump.
From-SVN: r184185
2012-02-14 00:18:28 +00:00
Jakub Jelinek
9a76e83d80 re PR bootstrap/52172 (stage 3 Bootstrap comparison failure on FreeBSD ia64)
PR bootstrap/52172
	* cselib.h (cselib_subst_to_values_from_insn): New prototype.
	* cselib.c (cselib_subst_to_values_from_insn): New function.
	* sched-deps.c (add_insn_mem_dependence,
	sched_analyze_1, sched_analyze_2): Use it.

From-SVN: r184181
2012-02-14 00:31:48 +01:00
Jan Hubicka
993716bdca re PR middle-end/52214 (FAIL: g++.dg/tree-ssa/pr44706.C -std=gnu++* scan-tree-dump-not fnsplit "Splitting function")
PR middle-end/52214
	* predict.c (predict_paths_for_bb): Fix thinko in prevoius patch.

From-SVN: r184180
2012-02-13 23:29:34 +00:00
Eric Botcazou
f3f5e3c32e configure.tgt (target_cpu): Handle sparc and sparc64 & sparcv9.
* configure.tgt (target_cpu): Handle sparc and sparc64 & sparcv9.
	* config/sparc/cacheline.h: New file.
	* config/sparc/target.h: Likewise.
	* config/sparc/sjlj.S: Likewise.
	* config/linux/sparc/futex_bits.h: Likewise.

From-SVN: r184177
2012-02-13 21:51:44 +00:00
Eric Botcazou
255a9a1bb5 gcc.c (LINK_COMMAND_SPEC): Deal with -fgnu-tm.
gcc/
	* gcc.c (LINK_COMMAND_SPEC): Deal with -fgnu-tm.
	(GTM_SELF_SPECS): Define if not already defined.
	(driver_self_specs): Add GTM_SELF_SPECS.
	* config/darwin.h (LINK_COMMAND_SPEC_A): Deal with -fgnu-tm.
	(GTM_SELF_SPECS): Define.
	* config/i386/cygwin.h (GTM_SELF_SPECS): Likewise.
	* config/i386/mingw32.h (GTM_SELF_SPECS): Likewise.
libitm/
	* configure.ac (link_itm): Fix comment.
	* configure: Regenerate.
	* testsuite/lib/libitm.exp: Do not pass -litm for the link.

From-SVN: r184174
2012-02-13 21:46:38 +00:00
Richard Henderson
b2cb69647e PR libstdc++/51798 continued
PR libstdc++/51798 continued
	* include/bits/shared_ptr_base.h
	(_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
	outside compare_exchange loop.
	* include/tr1/shared_ptr.h: Same.
	* include/parallel/compatibility.h (__compare_and_swap_32): Use strong
	version of compare_exchange.
	(__compare_and_swap_64): Same.
	* include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
	* libsupc++/guard.cc (__cxa_guard_acquire): Same.

From-SVN: r184171
2012-02-13 13:30:31 -08:00
Jakub Jelinek
67b977ada8 cselib.c (expand_loc): Return sp, fp, hfp or cfa base reg right away if seen.
* cselib.c (expand_loc): Return sp, fp, hfp or cfa base reg right
	away if seen.

From-SVN: r184169
2012-02-13 21:14:25 +01:00
Jakub Jelinek
4228697645 cselib.c (dump_cselib_val): Don't assume l->setting_insn is non-NULL.
* cselib.c (dump_cselib_val): Don't assume l->setting_insn is
	non-NULL.

From-SVN: r184168
2012-02-13 21:13:49 +01:00
Jakub Jelinek
e3793c6fb9 re PR c++/52215 (__atomic_compare_exchange_n for enumeration type changes signature with -m32)
PR c++/52215
	* c-common.c (sync_resolve_params): Don't decide whether to convert
	or not based on TYPE_SIZE comparison, convert whenever arg_type
	is unsigned INTEGER_TYPE.

	* g++.dg/ext/atomic-1.C: New test.

From-SVN: r184167
2012-02-13 21:12:54 +01:00
Jakub Jelinek
9abd5ed90b re PR middle-end/52230 (OpenMP: Simple C program triggers SIGSEGV at execution)
PR middle-end/52230
	* omp-low.c (expand_omp_for): If a static schedule without
	chunk size has NULL region->cont, force fd.chunk_size to be
	integer_zero_node.

From-SVN: r184165
2012-02-13 20:57:24 +01:00
Joseph Myers
a905672b22 * de.po: Update.
From-SVN: r184161
2012-02-13 17:51:21 +00:00
Joseph Myers
f268979d76 * de.po: Update.
From-SVN: r184160
2012-02-13 16:59:30 +00:00
Joseph Myers
9282483d3a * sv.po: Update.
From-SVN: r184159
2012-02-13 16:57:35 +00:00
Andreas Krebbel
ce9b1fbd5c Fix changelog entry.
From-SVN: r184158
2012-02-13 15:46:15 +00:00
Andreas Krebbel
fecc70de1d pr51933.c: Disable for s390 31 bit.
2012-02-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.c-torture/execute/pr51933.c: Disable for s390 31 bit.

From-SVN: r184157
2012-02-13 15:44:38 +00:00
Andrew MacLeod
8ca1b3428a re PR c/52190 (question about atomic intrinsics -- test and documentation vary -- please clarify)
2012-02-13  Andrew MacLeod  <amacleod@redhat.com>

	PR c/52190
	* doc/extend.texi : Fix another __atomic_compare_exchange typo.

From-SVN: r184156
2012-02-13 15:37:33 +00:00
Kai Tietz
d86c2d9495 re PR libffi/52221 ([libffi] r183675,r184021 needs to be fixed.)
PR libffi/52221
        * src/x86/ffi.c (ffi_prep_raw_closure_loc): Add thiscall
        support for X86_WIN32.
        (FFI_INIT_TRAMPOLINE_THISCALL): Fix displacement.

From-SVN: r184155
2012-02-13 16:18:14 +01:00