Age | Commit message (Collapse) | Author | Files | Lines |
|
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
|
|
PR bootstrap/51201
* gcc-interface/Make-lang.in: Initialize RTS_DIR with = instead of :=.
From-SVN: r181877
|
|
/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 Janne Blomqvist <jb@gcc.gnu.org>
* misc.c (gfc_open_file): Don't call stat.
From-SVN: r181875
|
|
From-SVN: r181874
|
|
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
|
|
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
|
|
From-SVN: r181867
|
|
return is true.
* predict.c (expr_expected_value_1): Assume compare-and-swap builtin
boolean return is true.
From-SVN: r181862
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
/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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
* 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
|
|
From-SVN: r181842
|
|
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
|
|
From-SVN: r181829
|
|
(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
|
|
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
|
|
* 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
|
|
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 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
|
|
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
|
|
* 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
|
|
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 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
|
|
or pragma on rs6000
From-SVN: r181809
|
|
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-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
|
|
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 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
|
|
* 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
|
|
* 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
|
|
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
|
|
PR middle-end/50074
* expr.c (expand_expr_addr_expr_1): Don't call force_operand for
EXPAND_SUM modifier.
From-SVN: r181800
|
|
From-SVN: r181798
|
|
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
|
|
* 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
|
|
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
|
|
From-SVN: r181793
|
|
* g++.dg/cdce3.C: Use dg-additional-options.
From-SVN: r181789
|
|
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
|