aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-12-01PR 25708 Avoid seeking when parsing strings and when peeking.Janne Blomqvist2-43/+122
2011-12-01 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/25708 * module.c (parse_string): Read string into resizable array instead of parsing twice and seeking. (peek_atom): New implementation avoiding seeks. (require_atom): Save and set column and line explicitly for error handling. From-SVN: r181879
2011-12-01re PR bootstrap/51201 (build error without Ada compiler installed)Jakub Jelinek2-2/+7
PR bootstrap/51201 * gcc-interface/Make-lang.in: Initialize RTS_DIR with = instead of :=. From-SVN: r181877
2011-12-01re PR c++/51367 (Broken diagnostic: 'pointer_type' not supported by dump_expr)Paolo Carlini4-3/+30
/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-01Don't call stat before opening a file.Janne Blomqvist2-8/+4
2011-12-01 Janne Blomqvist <jb@gcc.gnu.org> * misc.c (gfc_open_file): Don't call stat. From-SVN: r181875
2011-12-01compiler/runtime: Copy channel implementation from master library.Ian Lance Taylor30-2795/+1621
From-SVN: r181874
2011-12-01re PR c++/51009 (ICE in verify_gimple_stmt)Jason Merrill6-17/+41
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-01re PR other/51272 (ld: Unsatisfied symbol "_ITM_registerTMCloneTable" in ↵John David Anglin3-14/+51
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-01acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove size-specific macros.Benjamin Kosnik24-140/+200
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-01re PR middle-end/50283 (FAIL: g++.dg/eh/simd-1.C execution test)John David Anglin2-4/+15
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-01Daily bump.GCC Administrator1-1/+1
From-SVN: r181867
2011-11-30Swap the action and jmpbuf arguments to GTM_longjmpRichard Henderson5-39/+46
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-30predict.c (expr_expected_value_1): Assume compare-and-swap builtin boolean ↵Richard Henderson2-11/+36
return is true. * predict.c (expr_expected_value_1): Assume compare-and-swap builtin boolean return is true. From-SVN: r181862
2011-11-30re PR rtl-optimization/51044 (gfortran.dg/alloc_comp_class_2.f90 ↵Jakub Jelinek2-1/+10
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-30re PR target/50725 (-O3 -mstackrealign -march=core2 generates invalid ↵Jakub Jelinek4-0/+59
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-30re PR middle-end/51089 (internal compiler error: verify_flow_info failed)Jakub Jelinek4-18/+44
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-30re PR c/51321 (__builtin_types_compatible_p (any_type_t[1][], ↵Andrew Pinski4-2/+26
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-30re PR rtl-optimization/48721 (ICE: verify_flow_info failed: missing barrier ↵Jakub Jelinek4-1/+65
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-30re PR rtl-optimization/48721 (ICE: verify_flow_info failed: missing barrier ↵Jakub Jelinek2-2/+13
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-30re PR c++/51299 ([C++11] erroneous nullptr warning on dynamic cast)Paolo Carlini4-3/+37
/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-30sparc: Add -mmemory-model command-line option.Richard Henderson5-20/+145
* 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-30sparc: Convert to atomic_exchange.Richard Henderson2-60/+42
* 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-30sparc: Convert to atomic_compare_and_swap.Richard Henderson6-34/+100
* 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-30sparc: Convert to atomic_load/store.Richard Henderson4-0/+72
* 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-30sparc: Convert to mem_thread_fence.Richard Henderson5-14/+129
* 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-30arm.c (arm_issue_rate): Cortex-A15 can triple issue.Matthew Gretton-Dann5-1/+208
* 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* gcc/config/arm/t-arm (MD_INCLUDES): Ensure all md files are listed.Matthew Gretton-Dann2-10/+31
From-SVN: r181842
2011-11-30shift flag_next/gnu_runtime to modern opts system.Iain Sandoe12-52/+81
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-30MAINTAINERS (write-after-approval): Add self.Matthew Gretton-Dann2-0/+5
* MAINTAINERS (write-after-approval): Add self. From-SVN: r181836
2011-11-30re PR libgomp/51298 (libgomp team_barrier locking failures)Alan Modra4-20/+35
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-30ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.Alan Modra10-156/+54
* 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-30re PR libgomp/51249 (semaphore implemetation for linux leaves threads blocked)Alan Modra3-36/+94
PR libgomp/51249 * config/linux/sem.h: Rewrite. * config/linux/sem.c: Rewrite. From-SVN: r181831
2011-11-30runtime: Copy runtime_panicstring from master library.Ian Lance Taylor31-92/+83
From-SVN: r181830
2011-11-30Daily bump.GCC Administrator1-1/+1
From-SVN: r181829
2011-11-29* config/sh/sh.h (enum reg_class, REG_CLASS_NAMES)Joseph Myers3-1/+15
(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-29libgo: update to weekly.2011-10-25Ian Lance Taylor39-3367/+4628
Changes were mainly straightforward to merge. From-SVN: r181824
2011-11-29re PR target/51337 (SH Target: Various testsuite ICEs for -m2a -O0)Oleg Endo2-0/+14
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-29runtime: If no sem_timedwait, use pthread_cond_timedwait.Ian Lance Taylor5-11/+114
From-SVN: r181821
2011-11-29.DJ Delorie38-8/+6095
* 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-29re PR tree-optimization/51247 (ICE in set_value_range, at tree-vrp.c:417)Jakub Jelinek4-10/+68
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-29config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.Andreas Tobler3-8/+14
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-29re PR target/50123 (cmpxchg generated for atomic and with zero/or with -1)Andrew MacLeod4-0/+72
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-29runtime: If O_CLOEXEC is not defined, define it as 0.Ian Lance Taylor1-0/+4
From-SVN: r181814
2011-11-29compiler: Define and use backend-independent Location class.Sanjoy Das29-1104/+1545
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-29sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.Uros Bizjak3-10/+41
* 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-29i386.md (*floathi<mode>2_i387_with_temp): Do not allocate scratch memory for ↵Uros Bizjak2-16/+15
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-29re PR fortran/40958 (module files too large)Thomas Koenig2-15/+36
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-29Enable target specific builtins and macros when using the target attribute ↵Michael Meissner10-2495/+2664
or pragma on rs6000 From-SVN: r181809
2011-11-29tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.David Edelsohn2-9/+14
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-29trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl if DECL_ONE_ONLY.David Edelsohn2-2/+9
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-29haifa-sched.c (recompute_todo_spec): Simplify and correct the code checking ↵Bernd Schmidt2-26/+19
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