Jakub Jelinek [Thu, 1 Dec 2011 09:36:59 +0000 (10:36 +0100)]
re PR bootstrap/51201 (build error without Ada compiler installed)
PR bootstrap/51201
* gcc-interface/Make-lang.in: Initialize RTS_DIR with = instead of :=.
From-SVN: r181877
Paolo Carlini [Thu, 1 Dec 2011 09:34:43 +0000 (09:34 +0000)]
re PR c++/51367 (Broken diagnostic: 'pointer_type' not supported by dump_expr)
/cp
2011-12-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51367
* pt.c (unify_inconsistency): Use either %qT or %qE depending on
whether parm is a type or non-type parameter.
/cp
2011-12-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51367
* g++.dg/template/error47.C: New.
From-SVN: r181876
Janne Blomqvist [Thu, 1 Dec 2011 08:55:32 +0000 (10:55 +0200)]
Don't call stat before opening a file.
2011-12-01 Janne Blomqvist <jb@gcc.gnu.org>
* misc.c (gfc_open_file): Don't call stat.
From-SVN: r181875
Ian Lance Taylor [Thu, 1 Dec 2011 08:06:16 +0000 (08:06 +0000)]
compiler/runtime: Copy channel implementation from master library.
From-SVN: r181874
Jason Merrill [Thu, 1 Dec 2011 05:40:54 +0000 (00:40 -0500)]
re PR c++/51009 (ICE in verify_gimple_stmt)
PR c++/51009
* name-lookup.c (push_to_top_level): Set stmts_are_full_exprs_p.
* decl.c (build_aggr_init_full_exprs): Just assert that it's true.
(check_initializer): Here too.
From-SVN: r181872
John David Anglin [Thu, 1 Dec 2011 02:37:06 +0000 (02:37 +0000)]
re PR other/51272 (ld: Unsatisfied symbol "_ITM_registerTMCloneTable" in file /test/gnu/gcc/objdir/)
PR other/51272
* config/pa/stublib.c (_ITM_registerTMCloneTable): New stub.
(_ITM_deregisterTMCloneTable): Likewise.
(__register_frame_info): Fix unused warning.
(__deregister_frame_info, __cxa_finalize, _Jv_RegisterClasses,
pthread_default_stacksize_np): Likewise.
* config/pa/t-stublib (LIBGCCSTUB_OBJS): Add new objects and rules.
From-SVN: r181870
Benjamin Kosnik [Thu, 1 Dec 2011 02:20:32 +0000 (02:20 +0000)]
acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove size-specific macros.
2011-11-30 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove
size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1,
_GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4,
_GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to
indicate use of C++11 atomic builtins.
* config.h.in: Regenerate.
* configure: Regenerate.
* include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x.
* libsupc++/Makefile.in: Regenerate.
* include/bits/atomic_base.h: Move lock-free property macros...
* libsupc++/atomic_lockfree_defines.h: ...here.
* include/std/future: Use C++11 macros.
* libsupc++/eh_ptr.cc: Same.
* libsupc++/eh_throw.cc: Same.
* libsupc++/exception: Same.
* libsupc++/exception_ptr.h: Same.
* libsupc++/guard.cc: Same.
* libsupc++/nested_exception.cc: Same.
* libsupc++/nested_exception.h: Same.
* src/future.cc: Same.
* include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS.
* doc/doxygen/user.cfg.in
* doc/xml/manual/concurrency_extensions.xml
* testsuite/18_support/exception_ptr/lifespan.cc
* testsuite/lib/libstdc++.exp
From-SVN: r181869
John David Anglin [Thu, 1 Dec 2011 02:08:10 +0000 (02:08 +0000)]
re PR middle-end/50283 (FAIL: g++.dg/eh/simd-1.C execution test)
PR middle-end/50283
* config/pa/pa.md (in_branch_delay): Disallow frame related insns.
(in_nullified_branch_delay): Likewise.
(in_call_delay): Likewise.
From-SVN: r181868
GCC Administrator [Thu, 1 Dec 2011 00:18:55 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181867
Richard Henderson [Wed, 30 Nov 2011 22:29:33 +0000 (14:29 -0800)]
Swap the action and jmpbuf arguments to GTM_longjmp
On several ABIs, the first register parameter is the same as
the return value register. Moving the action parameter first
avoids the need for register shuffling on these targets.
* libitm_i.h (GTM_longjmp): Swap first and second arguments.
* beginend.c (_ITM_abortTransaction): Update to match.
(GTM::gtm_thread::restart): Likewise.
* config/alpha/sjlj.S (GTM_longjmp): Likewise.
* config/x86/sjlj.S (GTM_longjmp): Likewise.
From-SVN: r181863
Richard Henderson [Wed, 30 Nov 2011 22:19:02 +0000 (14:19 -0800)]
predict.c (expr_expected_value_1): Assume compare-and-swap builtin boolean return is true.
* predict.c (expr_expected_value_1): Assume compare-and-swap builtin
boolean return is true.
From-SVN: r181862
Jakub Jelinek [Wed, 30 Nov 2011 22:02:14 +0000 (23:02 +0100)]
re PR rtl-optimization/51044 (gfortran.dg/alloc_comp_class_2.f90 gfortran.dg/widechar_intrinsics_10.f90 -O1 ICE)
PR rtl-optimization/51044
* dse.c (emit_inc_dec_insn_before): Ensure new_insn is an instruction
rather than just insn body.
From-SVN: r181861
Jakub Jelinek [Wed, 30 Nov 2011 22:00:28 +0000 (23:00 +0100)]
re PR target/50725 (-O3 -mstackrealign -march=core2 generates invalid prologue code in callee procedure)
PR target/50725
* function.c (thread_prologue_and_epilogue_insns): If
stack_realign_drap, add drap_reg to SET_UP_BY_PROLOGUE
regset.
* gcc.target/i386/pr50725.c: New test.
From-SVN: r181860
Jakub Jelinek [Wed, 30 Nov 2011 21:59:04 +0000 (22:59 +0100)]
re PR middle-end/51089 (internal compiler error: verify_flow_info failed)
PR middle-end/51089
* tree-eh.c (cleanup_empty_eh_merge_phis): Add check to
avoid creating duplicate edges here.
(cleanup_empty_eh_unsplit): And remove it in the caller.
* gfortran.dg/gomp/pr51089.f90: New test.
From-SVN: r181859
Andrew Pinski [Wed, 30 Nov 2011 19:55:36 +0000 (19:55 +0000)]
re PR c/51321 (__builtin_types_compatible_p (any_type_t[1][], any_other_type_t) crashes GCC)
2011-11-30 Andrew Pinski <apinski@cavium.com>
PR c/51321
* c-parser.c (c_parser_postfix_expression): Check groktypename results
before looking at the main variant.
2011-11-30 Andrew Pinski <apinski@cavium.com>
* gcc.dg/pr51321.c: New testcase.
From-SVN: r181857
Jakub Jelinek [Wed, 30 Nov 2011 18:58:33 +0000 (19:58 +0100)]
re PR rtl-optimization/48721 (ICE: verify_flow_info failed: missing barrier after block 6 with -foptimize-sibling-calls -fsched2-use-superblocks)
PR rtl-optimization/48721
* sched-deps.c (sched_analyze_insn): For SIBLING_CALL_P set
reg_pending_barrier to TRUE_BARRIER.
* gcc.target/i386/pr48721.c: New test.
From-SVN: r181856
Jakub Jelinek [Wed, 30 Nov 2011 18:53:46 +0000 (19:53 +0100)]
re PR rtl-optimization/48721 (ICE: verify_flow_info failed: missing barrier after block 6 with -foptimize-sibling-calls -fsched2-use-superblocks)
PR rtl-optimization/48721
* sched-ebb.c (begin_move_insn): Insert empty unreachable
block after BARRIER if insn is followed by it.
From-SVN: r181855
Paolo Carlini [Wed, 30 Nov 2011 18:31:30 +0000 (18:31 +0000)]
re PR c++/51299 ([C++11] erroneous nullptr warning on dynamic cast)
/cp
2011-11-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51299
* rtti.c (ifnonnull): Use nullptr_node.
(build_dynamic_cast_1): Call cp_truthvalue_conversion instead
of c_common_truthvalue_conversion.
/testsuite
2011-11-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51299
* g++.dg/warn/Wzero-as-null-pointer-constant-4.C: New.
From-SVN: r181854
Richard Henderson [Wed, 30 Nov 2011 16:10:24 +0000 (08:10 -0800)]
sparc: Add -mmemory-model command-line option.
* config/sparc/sparc-opts.h (enum sparc_memory_model_type): New.
* config/sparc/sparc.opt (mmemory-model=): New option.
* doc/invoke.texi (Sparc Options): Document it.
* config/sparc/sparc.c (sparc_option_override): Provide default
for sparc_memory_model.
(sparc_emit_membar_for_model): Omit barrier combinations that are
implied by the memory model.
From-SVN: r181853
Richard Henderson [Wed, 30 Nov 2011 15:58:53 +0000 (07:58 -0800)]
sparc: Convert to atomic_exchange.
* config/sparc/sync.md (I124MODE): New mode iterator.
(memory_barrier): Remove.
(atomic_exchangesi): New.
(swapsi): Rename from *swapsi.
(atomic_test_and_set<I124MODE>): New.
(ldstubqi): Rename from *ldstubqi, merge with expander.
(ldstub<I24MODE>): Rename from *ldstub<I24MODE>, merge with expander.
(sync_lock_test_and_setsi): Remove.
(sync_lock_test_and_set<I12MODE>): Remove.
From-SVN: r181852
Richard Henderson [Wed, 30 Nov 2011 15:53:45 +0000 (07:53 -0800)]
sparc: Convert to atomic_compare_and_swap.
* config/sparc/constraints.md ("w"): New.
* config/sparc/predicates.md (mem_noofs_operand): New.
* config/sparc/sparc.c (sparc_expand_compare_and_swap_12): Make static.
Generate the boolean result of the atomic_compare_exchange.
(sparc_expand_compare_and_swap): New.
* config/sparc/sync.md (atomic_compare_and_swap<I>): New.
(atomic_compare_and_swap<I48MODE>_1): Rename from
*sync_compare_and_swap<I48MODE>, use mem_noofs_operand.
(*atomic_compare_and_swapdi_v8plus): Rename from
*sync_compare_and_swapdi_v8plus, use mem_noofs_operand.
(sync_compare_and_swap<I12MODE>): Remove.
(sync_compare_and_swap<I48MODE>): Remove.
From-SVN: r181851
Richard Henderson [Wed, 30 Nov 2011 15:48:13 +0000 (07:48 -0800)]
sparc: Convert to atomic_load/store.
* config/sparc/predicates.md (register_or_v9_zero_operand): New.
* config/sparc/sparc.md (UNSPEC_ATOMIC): New.
* config/sparc/sync.md (atomic_load<I>): New.
(atomic_loaddi_1, atomic_store<I>, atomic_storedi_1): New.
From-SVN: r181849
Richard Henderson [Wed, 30 Nov 2011 15:46:22 +0000 (07:46 -0800)]
sparc: Convert to mem_thread_fence.
* config/sparc/predicates.md (zero_or_v7_operand): New.
* config/sparc/sparc.c (sparc_emit_membar_for_model): New.
* config/sparc/sparc-protos.h: Update.
* config/sparc/sync.md (mem_thread_fence): New.
(memory_barrier): Use sparc_emit_membar_for_model.
(membar, *membar_empty, *membar_storestore, *membar_storeload): New.
(*membar_v8): Accept and ignore the membar mask.
(*membar): Accept and print the membar mask.
From-SVN: r181848
Matthew Gretton-Dann [Wed, 30 Nov 2011 13:51:35 +0000 (13:51 +0000)]
arm.c (arm_issue_rate): Cortex-A15 can triple issue.
* gcc/config/arm/arm.c (arm_issue_rate): Cortex-A15 can triple issue.
* gcc/config/arm/arm.md (mul64): New attribute.
(generic_sched): Cortex-A15 is not scheduled generically.
(cortex-a15.md): Include.
* gcc/config/arm/cortex-a15.md: New machine description.
* gcc/config/arm/t-arm (MD_INCLUDES): Add cortex-a15.md.
From-SVN: r181843
Matthew Gretton-Dann [Wed, 30 Nov 2011 13:41:04 +0000 (13:41 +0000)]
* gcc/config/arm/t-arm (MD_INCLUDES): Ensure all md files are listed.
From-SVN: r181842
Iain Sandoe [Wed, 30 Nov 2011 10:42:58 +0000 (10:42 +0000)]
shift flag_next/gnu_runtime to modern opts system.
gcc:
* doc/tm.texi.in (NEXT_OBJC_RUNTIME): Update macro description.
* doc/tm.texi: Regenerate.
* flags.h (flag_next_runtime): Remove references.
* toplev.c: Likewise.
* defaults.h (NEXT_OBJC_RUNTIME): Provide default.
* gccspec.c (lang_specific_driver): Adjust use of NEXT_OBJC_RUNTIME.
* config/darwin.c (darwin_override_options): Provide default
Objective-C abi settings and target conflict checks.
* config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Remove unused
code. Adjust indenting.
gcc/c-family:
* c.opt (fgnu-runtime): Provide full description.
(fnext-runtime): Likewise.
* c-opts.c (OPT_fgnu_runtime, OPT_fnext_runtime) Remove.
From-SVN: r181837
Matthew Gretton-Dann [Wed, 30 Nov 2011 09:53:56 +0000 (09:53 +0000)]
MAINTAINERS (write-after-approval): Add self.
* MAINTAINERS (write-after-approval): Add self.
From-SVN: r181836
Alan Modra [Wed, 30 Nov 2011 04:44:13 +0000 (15:14 +1030)]
re PR libgomp/51298 (libgomp team_barrier locking failures)
PR libgomp/51298
* config/linux/bar.h: Use atomic rather than sync builtins.
* config/linux/bar.c: Likewise. Add missing acquire
synchronisation on generation field.
* task.c (gomp_barrier_handle_tasks): Regain lock so as to not
double unlock.
From-SVN: r181833
Alan Modra [Wed, 30 Nov 2011 04:02:53 +0000 (14:32 +1030)]
ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
* ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
* critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
* config/linux/mutex.h: Use atomic rather than sync builtins.
* config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
* config/linux/omp-lock.h: Comment fix.
* config/linux/arm/mutex.h: Delete.
* config/linux/powerpc/mutex.h: Delete.
* config/linux/ia64/mutex.h: Delete.
* config/linux/mips/mutex.h: Delete.
From-SVN: r181832
Alan Modra [Wed, 30 Nov 2011 03:43:57 +0000 (14:13 +1030)]
re PR libgomp/51249 (semaphore implemetation for linux leaves threads blocked)
PR libgomp/51249
* config/linux/sem.h: Rewrite.
* config/linux/sem.c: Rewrite.
From-SVN: r181831
Ian Lance Taylor [Wed, 30 Nov 2011 00:21:52 +0000 (00:21 +0000)]
runtime: Copy runtime_panicstring from master library.
From-SVN: r181830
GCC Administrator [Wed, 30 Nov 2011 00:19:14 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r181829
Joseph Myers [Tue, 29 Nov 2011 23:37:06 +0000 (23:37 +0000)]
* config/sh/sh.h (enum reg_class, REG_CLASS_NAMES)
(REG_CLASS_CONTENTS): Add NON_SP_REGS.
(REGCLASS_HAS_GENERAL_REG): Handle NON_SP_REGS.
* config/sh/constraints.md (u): New constraint.
From-SVN: r181825
Ian Lance Taylor [Tue, 29 Nov 2011 23:02:54 +0000 (23:02 +0000)]
libgo: update to weekly.2011-10-25
Changes were mainly straightforward to merge.
From-SVN: r181824
Oleg Endo [Tue, 29 Nov 2011 22:52:55 +0000 (22:52 +0000)]
re PR target/51337 (SH Target: Various testsuite ICEs for -m2a -O0)
PR target/51337
* config/sh/sh.c (sh_secondary_reload): Add case when FPUL
register is being loaded from a pseudo in memory.
From-SVN: r181823
Ian Lance Taylor [Tue, 29 Nov 2011 21:58:48 +0000 (21:58 +0000)]
runtime: If no sem_timedwait, use pthread_cond_timedwait.
From-SVN: r181821
DJ Delorie [Tue, 29 Nov 2011 21:36:43 +0000 (16:36 -0500)]
.
* configure.ac (rl78-*-*) New case.
* configure: Regenerate.
* MAINTAINERS: Add myself as RL78 maintainer.
libgcc
* config.host (rl78-*-elf): New case.
* config/rl78: New directory for the Renesas RL78.
gcc
* config.gcc (rl78-*-elf): New case.
* doc/extend.texi: Add RL78 documentation.
* doc/invoke.texi: Likewise.
* doc/md.texi: Likewise.
* doc/contrib.texi: Add RL78.
* doc/install.texi: Add rl78-*-elf.
* config/rl78: New directory for the Renesas RL78.
contrib
* config-list.mk (LIST): Add rl78-elf.
From-SVN: r181819
Jakub Jelinek [Tue, 29 Nov 2011 21:03:09 +0000 (22:03 +0100)]
re PR tree-optimization/51247 (ICE in set_value_range, at tree-vrp.c:417)
PR tree-optimization/51247
* tree-vrp.c (extract_range_from_assert): For signed 1-bit precision
types instead of adding 1 subtract -1 and instead of subtracting 1
add -1 to avoid overflows.
* gcc.c-torture/compile/pr51247.c: New test.
From-SVN: r181818
Andreas Tobler [Tue, 29 Nov 2011 20:12:00 +0000 (21:12 +0100)]
config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.
2011-11-29 Andreas Tobler <andreast@fgznet.ch>
* config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.
(libname_spec): Likewise.
* configure: Regenerate with autoconf -I ../../.
From-SVN: r181816
Andrew MacLeod [Tue, 29 Nov 2011 19:42:44 +0000 (19:42 +0000)]
re PR target/50123 (cmpxchg generated for atomic and with zero/or with -1)
2011-11-29 Andrew MacLeod <amacleod@redhat.com>
PR target/50123
* optabs.c (maybe_optimize_fetch_op): New. Look for more optimal
instructions for a FECTH_OP or OP_FECTH sequence.
(expand_atomic_fetch_op): Call maybe_optimize_fetch_op.
* testsuite/gcc.dg/atomic-op-optimize.c: New. Test for optimizations.
From-SVN: r181815
Ian Lance Taylor [Tue, 29 Nov 2011 19:26:00 +0000 (19:26 +0000)]
runtime: If O_CLOEXEC is not defined, define it as 0.
From-SVN: r181814
Sanjoy Das [Tue, 29 Nov 2011 19:10:50 +0000 (19:10 +0000)]
compiler: Define and use backend-independent Location class.
From Sanjoy Das.
* go-location.h: New file.
* go-linemap.cc: New file.
* go-gcc.cc: Change all uses of source_location to Location.
* Make-lang.in (GO_OBJS): Add go/go-linemap.o.
(GO_LINEMAP_H): New variable.
(GO_LEX_H): Use $(GO_LINEMAP_H).
(GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
(go/go-linemap.o): New target.
Co-Authored-By: Ian Lance Taylor <iant@google.com>
From-SVN: r181813
Uros Bizjak [Tue, 29 Nov 2011 19:03:08 +0000 (20:03 +0100)]
sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.
* config/i386/sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.
(movdi_via_fpu): Remove.
(loaddi_via_fpu): New insn pattern.
(storedi_via_fpu): Ditto.
(atomic_loaddi_fpu): Use loaddi_via_fpu and storedi_via_fpu.
(atomic_storedi_fpu): Ditto.
* reg-stack.c (get_true_reg): Handle UNSPEC_LDA.
(subst_stack_regs_pat): Handle UNSPEC_STA.
From-SVN: r181812
Uros Bizjak [Tue, 29 Nov 2011 17:55:29 +0000 (18:55 +0100)]
i386.md (*floathi<mode>2_i387_with_temp): Do not allocate scratch memory for alternative 0.
* config/i386/i386.md (*floathi<mode>2_i387_with_temp): Do not
allocate scratch memory for alternative 0.
From-SVN: r181811
Thomas Koenig [Tue, 29 Nov 2011 17:49:24 +0000 (17:49 +0000)]
re PR fortran/40958 (module files too large)
2011-11-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/40958
* module.c (prev_module_line): New variable.
(prev_module_column): New variable.
(prev_character): New variable.
(module_char): Update the new variables.
(module_unget_char): New function.
(parse_string): Use module_unget_char.
(parse_integer): Likewise.
(parse_name): Likewise.
From-SVN: r181810
Michael Meissner [Tue, 29 Nov 2011 17:33:05 +0000 (17:33 +0000)]
Enable target specific builtins and macros when using the target attribute or pragma on rs6000
From-SVN: r181809
David Edelsohn [Tue, 29 Nov 2011 16:40:50 +0000 (11:40 -0500)]
tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.
2011-11-29 Dodji Seketeli <dodji@redhat.com>
* tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.
(maybe_unwind_expanded_macro_loc): Adjust.
From-SVN: r181808
David Edelsohn [Tue, 29 Nov 2011 16:32:28 +0000 (16:32 +0000)]
trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl if DECL_ONE_ONLY.
2011-11-21 David Edelsohn <dje.gcc@gmail.com>
Aldy Hernandez <aldyh@redhat.com>
* trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl
if DECL_ONE_ONLY.
(ipa_tm_create_version): Same.
Co-Authored-By: Aldy Hernandez <aldyh@redhat.com>
From-SVN: r181807
Bernd Schmidt [Tue, 29 Nov 2011 15:58:05 +0000 (15:58 +0000)]
haifa-sched.c (recompute_todo_spec): Simplify and correct the code checking for a clobber of a condition register...
* haifa-sched.c (recompute_todo_spec): Simplify and correct the
code checking for a clobber of a condition register when deciding
whether to predicate.
From-SVN: r181806
Bernd Schmidt [Tue, 29 Nov 2011 15:55:38 +0000 (15:55 +0000)]
config.host (tic6x-*-uclinux): Append to extra_parts.
* config.host (tic6x-*-uclinux): Append to extra_parts. Fix
formatting.
From-SVN: r181805
Yufeng Zhang [Tue, 29 Nov 2011 15:27:33 +0000 (15:27 +0000)]
Use complex floating-point constant in CDBL.
2011-11-29 Yufeng Zhang <yufeng.zhang@arm.com>
Use complex floating-point constant in CDBL.
* gcc.dg/compat/compat-common.h (CDBL): Replace 1i with 1.0i.
From-SVN: r181804
Diego Novillo [Tue, 29 Nov 2011 14:16:16 +0000 (09:16 -0500)]
gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
* gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
Update field call_stmt_cannot_inline_p from call graph edge, if
needed.
* gimple.h (gimple_call_set_cannot_inline): Move to gimple.c.
From-SVN: r181803
Sameera Deshpande [Tue, 29 Nov 2011 12:52:27 +0000 (18:22 +0530)]
arm.md (arm_movdi): Update NEG_POOL_RANGE.
* config/arm/arm.md (arm_movdi): Update NEG_POOL_RANGE.
(movdf_soft_insn): Likewise.
* config/arm/fpa.md (thumb2_movdf_fpa): Likewise.
* config/arm/neon.md (neon_mov<mode>): Likewise.
* config/arm/vfp.md (movdi_vfp): Likewise.
(movdi_vfp_cortexa8): Likewise.
(movdf_vfp): Likewise.
From-SVN: r181802
Tobias Burnus [Tue, 29 Nov 2011 09:57:40 +0000 (10:57 +0100)]
re PR fortran/51306 (MOVE_ALLOC: Make more middle end friendlier)
2011-11-29 Tobias Burnus <burnus@net-b.de>
PR fortran/51306
PR fortran/48700
* check.c (gfc_check_move_alloc): Make sure that from/to
are both polymorphic or neither.
* trans-intrinsic.c (conv_intrinsic_move_alloc): Cleanup,
generate inline code.
2011-11-29 Tobias Burnus <burnus@net-b.de>
PR fortran/51306
PR fortran/48700
* gfortran.dg/move_alloc_5.f90: Add dg-error.
* gfortran.dg/select_type_23.f03: Add dg-error.
* gfortran.dg/move_alloc_6.f90: New.
* gfortran.dg/move_alloc_7.f90: New.
From-SVN: r181801
Jakub Jelinek [Tue, 29 Nov 2011 08:48:41 +0000 (09:48 +0100)]
re PR middle-end/50074 (gcc.dg/sibcall-6.c execution test on x86_64 with -fPIC)
PR middle-end/50074
* expr.c (expand_expr_addr_expr_1): Don't call force_operand for
EXPAND_SUM modifier.
From-SVN: r181800
François Dumont [Tue, 29 Nov 2011 07:45:58 +0000 (07:45 +0000)]
hashtable.h (_Hashtable<>::_M_rehash): Remove code useless now that the hashtable implementation put the hash code in...
2011-11-29 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
useless now that the hashtable implementation put the hash code in
cache if the hash functor throws.
* testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
checking also distance between begin and end iterators to validate
underlying data model.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/2.cc: New.
* testsuite/23_containers/unordered_multimap/erase/2.cc: New.
From-SVN: r181799
Ian Lance Taylor [Tue, 29 Nov 2011 07:03:49 +0000 (07:03 +0000)]
Implement predefined error interface.
From-SVN: r181798
Ira Rosen [Tue, 29 Nov 2011 07:00:53 +0000 (07:00 +0000)]
re PR tree-optimization/51301 (Compiler ICE in vect_is_simple_use_1)
PR tree-optimization/51301
* tree-vect-patterns.c (vect_recog_over_widening_pattern): Check
that the last statement doesn't convert to a bigger type than the
original type of the computation.
From-SVN: r181797
Richard Henderson [Tue, 29 Nov 2011 04:50:13 +0000 (20:50 -0800)]
rs6000: Streamline boolval output for compare-and-swap.
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap):
Handle overlap between retval and oldval. Always compute boolval
from CR0 EQ value.
From-SVN: r181796
Richard Henderson [Tue, 29 Nov 2011 04:50:01 +0000 (20:50 -0800)]
rs6000.c (rs6000_expand_atomic_compare_and_swap): Get new pseudo for target after convert_modes.
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): Get
new pseudo for target after convert_modes.
(rs6000_expand_atomic_exchange, rs6000_expand_atomic_op): Likewise.
From-SVN: r181795
Richard Henderson [Tue, 29 Nov 2011 02:19:05 +0000 (18:19 -0800)]
* libgomp.h (enum memmodel): New.
From-SVN: r181794
GCC Administrator [Tue, 29 Nov 2011 00:19:06 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r181793
Uros Bizjak [Mon, 28 Nov 2011 22:05:46 +0000 (23:05 +0100)]
cdce3.C: Use dg-additional-options.
* g++.dg/cdce3.C: Use dg-additional-options.
From-SVN: r181789
Jakub Jelinek [Mon, 28 Nov 2011 21:04:45 +0000 (22:04 +0100)]
re PR debug/50317 (missing DW_OP_GNU_implicit_pointer)
PR debug/50317
* tree-ssa.c (execute_update_addresses_taken): Remove
var ={v} {CLOBBER} stmts instead of rewriting them into
var_N ={v} {CLOBBER}.
From-SVN: r181788
Jakub Jelinek [Mon, 28 Nov 2011 21:04:10 +0000 (22:04 +0100)]
re PR middle-end/50907 (EDGE_CROSSING incorrectly set across same section with -freorder-blocks-and-partition -fPIC -fprofile-use)
PR middle-end/50907
* function.c (convert_jumps_to_returns): When redirecting an edge
succ to EXIT_BLOCK_PTR, clear EDGE_CROSSING flag.
* gcc.dg/tree-prof/pr50907.c: New test.
From-SVN: r181787
Jakub Jelinek [Mon, 28 Nov 2011 21:03:11 +0000 (22:03 +0100)]
re PR tree-optimization/50078 (combine wrong code: volatile accesses optimized out)
PR tree-optimization/50078
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Copy over
TREE_THIS_VOLATILE also from the old to new lhs resp. rhs.
* gcc.dg/pr50078.c: New test.
From-SVN: r181786
Jakub Jelinek [Mon, 28 Nov 2011 21:02:27 +0000 (22:02 +0100)]
re PR tree-optimization/50682 (ICE: SIGSEGV in main_block_label with -O2 -fnon-call-exceptions -ftracer)
PR tree-optimization/50682
* tree-eh.c (maybe_remove_unreachable_handlers): New function.
* tree-flow.h (maybe_remove_unreachable_handlers): New prototype.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Call it.
* g++.dg/opt/pr50682.C: New test.
From-SVN: r181785
Andrew MacLeod [Mon, 28 Nov 2011 20:28:23 +0000 (20:28 +0000)]
c-family
* c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
predefines in one place. Add LOCK_FREE predefines.
(c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
new func.
libstdc++-v3
* include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp
predefined macros.
* testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER
macro checks. Check for expected compile time values.
From-SVN: r181784
Rainer Orth [Mon, 28 Nov 2011 16:02:10 +0000 (16:02 +0000)]
Cleanup rs6000/t-ppccomm configurations (PR other/51022)
PR other/51022
* config/rs6000/t-savresfgpr: New file.
* config/rs6000/t-ppccomm (LIB2ADD_ST): Remove all but
$(srcdir)/config/rs6000/eabi.S.
* config/rs6000/t-ppccomm-ldbl: Remove.
* config.host (powerpc-*-freebsd*): Add rs6000/t-savresfgpr to
tmake_file.
(powerpc-*-eabispe*): Likewise.
(powerpc-*-eabi*): Likewise.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
(powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add rs6000/t-ppccomm
to tmake_file, remove rs6000/t-ppccomm-ldbl.
(powerpc-*-eabisimaltivec*): Remove rs6000/t-ppccomm-ldbl from
tmake_file.
(powerpc-*-eabisim*): Likewise.
(powerpc-*-elf*): Likewise.
(powerpc-*-eabialtivec*): Likewise.
(powerpc-xilinx-eabi*): Likewise.
(powerpc-*-rtems*): Likewise.
(powerpcle-*-elf*): Likewise.
(powerpcle-*-eabisim*): Likewise.
(powerpcle-*-eabi*): Likewise.
From-SVN: r181782
Tobias Burnus [Mon, 28 Nov 2011 14:47:39 +0000 (15:47 +0100)]
Really commit the test case:
2011-11-28 Tobias Burnus <burnus@net-b.de>
PR fortran/51308
* gfortran.dg/iso_c_binding_compiler_4.f90: New.
From-SVN: r181779
Tobias Burnus [Mon, 28 Nov 2011 14:21:33 +0000 (15:21 +0100)]
re PR fortran/51308 (PARAMETER attribute conflicts with SAVE attribute)
2011-11-28 Tobias Burnus <burnus@net-b.de>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/51308
* symbol.c (check_conflict): Ignore BIND(C) + PARAMETER
conflicts for ISO_C_BINDING variables.
(gen_special_c_interop_ptr): Don't mark c_ptr_null/c_funptr_null
as SAVE.
2011-11-28 Tobias Burnus <burnus@net-b.de>
PR fortran/51308
* gfortran.dg/iso_c_binding_compiler_4.f90: New.
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r181778
Paolo Carlini [Mon, 28 Nov 2011 13:24:23 +0000 (13:24 +0000)]
re PR libstdc++/51288 ([C++0x] get_money implementation is missing the sentry object (does not skip leading whitespace))
2011-11-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51288
* include/std/iomanip (get_money, put_money): Use sentry.
* testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New.
* testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
Likewise.
From-SVN: r181775
Georg-Johann Lay [Mon, 28 Nov 2011 09:58:37 +0000 (09:58 +0000)]
extend.texi (AVR Built-in Functions): Add documentation for __builtin_avr_map8 and __builtin_avr_map16.
* doc/extend.texi (AVR Built-in Functions): Add documentation for
__builtin_avr_map8 and __builtin_avr_map16.
* config/avr/avr.md: Document new %t and %T asm output codes.
(define_c_enum "unspec"): Add UNSPEC_MAP_BITS.
(adjust_len): Add map_bits.
(map_bitsqi, map_bitshi): New insns.
* config/avr/avr-protos.h (avr_out_map_bits): New.
* config/avr/avr-protos.c (print_operand): Implement %t and %T.
(adjust_insn_length): Handle ADJUST_LEN_MAP_BITS.
(avr_double_int_push_digit): New function.
(avr_map, avr_revert_map, avr_swap_map, avr_id_map): New functions.
(avr_sig_map, avr_map_hamming_byte): New functions.
(avr_out_swap_bits, avr_out_revert_bits, avr_move_bits,
avr_out_map_bits): New functions.
(enum avr_builtin_id): Add AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16.
(avr_init_builtins): Populate __builtin_avr_map8, __builtin_avr_map16.
(bdesc_2arg): Add __builtin_avr_map8, __builtin_avr_map16 ...
(avr_expand_builtin): ...and expand them.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in defines:
__BUILTIN_AVR_MAP8, __BUILTIN_AVR_MAP16.
From-SVN: r181773
Ian Lance Taylor [Mon, 28 Nov 2011 05:45:49 +0000 (05:45 +0000)]
runtime: Multiplex goroutines onto OS threads.
From-SVN: r181772
Ian Lance Taylor [Mon, 28 Nov 2011 05:44:31 +0000 (05:44 +0000)]
generic-morestack.c (__splitstack_find): Check for NULL old stack value.
* generic-morestack.c (__splitstack_find): Check for NULL old
stack value.
(__splitstack_resetcontext): New function.
(__splitstack_releasecontext): New function.
* libgcc-std.ver.in: Add new functions to GCC_4.7.0.
From-SVN: r181771
GCC Administrator [Mon, 28 Nov 2011 00:19:24 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r181770
Aldy Hernandez [Sun, 27 Nov 2011 14:09:13 +0000 (14:09 +0000)]
trans-mem-2_0.c: Add dg-lto-do link.
gcc/testsuite:
2011-11-27 Aldy Hernandez <aldyh@redhat.com>
Iain Sandoe <iains@gcc.gnu.org>
* gcc.dg/lto/trans-mem-2_0.c: Add dg-lto-do link. Add dummy
functions for _ITM_registerTMCloneTable, _ITM_deregisterTMCloneTable.
* gcc.dg/lto/trans-mem-1_0.c: Add dg-lto-do link.
* gcc.dg/lto/trans-mem-1_1.c: Add dummy functions for
_ITM_registerTMCloneTable, _ITM_deregisterTMCloneTable.
Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
From-SVN: r181766
Iain Sandoe [Sun, 27 Nov 2011 13:57:01 +0000 (13:57 +0000)]
darwin-crt-tm.c: Correct comments, use correct licence.
libgcc:
* config/darwin-crt-tm.c: Correct comments, use correct licence.
From-SVN: r181765
Iain Sandoe [Sun, 27 Nov 2011 13:52:49 +0000 (13:52 +0000)]
darwin-crt-tm.c: Remove dummy _ITM_ functions.
libgcc:
* config/darwin-crt-tm.c: Remove dummy _ITM_ functions.
From-SVN: r181764
Richard Sandiford [Sun, 27 Nov 2011 10:18:25 +0000 (10:18 +0000)]
re PR target/51278 (gcc.target/mips/octeon-baddu-1.c fails on the trunk)
gcc/
PR target/51278
* config/mips/mips.c (mips_rtx_costs): Handle baddu.
From-SVN: r181763
Richard Sandiford [Sun, 27 Nov 2011 10:14:57 +0000 (10:14 +0000)]
mips.c (mips16_unextended_reference_p): Test for BLKmode.
gcc/
* config/mips/mips.c (mips16_unextended_reference_p): Test for BLKmode.
From-SVN: r181762
Richard Sandiford [Sun, 27 Nov 2011 10:09:32 +0000 (10:09 +0000)]
mips-protos.h (mips_emit_binary): Declare.
gcc/
* config/mips/mips-protos.h (mips_emit_binary): Declare.
* config/mips/mips.c (mips_emit_binary): Make global.
(mips_set_mips16_mode): Turn off -mfix-r4000 in MIPS16 mode.
(mips_conditional_register_usage): Don't treat LO and HI as
register operands in MIPS16 mode.
(mips_mulsidi3_gen_fn): Use {u,}mulsidi3_{32,64}bit_mips16
for MIPS16 code.
* config/mips/predicates.md (muldiv_target_operand): New predicate.
(move_operand): Allow hilo_operand.
* config/mips/mips.md (mul<mode>3): Explicitly specify LO as the
target of MIPS16 multiplies, then move it into the target register.
(mul<mode>3_internal, *macc2, *msac2): Use muldiv_target_operand.
(<u>mulsidi3_32bit_mips16): New expander.
(<u>mulsidi3_32bit): Use muldiv_target_operand.
(<u>mulsidi3_32bit_r4000): Disable for ISA_HAS_DSP.
(<u>mulsidi3_64bit): Require !TARGET_MIPS16. Split into
<u>mulsidi3_64bit_split.
(<u>mulsidi3_64bit_mips16): New expander.
(<u>mulsidi3_64bit_split): Likewise, using expansions from
two previous define_splits.
(<u>mulsidi3_64bit_hilo, *muls<u>_di, <u>msubsidi4): Use
muldiv_target_operand.
(<su>mulsi3_highpart): Use <su>mulsi3_highpart_split for MIPS16 code.
(<su>mulsi3_highpart_internal): Require !TARGET_MIPS16.
Split into <su>mulsi3_highpart_split.
(<su>mulsi3_highpart_split): New expander.
(<su>muldi3_highpart): Turn into a define_expand.
Use <su>muldi3_highpart_split for MIPS16 code.
(<su>muldi3_highpart_internal): Renamed from <su>muldi3_highpart.
Require !TARGET_MIPS16. Split into <su>muldi3_highpart_split.
(<su>muldi3_highpart_split): New expander.
(<u>mulditi3): Explicitly specify LO as the target of MIPS16
multiplies, then move it into the target register.
(<u>mulditi3_internal, <u>maddsidi4): Use muldiv_target_operand.
(divmod<mode>4, udivmod<mode>4): Turn into define_expands.
Use <u>divmod<mode>4_split for MIPS16 code, then explicitly
move LO into operand 0.
(divmod<mode>4_internal, udivmod<mode>4_internal): Renamed
from <u>divmod<mode>4. Use muldiv_target_operand.
Require !TARGET_MIPS16. Split into <u>divmod<mode>4_split.
(<u>divmod<mode>4_split): New expander.
(<u>divmod<GPR:mode>4_hilo_<HILO:mode>): Use muldiv_target_operand.
(mfhi<GPR:mode>_<HILO:mode>): Use hilo_operand.
gcc/testsuite/
* gcc.target/mips/mult-2.c, gcc.target/mips/mult-3.c,
gcc.target/mips/mult-4.c, gcc.target/mips/mult-5.c,
gcc.target/mips/mult-6.c, gcc.target/mips/mult-7.c,
gcc.target/mips/mult-8.c, gcc.target/mips/mult-9.c,
gcc.target/mips/mult-10.c, gcc.target/mips/mult-11.c,
gcc.target/mips/mult-12.c, gcc.target/mips/mult-13.c,
gcc.target/mips/mult-14.c, gcc.target/mips/mult-15.c,
gcc.target/mips/mult-16.c, gcc.target/mips/mult-17.c,
gcc.target/mips/mult-18.c, gcc.target/mips/mult-19.c,
gcc.target/mips/div-1.c, gcc.target/mips/div-2.c,
gcc.target/mips/div-3.c, gcc.target/mips/div-4.c,
gcc.target/mips/div-5.c, gcc.target/mips/div-6.c,
gcc.target/mips/div-7.c, gcc.target/mips/div-8.c,
gcc.target/mips/div-9.c, gcc.target/mips/div-10.c,
gcc.target/mips/div-11.c, gcc.target/mips/div-12.c: New tests.
* gcc.target/mips/fix-r4000-1.c (foo, bar): Add NOMIPS16.
* gcc.target/mips/fix-r4000-2.c (foo): Likewise.
* gcc.target/mips/fix-r4000-3.c (foo): Likewise.
* gcc.target/mips/fix-r4000-4.c (foo): Likewise.
* gcc.target/mips/fix-r4000-5.c (foo): Likewise.
* gcc.target/mips/fix-r4000-6.c (foo): Likewise.
* gcc.target/mips/fix-r4000-7.c (foo): Likewise.
* gcc.target/mips/fix-r4000-8.c (foo): Likewise.
* gcc.target/mips/fix-r4000-9.c (foo): Likewise.
* gcc.target/mips/fix-r4000-10.c (foo): Likewise.
* gcc.target/mips/fix-r4000-11.c (foo): Likewise.
* gcc.target/mips/fix-r4000-12.c (foo): Likewise.
From-SVN: r181761
Richard Sandiford [Sun, 27 Nov 2011 10:09:15 +0000 (10:09 +0000)]
hard-reg-set.h (target_hard_regs): Add x_accessible_reg_set and x_operand_reg_set.
gcc/
* hard-reg-set.h (target_hard_regs): Add x_accessible_reg_set
and x_operand_reg_set.
(accessible_reg_set, operand_reg_set): New macros.
* reginfo.c (init_reg_sets): Initialize accessible_reg_set and
operand_reg_set.
(saved_accessible_reg_set, saved_operand_reg_set): New variables.
(save_register_info): Save them.
(restore_register_info): Restore them.
(init_reg_sets_1): Limit operand_reg_set to accessible_reg_set.
Remove NO_REGS registers from operand_reg_set. Treat members
of operand_reg_set as fixed.
* recog.c (general_operand): Check operand_reg_set rather than
NO_REGS.
(register_operand, nonmemory_operand): Likewise.
* varasm.c (make_decl_rtl): Always use DECL_MODE as the mode of
register variables. Check accessible_reg_set and operand_reg_set.
* config/mips/mips.c (mips_conditional_register_usage): Remove
inaccessible register from accessible_reg_set, rather than just
making them fixed.
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Make -mno-dsp
imply -mno-dspr2.
* gcc.target/mips/no-dsp-1.c: New test.
* gcc.target/mips/soft-float-1.c: Likewise.
From-SVN: r181760
Gerald Pfeifer [Sun, 27 Nov 2011 05:50:12 +0000 (05:50 +0000)]
* config/pa/pa-linux.h (TARGET_GAS): Remove comment.
From-SVN: r181759
Gerald Pfeifer [Sun, 27 Nov 2011 02:42:21 +0000 (02:42 +0000)]
using.xml (Prerequisites): Refer to x86 instead of i386.
* doc/xml/manual/using.xml (Prerequisites): Refer to x86 instead
of i386.
From-SVN: r181758
Gerald Pfeifer [Sun, 27 Nov 2011 01:09:22 +0000 (01:09 +0000)]
run_doxygen (problematic): Change Linux reference to GNU/Linux.
* scripts/run_doxygen (problematic): Change Linux reference to
GNU/Linux.
From-SVN: r181757
Gerald Pfeifer [Sun, 27 Nov 2011 00:21:28 +0000 (00:21 +0000)]
abi.xml (Prerequisites): Refer to GNU/Linux.
* doc/xml/manual/abi.xml (Prerequisites): Refer to GNU/Linux.
Fix reference to GCC.
From-SVN: r181756
Richard Henderson [Sun, 27 Nov 2011 00:20:48 +0000 (16:20 -0800)]
arm: Install __sync libfuncs for Linux.
* config/arm/arm.c (arm_init_libfuncs): Call init_sync_libfuncs
for Linux.
From-SVN: r181755
GCC Administrator [Sun, 27 Nov 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r181754
Richard Henderson [Sun, 27 Nov 2011 00:10:18 +0000 (16:10 -0800)]
Fix expand_atomic_fetch_op wrt unused_result.
* optabs.c (expand_atomic_fetch_op): Always return result.
From-SVN: r181750
Richard Henderson [Sun, 27 Nov 2011 00:06:16 +0000 (16:06 -0800)]
Fix init_sync_libfuncs_1 iteration.
* optabs.c (init_sync_libfuncs_1): Include max in iteration.
From-SVN: r181749
Richard Henderson [Sun, 27 Nov 2011 00:01:04 +0000 (16:01 -0800)]
omp-low: Assume anything aligned to BIGGEST_ALIGNMENT is aligned.
* omp-low.c (expand_omp_atomic): Assume anything aligned to
BIGGEST_ALIGNMENT is aligned.
From-SVN: r181748
Richard Henderson [Sat, 26 Nov 2011 23:59:56 +0000 (15:59 -0800)]
m68k: Implement CAS and TAS patterns.
* config/m68k/m68k.md (UNSPECV_CAS_1, UNSPECV_CAS_2): New.
(UNSPECV_TAS_1, UNSPECV_TAS_2): New.
(I): New mode iterator.
(xz): New mode attribute.
* config/m68k/sync.md: New file.
From-SVN: r181747
Richard Henderson [Sat, 26 Nov 2011 23:57:37 +0000 (15:57 -0800)]
m68k-linux: Implement atomic operations via syscall.
libgcc/
* config/m68k/linux.h (TARGET_INIT_LIBFUNCS): New.
* config/m68k/m68k.c (m68k_init_sync_libfuncs): New.
gcc/
* config/m68k/linux-atomic.c: New file.
* config/m68k/t-linux: New file.
* config.host (m68k-uclinux, m68k-linux): Use it.
From-SVN: r181746
Nathan Sidwell [Sat, 26 Nov 2011 21:44:24 +0000 (21:44 +0000)]
re PR gcov-profile/51297 (Many gcov tests FAIL on Tru64, Solaris 8 and 9)
PR gcov-profile/51297
* gcov.c (main): Allocate initial names and sources arrays.
(find_source): Don't check for null name or source arrays here.
From-SVN: r181745
Richard Henderson [Sat, 26 Nov 2011 21:16:49 +0000 (13:16 -0800)]
crtstuff: adjust tm clones for no attribute hidden
* crtstuff.c (__TMC_LIST__): Mark used not unused.
(__TMC_END__): Only declare if hidden is available; in the definition,
if hidden is unavailable add a null record.
(deregister_tm_clones, register_tm_clones): New.
(__do_global_dtors_aux, frame_dummy): Use them.
(__do_global_dtors, __do_global_ctors_1): Likewise.
From-SVN: r181744
Jakub Jelinek [Sat, 26 Nov 2011 20:50:28 +0000 (21:50 +0100)]
re PR rtl-optimization/49912 (ICE from -freorder-blocks-and-partition : verify_flow_info failed)
PR rtl-optimization/49912
* cfgrtl.c (rtl_verify_flow_info_1): Ignore also EDGE_PRESERVE bit
when counting n_branch.
* g++.dg/other/pr49912.C: New test.
From-SVN: r181743
Uros Bizjak [Sat, 26 Nov 2011 15:48:39 +0000 (16:48 +0100)]
fast-math-vect-call-2.c: Require vect_double effective target.
* gcc.dg/vect/fast-math-vect-call-2.c: Require vect_double
effective target.
* gcc.dg/vect/fast-math-bb-slp-call-2.c: Ditto.
From-SVN: r181742
Uros Bizjak [Sat, 26 Nov 2011 15:35:33 +0000 (16:35 +0100)]
fast-math-vect-call-2.c: Require vect_double effective target.
* gcc.dg/vect/fast-math-vect-call-2.c: Require vect_double
effective target.
From-SVN: r181741
Jonathan Wakely [Sat, 26 Nov 2011 15:15:22 +0000 (15:15 +0000)]
re PR libstdc++/51296 (Several 30_threads tests FAIL on Tru64 UNIX)
PR libstdc++/51296
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
on alpha*-*-osf*.
* testsuite/30_threads/future/cons/constexpr.cc: Disable debug
symbols.
* testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
From-SVN: r181740