Paolo Carlini
a95888bb35
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
2011-12-01 09:34:43 +00:00
Janne Blomqvist
12f300a8aa
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
2011-12-01 10:55:32 +02:00
Ian Lance Taylor
3e68d6d75a
compiler/runtime: Copy channel implementation from master library.
...
From-SVN: r181874
2011-12-01 08:06:16 +00:00
Jason Merrill
04f7a48edd
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
2011-12-01 00:40:54 -05:00
John David Anglin
06dd33ac5e
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
2011-12-01 02:37:06 +00:00
Benjamin Kosnik
a152e96f01
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
2011-12-01 02:20:32 +00:00
John David Anglin
de21ce7fa8
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
2011-12-01 02:08:10 +00:00
GCC Administrator
48325d1cb6
Daily bump.
...
From-SVN: r181867
2011-12-01 00:18:55 +00:00
Richard Henderson
062f93f255
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
2011-11-30 14:29:33 -08:00
Richard Henderson
c08472eaf6
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
2011-11-30 14:19:02 -08:00
Jakub Jelinek
ed079c4be7
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
2011-11-30 23:02:14 +01:00
Jakub Jelinek
5c43016f2d
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
2011-11-30 23:00:28 +01:00
Jakub Jelinek
336ead04ab
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
2011-11-30 22:59:04 +01:00
Andrew Pinski
9abfe98649
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
2011-11-30 11:55:36 -08:00
Jakub Jelinek
9790c19e52
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
2011-11-30 19:58:33 +01:00
Jakub Jelinek
bbf81a5fae
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
2011-11-30 19:53:46 +01:00
Paolo Carlini
23ffb99e94
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
2011-11-30 18:31:30 +00:00
Richard Henderson
2e65f38f1b
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
2011-11-30 08:10:24 -08:00
Richard Henderson
99ee7887c6
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
2011-11-30 07:58:53 -08:00
Richard Henderson
470b6e5160
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
2011-11-30 07:53:45 -08:00
Richard Henderson
cfe8fee796
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
2011-11-30 07:48:13 -08:00
Richard Henderson
9a7389088f
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
2011-11-30 07:46:22 -08:00
Matthew Gretton-Dann
ef5784915f
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
2011-11-30 13:51:35 +00:00
Matthew Gretton-Dann
c819d921c9
* gcc/config/arm/t-arm (MD_INCLUDES): Ensure all md files are listed.
...
From-SVN: r181842
2011-11-30 13:41:04 +00:00
Iain Sandoe
fea3ca9130
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
2011-11-30 10:42:58 +00:00
Matthew Gretton-Dann
0f14d442fc
MAINTAINERS (write-after-approval): Add self.
...
* MAINTAINERS (write-after-approval): Add self.
From-SVN: r181836
2011-11-30 09:53:56 +00:00
Alan Modra
ab6dd406ba
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
2011-11-30 15:14:13 +10:30
Alan Modra
b40c885f18
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
2011-11-30 14:32:53 +10:30
Alan Modra
3e348fccfa
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
2011-11-30 14:13:57 +10:30
Ian Lance Taylor
b87974949f
runtime: Copy runtime_panicstring from master library.
...
From-SVN: r181830
2011-11-30 00:21:52 +00:00
GCC Administrator
a592211185
Daily bump.
...
From-SVN: r181829
2011-11-30 00:19:14 +00:00
Joseph Myers
a4f71b01d1
* 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
2011-11-29 23:37:06 +00:00
Ian Lance Taylor
b740cb6335
libgo: update to weekly.2011-10-25
...
Changes were mainly straightforward to merge.
From-SVN: r181824
2011-11-29 23:02:54 +00:00
Oleg Endo
cebc182b78
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
2011-11-29 22:52:55 +00:00
Ian Lance Taylor
08ee945e0b
runtime: If no sem_timedwait, use pthread_cond_timedwait.
...
From-SVN: r181821
2011-11-29 21:58:48 +00:00
DJ Delorie
85b8555ed3
.
...
* 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
2011-11-29 16:36:43 -05:00
Jakub Jelinek
c360c0fb8a
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
2011-11-29 22:03:09 +01:00
Andreas Tobler
781c528f2e
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
2011-11-29 21:12:00 +01:00
Andrew MacLeod
91f59d8bf4
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
2011-11-29 19:42:44 +00:00
Ian Lance Taylor
421ecf992e
runtime: If O_CLOEXEC is not defined, define it as 0.
...
From-SVN: r181814
2011-11-29 19:26:00 +00:00
Sanjoy Das
8afa2bfbdc
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
2011-11-29 19:10:50 +00:00
Uros Bizjak
09ad58e618
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
2011-11-29 20:03:08 +01:00
Uros Bizjak
c6b4cec7ea
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
2011-11-29 18:55:29 +01:00
Thomas Koenig
645e511b20
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
2011-11-29 17:49:24 +00:00
Michael Meissner
7fa14a0130
Enable target specific builtins and macros when using the target attribute or pragma on rs6000
...
From-SVN: r181809
2011-11-29 17:33:05 +00:00
David Edelsohn
8f5c9d6659
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
2011-11-29 11:40:50 -05:00
David Edelsohn
43042ea701
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
2011-11-29 11:32:28 -05:00
Bernd Schmidt
89ff14c265
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
2011-11-29 15:58:05 +00:00
Bernd Schmidt
4d5ae4eadc
config.host (tic6x-*-uclinux): Append to extra_parts.
...
* config.host (tic6x-*-uclinux): Append to extra_parts. Fix
formatting.
From-SVN: r181805
2011-11-29 15:55:38 +00:00
Yufeng Zhang
9645592c93
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
2011-11-29 15:27:33 +00:00