platform/upstream/gcc.git
12 years agosystem.h (dump_file): Do not define.
Steven Bosscher [Mon, 16 Jul 2012 11:32:42 +0000 (11:32 +0000)]
system.h (dump_file): Do not define.

gcc/
* system.h (dump_file): Do not define.
* tree-pass.h: Include dumpfile.h, which is a new file containing...
(enum tree_dump_index, TDF_*, get_dump_file_name, dump_enabled_p,
dump_initialized_p, dump_begin, dump_end, dump_node, dump_switch_p,
dump_flag_name, dump_file, dump_flags, dump_file_name,
get_dump_file_info, struct dump_file_info): all of this, moved to...
* dumpfile.h: Here, new file.
* tree-dump.h: Include dumpfile.h, but not tree-pass.h.
(dump_stmt): Remove prototype for C++ specific function.
(dump_enumerated_decls): Move prototype from here...
* tree-flow.h (dump_enumerated_decls): ... to here.
(get_ref_base_and_extent) Move prototype from here ...
* tree.h (get_ref_base_and_extent) ... to here.
* tree-ssa-live.c: Do not inclde tree-pretty-print.h, because
gimple-pretty-print.h is enough.  Do not include tree-dump.h,
include timevar.h and dumpfile.h instead.
(struct numbered_tree_d, compare_decls_by_uid,
dump_enumerated_decls_push, dump_enumerated_decls): Move from here ...
* tree-dfa.c:(struct numbered_tree_d, compare_decls_by_uid,
dump_enumerated_decls_push, dump_enumerated_decls):... to here.
Do not include timevar.h.
* tree.c: Do not include timevar.h.
* tree-cfg.c: Do not include langhooks.h, tree-pretty-print.h, and
timevar.h.
(dump_cfg_stats): Use current_function_name.
(gimple_cfg2vcg): Likewise.
(dump_function_to_file): Likewise.
* df-scan.c: Do not include tree-pass.h and timevar.h.
Include dumpfile.h.
(df_entry_block_bitmap_verify, df_exit_block_bitmap_verify): Do not
use print_current_pass.
* df-problems.c: Include dumpfile.h.
Always define REG_DEAD_DEBUGGING, avoid #ifdef code, because it
leads to errors in the code not selected.
(df_note_compute): Do not print_rtl_with_bb here.  Fix compilation
bug if REG_DEAD_DEBUGGING is not 0, get_insns is not available here.
* lcm.c: Include dumpfile.h.
Remove obsolete include of insn-attr.h.
* dojump.c (do_compare_rtx_and_jump): Remove failure printing for
missing probability notes.
* stmt.c: Include dumpfile.h.
(emit_case_decision_tree): Re-enable printing expand details only
if TDF_DETAILS.
* alias.c, auto-inc-dec.c, bb-reorder.c, caller-save.c, cfg.c,
cfgcleanup.c, cfgexpand.c, cfgloop.c, cfgloopmanip.c, cgraph.c,
cgraphclones.c, cgraphunit.c, combine.c, combine-stack-adj.c,
coverage.c, cprop.c, cse.c, cselib.c, dbgcnt.c, dce.c, df-core.c,
dse.c, dwarf2out.c, emit-rtl.c, except.c, expr.c, final.c,
function.c, fwprop.c, gcse.c, gimple-fold.c,
gimple-pretty-print.c, gimple-ssa-strength-reduction.c,
gimplify.c, graphite-blocking.c, graphite-clast-to-gimple.c,
graphite-dependences.c, graphite-interchange.c,
graphite-optimize-isl.c, graphite-poly.c,
graphite-sese-to-poly.c, haifa-sched.c, hw-doloop.c, ifcvt.c,
ipa.c, ipa-cp.c, ipa-inline-analysis.c, ipa-inline.c,
ipa-inline-transform.c, ipa-prop.c, ipa-pure-const.c,
ipa-reference.c, ipa-split.c, ipa-utils.c, ira.c, ira-emit.c,
jump.c, loop-doloop.c, loop-init.c, loop-invariant.c, loop-iv.c,
loop-unroll.c, loop-unswitch.c, lower-subreg.c,
lto-section-out.c, lto-streamer-in.c, matrix-reorg.c, mcf.c,
mode-switching.c, modulo-sched.c, omega.c, omp-low.c, passes.c,
plugin.c, postreload.c, postreload-gcse.c, predict.c, print-rtl.c,
print-tree.c, profile.c, recog.c, ree.c, regcprop.c, reginfo.c,
regmove.c, regrename.c, reg-stack.c, reload1.c, reorg.c,
sched-rgn.c, sched-vis.c, sel-sched.c, sel-sched-ir.c,
store-motion.c, tracer.c, trans-mem.c, tree-affine.c,
tree-call-cdce.c, tree-cfgcleanup.c, tree-chrec.c,
tree-data-ref.c, tree-diagnostic.c, tree-dump.c,
tree-eh.c, tree-flow-inline.h, tree-if-conv.c, tree-into-ssa.c,
tree-mudflap.c, tree-nrv.c, tree-object-size.c,
tree-optimize.c, tree-outof-ssa.c, tree-predcom.c,
tree-pretty-print.c, tree-profile.c, tree-scalar-evolution.c,
tree-sra.c, tree-ssa-address.c, tree-ssa-alias.c, tree-ssa.c,
tree-ssa-ccp.c, tree-ssa-coalesce.c, tree-ssa-copy.c,
tree-ssa-copyrename.c,, tree-ssa-dce.c, tree-ssa-dom.c,
tree-ssa-dse.c, tree-ssa-forwprop.c, tree-ssa-ifcombine.c,
tree-ssa-loop.c, tree-ssa-loop-ch.c, tree-ssa-loop-im.c,
tree-ssa-loop-ivcanon.c, tree-ssa-loop-ivopts.c,
tree-ssa-loop-manip.c, tree-ssa-loop-niter.c,
tree-ssa-loop-prefetch.c, tree-ssa-loop-unswitch.c,
tree-ssa-math-opts.c, tree-ssa-operands.c, tree-ssa-phiopt.c,
tree-ssa-phiprop.c, tree-ssa-pre.c, tree-ssa-propagate.c,
tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-ssa-sink.c,
tree-ssa-structalias.c, tree-ssa-tail-merge.c, tree-ssa-ter.c,
tree-ssa-threadedge.c, tree-ssa-threadupdate.c,
tree-ssa-uncprop.c, tree-ssa-uninit.c,
tree-switch-conversion.c, tree-tailcall.c,
tree-vect-data-refs.c, tree-vect-loop.c,
tree-vect-loop-manip.c, tree-vectorizer.c,
tree-vect-patterns.c, tree-vect-slp.c, tree-vect-stmts.c,
tree-vrp.c, value-prof.c, var-tracking.c, web.c: Include tree-pass.h
only if needed.  If tree-pass.h is included, do not include timevar.h
and dumpfile.h.  If tree-pass.h is not included but dump_file, or
dump_flags, or the TDF_* flags are used, include dumpfile.h.
If gimple-pretty-print.h is included, don't include tree-pretty-print.h.
Remove assorted unnecessary includes.

* config/mn10300/mn10300.c, config/c6x/c6x.c, config/ia64/ia64.c,
config/arm/arm.c, config/bfin/bfin.c, config/frv/frv.c,
config/spu/spu.c, config/mep/mep.c, config/i386/i386.c:
Include dumpfile.h.
* config/rl78/rl78.c: Include dumpfile.h instead of tree-pass.h.
* arm/t-arm, avr/t-avr, i386/t-i386, ia64/t-ia64, mep/t-mep,
spu/t-spu-elf: Fix dependencies.

c-family/
* c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
* c-ada-spec.c: Likewise.
* c-dump.c (dump_stmt): Move to cp/dump.c, the only user.

c/
* c-decl.c: Include dumpfile.h instead of tree-dump.h.
* Make-lang.in: Fix dependencies.

cp/
* dump.c (dump_stmt): Moved here from c-dump.c.
* optimize.c: Include dumpfile.h instead of tree-dump.h.
* class.c: Likewise.
* decl2.c: Likewise.
* Make-lang.in: Fix dependencies.

fortran/
* f95-lang.c: Include dumpfile.h instead of tree-dump.h.
* Make-lang.in: Fix dependencies.

java/
* java-gimplify.c Include dumpfile.h instead of tree-dump.h
* Make-lang.in: Fix dependencies.

lto/
* lto.c: Do not include timevar.h.
* Make-lang.in: Fix dependencies.

ada/
* gcc-interface/utils.c: Include timevar.h.
* Make-lang.in: Fix dependencies.

From-SVN: r189519

12 years agorevert: tree.h (phi_arg_d): New field.
Dehao Chen [Mon, 16 Jul 2012 11:08:21 +0000 (11:08 +0000)]
revert: tree.h (phi_arg_d): New field.

2012-07-16  Dehao Chen  <dehao@google.com>

Revert
2012-07-10  Dehao Chen  <dehao@google.com>

* tree.h (phi_arg_d): New field.
* tree-flow-inline.h (gimple_phi_arg_block): New function.
(gimple_phi_arg_block_from_edge): New function.
(gimple_phi_arg_set_block): New function.
(gimple_phi_arg_has_block): New function.
(redirect_edge_var_map_block): New function.
* tree-flow.h (_edge_var_map): New field.
* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block as used.
* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
redirect_edge_var_map_add.
* tree-outof-ssa.c (_elim_graph): New field.
(insert_partition_copy_on_edge): New parameter.
(insert_value_copy_on_edge): New parameter.
(insert_rtx_to_part_on_edge): New parameter.
(insert_part_to_rtx_on_edge): New parameter.
(elim_graph_add_edge): New parameter.
(elim_graph_remove_succ_edge): New parameter.
(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
(new_elim_graph): Add block debug info.
(clear_elim_graph): Likewise.
(delete_elim_graph): Likewise.
(elim_graph_add_node): Likewise.
(elim_graph_add_edge): Likewise.
(elim_graph_remove_succ_edge): Likewise.
(eliminate_build): Likewise.
(elim_forward): Likewise.
(elim_unvisited_predecessor): Likewise.
(elim_backward): Likewise.
(elim_create): Likewise.
(eliminate_phi): Likewise.
(insert_backedge_copies): Likewise.
* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
add_phi_arg.
(rewrite_add_phi_arguments): Likewise.
* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
* tree-ssa-tail-merge.c (replace_block_by): Likewise.
* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(add_exit_phis_edge): Likewise.
(split_loop_exit_edge): Likewise.
(copy_phi_node_args): Likewise.
(tree_transform_and_unroll_loop): Likewise.
* value-prof.c (gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
* tree-tailcall.c (add_successor_phi_arg): Likewise.
(eliminate_tail_call): Likewise.
(create_tailcall_accumulator): Likewise.
(tree_optimize_tail_calls_1): Likewise.
* tree-phinodes.c (add_phi_arg): Likewise.
(make_phi_node): Likewise.
(resize_phi_node): Likewise.
(remove_phi_arg_num): Likewise.
* omp-low.c (expand_parallel_call): Likewise.
(expand_omp_for_static_chunk): Likewise.
* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
Likewise.
(slpeel_update_phi_nodes_for_guard1): Likewise.
(slpeel_update_phi_nodes_for_guard2): Likewise.
(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
(set_prologue_iterations): Likewise.
(slpeel_tree_peel_loop_to_edge): Likewise.
(vect_loop_versioning): Likewise.
* tree-parloops.c (create_phi_for_local_result): Likewise.
(transform_to_exit_first_loop): Likewise.
(create_parallel_loop): Likewise.
* ipa-split.c (split_function): Likewise.
* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
(vect_create_epilog_for_reduction): Likewise.
* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
(cond_if_else_store_replacement_1): Likewise.
* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
(remove_forwarder_block_with_phi): Likewise.
* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
* tree-predcom.c (initialize_root_vars): Likewise.
(initialize_root_vars_lm): Likewise.
* sese.c (sese_add_exit_phis_edge): Likewise.
* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
* tree-ssa.c (flush_pending_stmts): Likewise.
(redirect_edge_var_map_add): Likewise.
(ssa_redirect_edge): Likewise.
* gimple-streamer-in.c (input_phi): Likewise.
* tree-vect-stmts.c (vectorizable_load): Likewise.
* tree-inline.c (copy_phis_for_bb): Likewise.
* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
* tree-switch-conversion.c (fix_phi_nodes): Likewise.
* tree-cfg.c (reinstall_phi_args): Likewise.
(gimple_make_forwarder_block): Likewise.
(add_phi_args_after_copy_edge): Likewise.
(gimple_duplicate_sese_tail): Likewise.

From-SVN: r189518

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 10:52:21 +0000 (12:52 +0200)]
[multiple changes]

2012-07-16  Vasiliy Fofanov  <fofanov@adacore.com>

* ug_words, vms_data.ads: Document VMS qualifiers for -gnatn1/2
switches.

2012-07-16  Bob Duff  <duff@adacore.com>

* sinfo.ads: Minor comment fix.

2012-07-16  Bob Duff  <duff@adacore.com>

* sem_elab.adb (Within_Elaborate_All): Walk the with clauses to
find pragmas Elaborate_All that may be found in the transitive
closure of the dependences.

From-SVN: r189517

12 years agoexp_pakd.adb, [...]: Minor reformatting.
Robert Dewar [Mon, 16 Jul 2012 10:49:46 +0000 (10:49 +0000)]
exp_pakd.adb, [...]: Minor reformatting.

2012-07-16  Robert Dewar  <dewar@adacore.com>

* exp_pakd.adb, freeze.adb, sem_util.adb, vms_data.ads: Minor
reformatting.

From-SVN: r189516

12 years agore PR fortran/53956 ([F03] PROCEDURE w/ interface: Bogus "EXTERNAL attribute conflict...
Janus Weil [Mon, 16 Jul 2012 10:13:19 +0000 (12:13 +0200)]
re PR fortran/53956 ([F03] PROCEDURE w/ interface: Bogus "EXTERNAL attribute conflicts with FUNCTION attribute")

2012-07-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53956
* gfortran.h (gfc_copy_formal_args,gfc_copy_formal_args_ppc): Modified
prototypes.
* symbol.c (gfc_copy_formal_args): New argument 'if_src'. Copy if_source
of dummy procedures.
(gfc_copy_formal_args_ppc): Ditto.
* resolve.c (resolve_procedure_interface): Pass IFSRC_DECL to
gfc_copy_formal_args.
(resolve_fl_derived0): Pass IFSRC_DECL to gfc_copy_formal_args_ppc.

2012-07-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53956
* gfortran.dg/proc_decl_28.f90: New.

From-SVN: r189514

12 years agoi386.md (stack_protect_set): Disable the pattern for Android since Android libc ...
Sergey Melnikov [Mon, 16 Jul 2012 10:00:37 +0000 (10:00 +0000)]
i386.md (stack_protect_set): Disable the pattern for Android since Android libc (bionic) does not provide...

2012-07-16 Sergey Melnikov <sergey.melnikov@intel.com>

        * config/i386/i386.md (stack_protect_set): Disable the pattern
        for Android since Android libc (bionic) does not provide random
        value for stack protection guard at gs:0x14. Guard value
        will be provided from external symbol (default implementation).
        (stack_protect_set_<mode>): Likewise.
        (stack_protect_test): Likewise.
        (stack_protect_test_<mode>): Likewise.

From-SVN: r189513

12 years agobuiltins-1.c: New testcase.
Andrew Pinski [Mon, 16 Jul 2012 07:17:49 +0000 (07:17 +0000)]
builtins-1.c: New testcase.

2012-07-16  Andrew Pinski  <apinski@cavium.com>

* gcc.dg/torture/builtins-1.c: New testcase.

From-SVN: r189510

12 years agoCommit hunk missing from last change
Hans-Peter Nilsson [Mon, 16 Jul 2012 06:11:09 +0000 (06:11 +0000)]
Commit hunk missing from last change

From-SVN: r189509

12 years agoTweak ChangeLog formatting for my recent entries
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:33:35 +0000 (03:33 +0000)]
Tweak ChangeLog formatting for my recent entries

From-SVN: r189508

12 years agocris-protos.h (cris_legitimate_address_p): Declare.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:31:12 +0000 (03:31 +0000)]
cris-protos.h (cris_legitimate_address_p): Declare.

* config/cris/cris-protos.h (cris_legitimate_address_p): Declare.
* config/cris/cris.h (CONSTANT_ADDRESS_P): Define in terms of
CONSTANT_P and cris_legitimate_address_p.
* config/cris/cris.c (cris_legitimate_address_p): Make non-static.

From-SVN: r189507

12 years agocris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_S...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:24:14 +0000 (03:24 +0000)]
cris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

* config/cris/cris.c (cris_preferred_reload_class):
Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

From-SVN: r189506

12 years agosync-2i.c, [...]: For cris*-*-linux*, also pass -mno-unaligned-atomic-may-use-library.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:21:47 +0000 (03:21 +0000)]
sync-2i.c, [...]: For cris*-*-linux*, also pass -mno-unaligned-atomic-may-use-library.

* gcc.target/cris/sync-2i.c, gcc.target/cris/sync-2s.c,
gcc.target/cris/sync-3i.c, gcc.target/cris/sync-3s.c,
gcc.target/cris/sync-4i.c, gcc.target/cris/sync-4s.c,
gcc.target/cris/sync-1-v10.c,
gcc.target/cris/sync-1-v32.c: For cris*-*-linux*, also
pass -mno-unaligned-atomic-may-use-library.
* gcc.target/cris/sync-xchg-1.c: New test.

From-SVN: r189505

12 years agocris.c (cris_init_libfuncs): Handle initialization of library functions for basic...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:18:23 +0000 (03:18 +0000)]
cris.c (cris_init_libfuncs): Handle initialization of library functions for basic atomic compare-and-swap.

* config/cris/cris.c (cris_init_libfuncs): Handle initialization
of library functions for basic atomic compare-and-swap.
* config/cris/cris.h (TARGET_ATOMICS_MAY_CALL_LIBFUNCS): New macro.
* config/cris/cris.opt (munaligned-atomic-may-use-library): New
option.
* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
("cris_atomic_fetch_<atomic_op_name><mode>_1")
("atomic_compare_and_swap<mode>")
("cris_atomic_compare_and_swap<mode>_1"): Make
conditional on TARGET_ATOMICS_MAY_CALL_LIBFUNCS for
sizes larger than byte.

From-SVN: r189504

12 years agocris.c (cris_print_operand): New cases.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:11:31 +0000 (03:11 +0000)]
cris.c (cris_print_operand): New cases.

* config/cris/cris.c (cris_print_operand) <case 'P', 'q'>: New cases.
* config/cris/sync.md (atomic_op_op_cnstr): New code_attr.
(atomic_op_op_pred): Ditto.
(atomic_op_mnem_pre_op2): Renamed from atomic_op_mnem_pre; to
reflect the change to include %2 in expansion.  All callers changed.
(qm3): New mode_attr.
("atomic_fetch_<atomic_op_name><mode>"): Use <atomic_op_op_pred>
as predicate for operand 2.
("cris_atomic_fetch_<atomic_op_name><mode>_1"): Update FIXME.  Use
"<atomic_op_op_pred>" "<atomic_op_op_cnstr>" for predicate and
constraint for operand 2.
("atomic_compare_and_swap<mode>"): Add FIXME.  Change predicate to
nonmemory_operand for operand 3.
("cris_atomic_compare_and_swap<mode>_1"): Change operand 3 to
exclude memory.  Improve emitted sync code for v10 and v32.  Use
<qm3> instead of <m> for size designator for cmp.

From-SVN: r189503

12 years ago20011127-1.c: Adjust to %P being a valid register operand output modifier.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:09:57 +0000 (03:09 +0000)]
20011127-1.c: Adjust to %P being a valid register operand output modifier.

* gcc.target/cris/20011127-1.c: Adjust to %P being a
valid register operand output modifier.

From-SVN: r189502

12 years agosync.md ("atomic_compare_and_swap<mode>"): Change predicate to nonmemory_operand...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:02:47 +0000 (03:02 +0000)]
sync.md ("atomic_compare_and_swap<mode>"): Change predicate to nonmemory_operand for operand 3.

* config/cris/sync.md ("atomic_compare_and_swap<mode>"): Change
predicate to nonmemory_operand for operand 3.  Add FIXME.
("cris_atomic_compare_and_swap<mode>_1"): Change predicates and

From-SVN: r189501

12 years ago* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
Hans-Peter Nilsson [Mon, 16 Jul 2012 02:59:42 +0000 (02:59 +0000)]
* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
("atomic_compare_and_swap<mode>"): Gate expand_mem_thread_fence
calls on result of call to need_atomic_barrier_p.

From-SVN: r189500

12 years agoDaily bump.
GCC Administrator [Mon, 16 Jul 2012 00:18:10 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r189499

12 years agomips.md (move_type): Replace mfhilo and mthilo with mflo and mtlo.
Richard Sandiford [Sun, 15 Jul 2012 16:26:48 +0000 (16:26 +0000)]
mips.md (move_type): Replace mfhilo and mthilo with mflo and mtlo.

gcc/
* config/mips/mips.md (move_type): Replace mfhilo and mthilo
with mflo and mtlo.
(type): Split mfhilo into mfhi and mflo.  Split mthilo into mthi
and mtlo.  Adjust move_type->type mapping.
(may_clobber_hilo): Split mthilo into mthi and mtlo.
(*movdi_32bit, *movdi_32bit_mips16, *movdi_64bit, *movdi_64bit_mips16)
(*mov<mode>_internal, *mov<mode>_mips16, *movhi_internal)
(*movhi_mips16, *movqi_internal, *movqi_mips16): Use mtlo and mflo
instead of mthilo and mfhilo.
(mfhi<GPR:mode>_<HILO:mode>): Use mfhi instead of mfhilo.
(mthi<GPR:mode>_<HILO:mode>): Use mthi instead of mthilo.
* config/mips/mips-dsp.md (mips_extr_w, mips_extr_r_w, mips_extr_rs_w)
(mips_extr_s_h, mips_extp, mips_extpdp, mips_shilo, mips_mthlip):
Use mflo instead of mfhilo.
* config/mips/10000.md (r10k_arith): Split mthilo.
(r10k_mfhi, r10k_mflo): Use mfhi and mflo directly.
* config/mips/sb1.md (ir_sb1_mfhi, ir_sb1_mflo): Likewise.
(ir_sb1_mthilo): Split mthilo into mthi and mtlo.
* config/mips/20kc.md (r20kc_imthilo, r20kc_imfhilo): Split
mthilo and mfhilo.
* config/mips/24k.md (r24k_int_mfhilo, r24k_int_mthilo): Likewise.
* config/mips/4130.md (vr4130_class, vr4130_mfhilo, vr4130_mthilo):
Likewise.
* config/mips/4k.md (r4k_int_mthilo, r4k_int_mfhilo): Likewise.
* config/mips/5400.md (ir_vr54_hilo): Likewise.
* config/mips/5500.md (ir_vr55_mthilo, ir_vr55_mfhilo): Likewise.
* config/mips/5k.md (r5k_int_mthilo, r5k_int_mfhilo): Likewise.
* config/mips/7000.md (rm7_mthilo, rm7_mfhilo): Likewise.
* config/mips/74k.md (r74k_int_mfhilo, r74k_int_mthilo): Likewise.
* config/mips/9000.md (rm9k_mfhilo, rm9k_mthilo): Likewise.
* config/mips/generic.md (generic_hilo): Likewise.
* config/mips/loongson2ef.md (ls2_alu): Likewise.
* config/mips/loongson3a.md (ls3a_mfhilo): Likewise.
* config/mips/octeon.md (octeon_imul_o1, octeon_imul_o2)
(octeon_mfhilo_o1, octeon_mfhilo_o2): Likewise.
* config/mips/sr71k.md (ir_sr70_hilo): Likewise.
* config/mips/xlr.md (xlr_hilo): Likewise.

From-SVN: r189496

12 years agopubnames-2.C: Support all known comment characters.
Andreas Schwab [Sun, 15 Jul 2012 10:22:35 +0000 (10:22 +0000)]
pubnames-2.C: Support all known comment characters.

* g++.dg/debug/dwarf2/pubnames-2.C: Support all known comment
characters.

From-SVN: r189494

12 years agoDaily bump.
GCC Administrator [Sun, 15 Jul 2012 00:18:16 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r189489

12 years agosh.h (SH_ASM_SPEC): Add spaces between options.
Andrew Stubbs [Sun, 15 Jul 2012 00:02:47 +0000 (00:02 +0000)]
sh.h (SH_ASM_SPEC): Add spaces between options.

2012-07-14  Andrew Stubbs  <ams@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/sh/sh.h (SH_ASM_SPEC): Add spaces between options.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r189486

12 years agoAdd missing pthread requirement.
Mike Stump [Sat, 14 Jul 2012 22:38:41 +0000 (22:38 +0000)]
Add missing pthread requirement.

From-SVN: r189485

12 years agoi386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode for TARGET_SSE.
Uros Bizjak [Sat, 14 Jul 2012 19:33:12 +0000 (21:33 +0200)]
i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode for TARGET_SSE.

* config/i386/i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode
for TARGET_SSE.

From-SVN: r189483

12 years agotoplev.c (init_asm_output): Open asm_out_file in 'w' mode.
Steven Bosscher [Sat, 14 Jul 2012 17:28:31 +0000 (17:28 +0000)]
toplev.c (init_asm_output): Open asm_out_file in 'w' mode.

gcc/
* toplev.c (init_asm_output): Open asm_out_file in 'w' mode.

c-family/
* c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
Remove code conditional on it.

From-SVN: r189482

12 years ago* config/t-darwin (crt3.0): Remove work-around for fixed PR26840.
Steven Bosscher [Sat, 14 Jul 2012 13:50:59 +0000 (13:50 +0000)]
* config/t-darwin (crt3.0): Remove work-around for fixed PR26840.

From-SVN: r189479

12 years agoocteon2-pipe-1.c: Use cleanup-rtl-dump rather than cleanup-tree-dump.
Andrew Pinski [Sat, 14 Jul 2012 01:15:59 +0000 (01:15 +0000)]
octeon2-pipe-1.c: Use cleanup-rtl-dump rather than cleanup-tree-dump.

2012-07-13  Andrew Pinski  <apinski@cavium.com>

* gcc.target/mips/octeon2-pipe-1.c: Use cleanup-rtl-dump
rather than cleanup-tree-dump.
* gcc.target/mips/octeon-pipe-1.c: Likewise.

tree

From-SVN: r189477

12 years agoDaily bump.
GCC Administrator [Sat, 14 Jul 2012 00:17:09 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189476

12 years agore PR bootstrap/53955 (Missing prototypes in i386.c, bootstrap failure with --disable...
Bill Schmidt [Fri, 13 Jul 2012 22:33:31 +0000 (22:33 +0000)]
re PR bootstrap/53955 (Missing prototypes in i386.c, bootstrap failure with --disable-build-poststage1-with-cxx)

2012-07-13  Bill Schmidt  <wschmidt@linux.ibm.com>

PR bootstrap/53955
* config/spu/spu.c (spu_init_cost): Mark static.
(spu_add_stmt_cost): Likewise.
(spu_finish_cost): Likewise.
(spu_destroy_cost_data): Likewise.
* config/i386/i386.c (ix86_init_cost): Mark static.
(ix86_add_stmt_cost): Likewise.
(ix86_finish_cost): Likewise.
(ix86_destroy_cost_data): Likewise.
* config/rs6000/rs6000.c (rs6000_init_cost): Mark static.
(rs6000_add_stmt_cost): Likewise.
(rs6000_finish_cost): Likewise.
(rs6000_destroy_cost_data): Likewise.

From-SVN: r189473

12 years agofilenames.h: #include "hashtab.h".
Doug Evans [Fri, 13 Jul 2012 22:12:28 +0000 (22:12 +0000)]
filenames.h: #include "hashtab.h".

include/
* filenames.h: #include "hashtab.h".
(filename_hash, filename_eq): Declare.
libiberty/
* filename_cmp.c (filename_hash, filename_eq): New functions.

From-SVN: r189472

12 years agoggc.h (ggc_internal_alloc_stat, [...]): Add ATTRIBUTE_MALLOC.
Steven Bosscher [Fri, 13 Jul 2012 17:51:34 +0000 (17:51 +0000)]
ggc.h (ggc_internal_alloc_stat, [...]): Add ATTRIBUTE_MALLOC.

* ggc.h (ggc_internal_alloc_stat, ggc_alloc_typed_stat,
ggc_internal_cleared_alloc_stat, ggc_cleared_alloc_htab_ignore_args,
ggc_cleared_alloc_ptr_array_two_args, ggc_splay_alloc): Add
ATTRIBUTE_MALLOC.
* alloc-pool.h (pool_alloc): Likewise.

* final.c (final): Do not loop to find max_uid.

From-SVN: r189470

12 years agoemit-rtl.c (make_debug_insn_raw, [...]): Make static.
Steven Bosscher [Fri, 13 Jul 2012 15:56:04 +0000 (15:56 +0000)]
emit-rtl.c (make_debug_insn_raw, [...]): Make static.

* emit-rtl.c (make_debug_insn_raw, make_jump_insn_raw): Make static.
* rtl.h (make_debug_insn_raw, make_jump_insn_raw): Remove prototypes.

From-SVN: r189467

12 years agore PR regression/53953 (g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not...
Jason Merrill [Fri, 13 Jul 2012 15:08:55 +0000 (11:08 -0400)]
re PR regression/53953 (g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not matching))

PR c++/53953
* method.c (synthesized_method_walk): Initialize no_implicit_p sooner.

From-SVN: r189465

12 years agoctors.exp: Explicitely specify -O0.
Richard Guenther [Fri, 13 Jul 2012 13:25:13 +0000 (13:25 +0000)]
ctors.exp: Explicitely specify -O0.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* testsuite/libmudflap.c++/ctors.exp: Explicitely specify -O0.
* testsuite/libmudflap.c++/c++frags.exp: Likewise.
* testsuite/libmudflap.cth/cthfrags.exp: Likewise.
* testsuite/libmudflap.c/cfrags.exp: Likewise.
* testsuite/libmudflap.c/externs.exp: Likewise.

From-SVN: r189464

12 years agofail11-frag.c: Adjust to not look like memset.
Richard Guenther [Fri, 13 Jul 2012 13:11:37 +0000 (13:11 +0000)]
fail11-frag.c: Adjust to not look like memset.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* testsuite/libmudflap.c/fail11-frag.c: Adjust to not look like memset.
* testsuite/libmudflap.c/fail12-frag.c: Likewise.

From-SVN: r189463

12 years agore PR target/53907 (gcc uses unaligned load when aligned load was requested)
Richard Guenther [Fri, 13 Jul 2012 13:01:06 +0000 (13:01 +0000)]
re PR target/53907 (gcc  uses unaligned load when aligned load was requested)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53907
* tree-ssa-forwprop.c (associate_pointerplus): New function.
(ssa_forward_propagate_and_combine): Call it.

* gcc.target/i386/pr53907.c: New testcase.

From-SVN: r189462

12 years agore PR tree-optimization/53922 (VRP: semantic conflict between range_includes_zero_p...
Richard Guenther [Fri, 13 Jul 2012 11:21:39 +0000 (11:21 +0000)]
re PR tree-optimization/53922 (VRP: semantic conflict between range_includes_zero_p and value_inside_range)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53922
* tree-vrp.c (value_inside_range): Change prototype to take
min/max instead of value-range.
(range_includes_zero_p): Likewise.  Return the result from
value_inside_range.
(extract_range_from_binary_expr_1): Adjust to handle dont-know
return value from range_includes_zero_p.
(extract_range_from_unary_expr_1): Likewise.
(compare_range_with_value): Likewise.
(vrp_meet_1): Likewise.

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

From-SVN: r189461

12 years agotm.texi: Regenerate.
Bill Schmidt [Fri, 13 Jul 2012 11:12:33 +0000 (11:12 +0000)]
tm.texi: Regenerate.

2012-07-13  Bill Schmidt  <wschmidt@linux.ibm.com>

* doc/tm.texi: Regenerate.
* doc/tm.texi.in (TARGET_VECTORIZE_INIT_COST): New hook.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
* targhooks.c (default_init_cost): New function.
(default_add_stmt_cost): Likewise.
(default_finish_cost): Likewise.
(default_destroy_cost_data): Likewise.
* targhooks.h (default_init_cost): New decl.
(default_add_stmt_cost): Likewise.
(default_finish_cost): Likewise.
(default_destroy_cost_data): Likewise.
* target.def (init_cost): New DEFHOOK.
(add_stmt_cost): Likewise.
(finish_cost): Likewise.
(destroy_cost_data): Likewise.
* target.h (struct _stmt_vec_info): New extern decl.
(stmt_vectype): Likewise.
(stmt_in_inner_loop_p): Likewise.
* tree-vectorizer.h (stmt_info_for_cost): New struct/typedef.
(stmt_vector_for_cost): New VEC/typedef.
(add_stmt_info_to_vec): New function.
(struct _slp_tree): Remove cost.inside_of_loop field.
(struct _slp_instance): Remove cost.inside_of_loop field; add
stmt_cost_vec field.
(SLP_INSTANCE_INSIDE_OF_LOOP_COST): Remove macro.
(SLP_INSTANCE_STMT_COST_VEC): New accessor macro.
(SLP_TREE_INSIDE_OF_LOOP_COST): Remove macro.
(struct _vect_peel_extended_info): Add stmt_cost_vec field.
(struct _loop_vec_info): Add target_cost_data field.
(LOOP_VINFO_TARGET_COST_DATA): New accessor macro.
(struct _bb_vec_info): Add target_cost_data field.
(BB_VINFO_TARGET_COST_DATA): New accessor macro.
(struct _stmt_vec_info): Remove cost.inside_of_loop field.
(STMT_VINFO_INSIDE_OF_LOOP_COST): Remove macro.
(stmt_vinfo_set_inside_of_loop_cost): Remove function.
(init_cost): New function.
(add_stmt_cost): Likewise.
(finish_cost): Likewise.
(destroy_cost_data): Likewise.
(vect_model_simple_cost): Change parameter list.
(vect_model_store_cost): Likewise.
(vect_model_load_cost): Likewise.
(record_stmt_cost): New extern decl.
(vect_get_load_cost): Change parameter list.
(vect_get_store_cost): Likewise.
* tree-vect-loop.c (new_loop_vec_info): Call init_cost.
(destroy_loop_vec_info): Call destroy_cost_data.
(vect_estimate_min_profitable_iters): Remove old calculation of
inside costs; call finish_cost instead.
(vect_model_reduction_cost): Call add_stmt_cost instead of old
inside-costs calculation.
(vect_model_induction_cost): Likewise.
* tree-vect-data-refs.c (vect_get_data_access_cost): Change to
return a stmt_vector_for_cost; modify calls to vect_get_load_cost
and vect_get_store_cost to obtain the value to return.
(vect_peeling_hash_get_lowest_cost): Obtain a stmt_cost_vec from
vect_get_data_access_cost and store it in the minimum peeling
structure.
(vect_peeling_hash_choose_best_peeling): Change the parameter list
to add a (stmt_vector_for_cost *) output parameter, and set its value.
(vect_enhance_data_refs_alignment): Ignore the new return value from
calls to vect_get_data_access_cost; obtain stmt_cost_vec from
vect_peeling_hash_choose_best_peeling and pass its contents to the
target cost model.
* tree-vect-stmts.c (stmt_vectype): New function.
(stmt_in_inner_loop_p): Likewise.
(record_stmt_cost): Likewise.
(vect_model_simple_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_model_promotion_demotion_cost): Call add_stmt_cost instead of
old calculation; don't call stmt_vinfo_set_inside_of_loop_cost.
(vect_model_store_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; add stmt_cost_vec
parameter to vect_get_store_cost call; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_get_store_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation.
(vect_model_load_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; add stmt_cost_vec
parameter to vect_get_load_cost call; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_get_load_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation.
(vectorizable_call): Add NULL parameter to vect_model_simple_cost call.
(vectorizable_conversion): Likewise.
(vectorizable_assignment): Likewise.
(vectorizable_shift): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_store): Add NULL parameter to vect_model_store_cost call.
(vectorizable_load): Add NULL parameter to vect_model_load_cost call.
(new_stmt_vec_info): Don't set STMT_VINFO_INSIDE_OF_LOOP_COST.
* config/spu/spu.c (TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
(spu_init_cost): New function.
(spu_add_stmt_cost): Likewise.
(spu_finish_cost): Likewise.
(spu_destroy_cost_data): Likewise.
* config/i386/i386.c (ix86_init_cost): New function.
(ix86_add_stmt_cost): Likewise.
(ix86_finish_cost): Likewise.
(ix86_destroy_cost_data): Likewise.
(TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
* config/rs6000/rs6000.c (TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
(rs6000_init_cost): New function.
(rs6000_add_stmt_cost): Likewise.
(rs6000_finish_cost): Likewise.
(rs6000_destroy_cost_data): Likewise.
* tree-vect-slp.c (vect_free_slp_instance): Free stmt_cost_vec.
(vect_create_new_slp_node): Don't set SLP_TREE_INSIDE_OF_LOOP_COST.
(vect_get_and_check_slp_defs): Add stmt_cost_vec parameter; add
stmt_cost_vec parameter to vect_model_store_cost and
vect_model_simple_cost calls.
(vect_build_slp_tree): Remove inside_cost parameter; add stmt_cost_vec
parameter; add stmt_cost_vec parameter to vect_get_and_check_slp_defs,
vect_model_load_cost, and recursive vect_build_slp_tree calls; prevent
calculating cost more than once for loads; remove inside_cost
parameter from recursive vect_build_slp_tree calls; call
record_stmt_cost instead of old calculation.
(vect_analyze_slp_instance): Allocate stmt_cost_vec and save it with
the instance; free it on premature exit; remove inside_cost parameter
from vect_build_slp_tree call; add stmt_cost_vec parameter to
vect_build_slp_tree call; don't set SLP_INSTANCE_INSIDE_OF_LOOP_COST.
(new_bb_vec_info): Call init_cost.
(destroy_bb_vec_info): Call destroy_cost_data.
(vect_bb_vectorization_profitable_p): Call add_stmt_cost for each
statement recorded with an SLP instance; call finish_cost instead of
the old calculation.
(vect_update_slp_costs_according_to_vf): Record statement costs from
SLP instances, multiplying by the appropriate number of copies; don't
update SLP_INSTANCE_INSIDE_OF_LOOP_COST.

From-SVN: r189460

12 years agore PR c/53937 (Pack'ing struct causes gcc to not recognize that an field's address...
Richard Guenther [Fri, 13 Jul 2012 09:45:00 +0000 (09:45 +0000)]
re PR c/53937 (Pack'ing struct causes gcc to not recognize that an field's address is aligned)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR middle-end/53937
* builtins.c (get_pointer_alignment_1): Handle constant
pointers.

From-SVN: r189458

12 years agore PR libstdc++/53657 ([C++11] pair(pair&&) move constructor is non-trivial)
Paolo Carlini [Fri, 13 Jul 2012 08:59:58 +0000 (08:59 +0000)]
re PR libstdc++/53657 ([C++11] pair(pair&&) move constructor is non-trivial)

2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53657
* include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
per C++11.
* include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
(const_iterator, _Pair&&)): Constrain with std::is_constructible,
per LWG2005.
* include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
multimap<>::insert(const_iterator, _Pair&&)): Likewise.
* include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
_Insert<>::insert(const_iterator, _Pair&&)): Likewise.
* include/debug/unordered_map: Adjust.
* include/debug/map.h: Likewise.
* include/debug/multimap.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/map.h: Likewise.
* include/profile/multimap.h: Likewise.

From-SVN: r189456

12 years agore PR rtl-optimization/53908 (csa removes needed memory load)
Hans-Peter Nilsson [Fri, 13 Jul 2012 08:58:46 +0000 (08:58 +0000)]
re PR rtl-optimization/53908 (csa removes needed memory load)

PR rtl-optimization/53908
* gcc.dg/torture/pr53908.c: New test.

From-SVN: r189455

12 years agore PR rtl-optimization/53908 (csa removes needed memory load)
Richard Sandiford [Fri, 13 Jul 2012 08:53:24 +0000 (08:53 +0000)]
re PR rtl-optimization/53908 (csa removes needed memory load)

PR rtl-optimization/53908
* df-problems.c (can_move_insns_across): When doing
memory-reference book-keeping, handle call insns.

Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org>
From-SVN: r189454

12 years agogimple.c (gimple_types_compatible_p_1): Remove redundant type attribute comparisons.
Richard Guenther [Fri, 13 Jul 2012 08:15:10 +0000 (08:15 +0000)]
gimple.c (gimple_types_compatible_p_1): Remove redundant type attribute comparisons.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_types_compatible_p_1): Remove redundant
type attribute comparisons.
(gimple_canonical_types_compatible_p): Likewise.

From-SVN: r189453

12 years agore PR c++/53531 (<,,,,> accepted as template arguments for variadic template)
Jonathan Wakely [Fri, 13 Jul 2012 07:53:12 +0000 (07:53 +0000)]
re PR c++/53531 (<,,,,> accepted as template arguments for variadic template)

PR c++/53531
* testsuite/g++.dg/cpp0x/variadic135.C: New.

From-SVN: r189452

12 years agoDaily bump.
GCC Administrator [Fri, 13 Jul 2012 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r189448

12 years agopt.c (instantiate_decl): Check typedefs access here.
Jason Merrill [Thu, 12 Jul 2012 22:57:16 +0000 (18:57 -0400)]
pt.c (instantiate_decl): Check typedefs access here.

* pt.c (instantiate_decl): Check typedefs access here.
(instantiate_template_1): Not here.

From-SVN: r189444

12 years agopt.c (deduction_tsubst_fntype): Just suppress access checking.
Jason Merrill [Thu, 12 Jul 2012 22:57:03 +0000 (18:57 -0400)]
pt.c (deduction_tsubst_fntype): Just suppress access checking.

* pt.c (deduction_tsubst_fntype): Just suppress access checking.
(instantiate_template_1): Set DECL_TI_TEMPLATE before access checking.
(push_deduction_access_scope, pop_deduction_access_scope): Remove.

From-SVN: r189443

12 years agotrans-expr.c (conv_isocbinding_procedure): Generate
Tobias Burnus [Thu, 12 Jul 2012 21:32:48 +0000 (23:32 +0200)]
trans-expr.c (conv_isocbinding_procedure): Generate

2012-07-12  Tobias Burnus  <burnus@net-b.de>

        * trans-expr.c (conv_isocbinding_procedure): Generate
        * c_f_pointer code
        inline.

2012-07-12  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/c_f_pointer_shape_tests_5.f90: New.
        * gfortran.dg/c_f_pointer_tests_3.f90: Update
        scan-tree-dump-times pattern.

From-SVN: r189442

12 years agore PR rtl-optimization/53176 (gcc.dg/lower-subreg-1.c FAILs)
Hans-Peter Nilsson [Thu, 12 Jul 2012 21:14:14 +0000 (21:14 +0000)]
re PR rtl-optimization/53176 (gcc.dg/lower-subreg-1.c FAILs)

PR rtl-optimization/53176
* rtlanal.c (rtx_cost): Adjust default cost for X with a
UNITS_PER_WORD factor for all X according to the size of
its mode, not just for SUBREGs with untieable modes.
Handle SET.  Use factor * factor for MULT, DIV, UDIV,
MOD, UMOD.

From-SVN: r189441

12 years agoi386.md (QImode and HImode cmove splitters): Merge QImode and HImode splitters.
Uros Bizjak [Thu, 12 Jul 2012 16:18:09 +0000 (18:18 +0200)]
i386.md (QImode and HImode cmove splitters): Merge QImode and HImode splitters.

* config/i386/i386.md (QImode and HImode cmove splitters): Merge
QImode and HImode splitters.  Use ix86_comparison_operator.
Explicitly match FLAGS_REG.
(DFmode cmove splitter): Explicitly match FLAGS_REG.

From-SVN: r189440

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:56:02 +0000 (12:56 +0200)]
[multiple changes]

2012-07-12  Vasiliy Fofanov  <fofanov@adacore.com>

* vms_data.ads: Add VMS qualifiers for -gnatn1/2 switches.

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* exp_ch5.adb, exp_pakd.adb, rtsfind.ads, freeze.adb, sem_util.adb,
sem_util.ads, exp_aggr.adb
(Exp_Aggr.Packed_Array_Aggregate_Handled): Simplify processing
for reverse storage order aggregate.
(Exp_Pakd.Byte_Swap): New utility routine used by...
(Exp_Pakd.Expand_Bit_Packed_Element_Set,
Expand_Packed_Element_Reference): For the case of a free-standing
packed array with reverse storage order, perform byte swapping.
(Rtsfind): Make new entities RE_Bswap_{16,32,64} available.
(Freeze.Check_Component_Storage_Order): New utility routine
to enforce legality rules for nested composite types whose
enclosing composite has an explicitly defined Scalar_Storage_Order
attribute.
(Sem_Util.In_Reverse_Storage_Order_Object): Renamed from
Sem_Util.In_Reverse_Storage_Order_Record, as SSO now applies to
array types as well.
(Exp_Ch5.Expand_Assign_Array): Remove now unnecessary kludge
for change of scalar storage order in assignments. The Lhs and
Rhs now always have the same scalar storage order.

2012-07-12  Hristian Kirtchev  <kirtchev@adacore.com>

* g-debpoo.adb (Allocate): Add local constant
No_Element. Initialize the allocated memory chunk to No_Element.

2012-07-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly
the case of an instance of a child unit where a formal derived
type DT is an extension of a type T declared in a parent unit,
and the actual in the instance of the child is the type T declared
in the parent instance, and that actual is not a derived type.

2012-07-12  Eric Botcazou  <ebotcazou@adacore.com>
    Tristan Gingold  <gingold@adacore.com>

* system-hpux-ia64.ads: Enable ZCX by default.
* gcc-interface/Makefile.in: Use alternate stack on ia64-hpux.
Change soext to .so.

From-SVN: r189439

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:49:10 +0000 (12:49 +0200)]
[multiple changes]

2012-07-12  Robert Dewar  <dewar@adacore.com>

* s-atopri.adb, s-atopri.ads: Minor reformatting.

2012-07-12  Robert Dewar  <dewar@adacore.com>

* ali.adb: Add circuitry to read new named form of restrictions lines.
* debug.adb: Add doc for new -gnatd.R switch (used positional
notation for output of restrictions data in ali file).
* lib-writ.adb: Implement new named format for restrictions lines.
* lib-writ.ads: Add documentation for new named format for
restrictions in ali files.
* restrict.adb, restrict.ads, sem_prag.adb: Update comments.
* rident.ads: Go back to withing System.Rident
* s-rident.ads: Add extensive comment on dealing with consistency
checking.

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb, scos.ads: Emit detailed SCOs for SELECT statements.

From-SVN: r189438

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:43:18 +0000 (12:43 +0200)]
[multiple changes]

2012-07-12  Robert Dewar  <dewar@adacore.com>

* sem_disp.adb: Minor reformatting
* s-bytswa.ads: Minor comment update.

2012-07-12  Vincent Pucci  <pucci@adacore.com>

* exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body):
Atomic_Load_N replaced by Lock_Free_Read_N. Atomic_Compare_Exchange_N
replaced by Lock_Free_Try_Write_N.
Renaming of several local variables. For
procedure, Expected_Comp declaration moved to the declaration
list of the procedure.
* rtsfind.ads: RE_Atomic_Compare_Exchange_8,
RE_Atomic_Compare_Exchange_16, RE_Atomic_Compare_Exchange_32,
RE_Atomic_Compare_Exchange_64, RE_Atomic_Load_8,
RE_Atomic_Load_16, RE_Atomic_Load_32, RE_Atomic_Load_64,
RE_Atomic_Synchronize, RE_Relaxed removed.  RE_Lock_Free_Read_8,
RE_Lock_Free_Read_16, RE_Lock_Free_Read_32, RE_Lock_Free_Read_64,
RE_Lock_Free_Try_Write_8, RE_Lock_Free_Try_Write_16,
RE_Lock_Free_Try_Write_32, RE_Lock_Free_Try_Write_64 added.
* s-atopri.adb: New file.
* s-atopri.ads (Atomic_Compare_Exchange_8): Renaming of
parameters.  Import primitive __sync_val_compare_and_swap_1.
(Atomic_Compare_Exchange_16): Renaming of parameters.
Import primitive __sync_val_compare_and_swap_2.
(Atomic_Compare_Exchange_32): Renaming of parameters.
Import primitive __sync_val_compare_and_swap_4.
(Atomic_Compare_Exchange_64): Renaming of parameters.  Import
primitive __sync_val_compare_and_swap_8.
(Atomic_Load_8): Ptr renames parameter X.
(Atomic_Load_16): Ptr renames parameter X.
(Atomic_Load_32): Ptr renames parameter X.
(Atomic_Load_64): Ptr renames parameter X.
(Lock_Free_Read_8): New routine.
(Lock_Free_Read_16): New routine.
(Lock_Free_Read_32): New routine.
(Lock_Free_Read_64): New routine.
(Lock_Free_Try_Write_8): New routine.
(Lock_Free_Try_Write_16): New routine.
(Lock_Free_Try_Write_32): New routine.
(Lock_Free_Try_Write_64): New routine.

From-SVN: r189437

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:37:17 +0000 (12:37 +0200)]
[multiple changes]

2012-07-12  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb, exp_ch9.adb, sem_ch9.adb, exp_aggr.adb: Minor
reformatting.

2012-07-12  Vincent Pucci  <pucci@adacore.com>

* sem_dim.adb (Analyze_Dimension_Function_Call): Reformatting of error
msgs for elementary functions.

2012-07-12  Vincent Pucci  <pucci@adacore.com>

* sem_attr.adb (Eval_Attribute): Minor reformatting.

2012-07-12  Pascal Obry  <obry@adacore.com>

* prj-nmsc.adb (Check_Library_Attributes): Allow the same library
project in different project tree (different aggregated projects).

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* s-bytswa.adb, g-bytswa.adb, g-bytswa.ads, s-bytswa.ads: Further
reorganization of byte swapping routines.

2012-07-12  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Check_Dispatching_Context): Refine legality
checks on tagg indeterminate calls to abstract operations,
that appear in the context of other calls.

From-SVN: r189436

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:33:23 +0000 (12:33 +0200)]
[multiple changes]

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* s-bytswa.adb (Swapped2.Bswap16): Remove local function,
no longer needed.

2012-07-12  Javier Miranda  <miranda@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): For
attributes 'access, 'unchecked_access and 'unrestricted_access,
iff the current instance reference is located in a protected
subprogram or entry then rewrite the access attribute to be the
name of the "_object" parameter.

2012-07-12  Tristan Gingold  <gingold@adacore.com>

* raise.h: Revert previous patch: structure is used in init.c
by vms.

2012-07-12  Vincent Celier  <celier@adacore.com>

* make.adb (Binding_Phase): If --subdirs was used, but not
-P, change the working directory to the specified subdirectory
before invoking gnatbind.
(Linking_Phase): If --subdirs was used, but not -P, change the working
directory to the specified subdirectory before invoking gnatlink.

2012-07-12  Vincent Pucci  <pucci@adacore.com>

* exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body):
For a procedure, instead of replacing each Comp reference by a
reference to Current_Comp, make a renaming Comp of Current_Comp
that rewrites the original renaming generated by the compiler
during the analysis. Move the declarations of the procedure
inside the generated block.
(Process_Stmts): Moved in the body
of Build_Lock_Free_Unprotected_Subprogram_Body.
(Process_Node):
Moved in the body of Build_Lock_Free_Unprotected_Subprogram_Body.
* sem_ch9.adb (Allows_Lock_Free_Implementation): Restrict any
non-elementary out parameters in protected procedures.

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Scalar_Storage_Order): Attribute applies to base type only.

From-SVN: r189435

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:30:29 +0000 (12:30 +0200)]
[multiple changes]

2012-07-12  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Convert_To_Positional): Increase acceptable size
of static aggregate when Static_Elaboration_Desired is requested.
Add a warning if the request cannot be satisfied either because
some components or some array bounds are non-static.

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* exp_pakd.adb: Minor reformatting.

2012-07-12  Tristan Gingold  <gingold@adacore.com>

* tracebak.c: Fix warnings.
* raise-gcc.c (__gnat_adjust_context): New function
(__gnat_personality_seh0): Call __gnat_adjust_context to adjust
PC in machine frame for exceptions that occur in the current
function.

2012-07-12  Thomas Quinot  <quinot@adacore.com>

* g-bytswa.adb, g-bytswa.ads, s-bytswa.adb, s-bytswa.ads, Makefile.rtl:
Move GNAT.Byte_Swapping to System (with a renaming under GNAT)
so that it is usable in expanded code.

2012-07-12  Tristan Gingold  <gingold@adacore.com>

* s-osinte-hpux.ads: Increase alternate stack size on hpux.

From-SVN: r189434

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:24:41 +0000 (12:24 +0200)]
[multiple changes]

2012-07-12  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Make_Neq_Body): Fix typo in comment.

2012-07-12  Eric Botcazou  <ebotcazou@adacore.com>

* tb-gcc.c (trace_callback): On IA-64/HP-UX, use workaround only
if USE_LIBUNWIND_EXCEPTIONS is defined.
* init.c: Further tweaks for IA-64/HP-UX.

2012-07-12  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c: Do not include unwind-dw2-fde.h. Adjust comments.
(db_region_for): Second argument is ip.  Do not recompute ip.
(action_kind): Remove typedef, add unhandler enum const.
(action_descriptor): Adjust type of kind field.
(db_action_for): Second argument is ip, do not recompute it.
(get_call_site_action_for): First argument is call_site, do not
recompute it.  Remove useless return.
(is_handled_by): Now return enum action_kind.
Handle GNAT_ALL_OTHERS first.
Return unhandler for GNAT_UNHANDLED_OTHERS.
(get_action_description_for): First argument is now ip, do not
recompute it.  Adjust code for call to is_handled_by.
(__gnat_notify_unhandled_exception): Add prototype.
(PERSONALITY_FUNCTION): Call get_ip_from_context.  Adjust calls.
Handle unhandler case.
(__gnat_cleanupunwind_handler): Add comments, add
ATTRIBUTE_UNUSED on arguments.
(__gnat_Unwind_RaiseException, __gnat_Unwind_ForcedUnwind): Define
only once.
* raise.h: Makes struct Exception_Data opaque.

From-SVN: r189433

12 years ago[multiple changes]
Arnaud Charlet [Thu, 12 Jul 2012 10:19:13 +0000 (12:19 +0200)]
[multiple changes]

2012-07-12  Robert Dewar  <dewar@adacore.com>

* make.adb, sem_ch9.adb, prj.adb, s-rident.ads, snames.ads-tmpl: Minor
reformatting.

2012-07-12  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Is_User_Defined_Equality): New subprogram.
(Make_Neq_Body): New subprogram.
(Make_Predefined_Primitive_Specs): Adding local variable
Has_Predef_Eq_ Renaming to ensure that we enable the machinery
which handles renamings of predefined primitive operators.

From-SVN: r189432

12 years agoDaily bump.
GCC Administrator [Thu, 12 Jul 2012 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r189431

12 years agojava-tree.h (force_evaluation_order): Remove prototype.
Steven Bosscher [Wed, 11 Jul 2012 22:54:34 +0000 (22:54 +0000)]
java-tree.h (force_evaluation_order): Remove prototype.

* java-tree.h (force_evaluation_order): Remove prototype.
* expr.c (force_evaluation_order): Remove unused function.

From-SVN: r189428

12 years agoAllow for / comments in g++.dg/debug/dwarf2/pubnames-2.C
Rainer Orth [Wed, 11 Jul 2012 15:09:41 +0000 (15:09 +0000)]
Allow for / comments in g++.dg/debug/dwarf2/pubnames-2.C

* g++.dg/debug/dwarf2/pubnames-2.C: Allow for / comments.

From-SVN: r189427

12 years agoDR 1402
Jason Merrill [Wed, 11 Jul 2012 11:53:23 +0000 (07:53 -0400)]
DR 1402

DR 1402
* method.c (synthesized_method_walk): Replace uses of msg with diag.
Correct handling of virtual bases with move operations.
(process_subob_fn, walk_field_subobs): Replace uses of msg with diag.

From-SVN: r189426

12 years agoexpr.h (can_move_by_pieces): Move prototype from here ...
Steven Bosscher [Wed, 11 Jul 2012 08:58:58 +0000 (08:58 +0000)]
expr.h (can_move_by_pieces): Move prototype from here ...

gcc/
* expr.h (can_move_by_pieces): Move prototype from here ...
* tree.h (can_move_by_pieces): ... to here.
* optabs.h (set_widening_optab_handler): Use XCNEW.
* gimplify.c: Do not include expr.h.

* toplev.c: Do not include dwarf2out.h.
* config/ia64/ia64.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/sparc/t-sparc (sparc.o): Fix dependencies.

* Makefile.in (toplev.o): Fix dependencies
(c-family/c-gimplify.o): Likewise.
(c-family/c-common.o): Likewise.

c-family/
* c-gimplify.c: Do not include basic-block.h.
* c-common.c: Do not include linfuncs.h.

cp/
* method.c: Do not include tree-pass.h.

fortran/
* trans.c: Do not include defaults.h.
* trans-intrinsic.c: Likewise.

java/
* decl.c: Do not include libfuncs.h.
* class.c: Do not include defaults.h.
* jvgenmain.c: Likewise.
* magnle.c: Likewise.
* Make-lang.in (decl.o): Fix dependencies.

From-SVN: r189425

12 years agobasic-block.h (struct edge_def): Use basic_block instead of basic_block_def *.
Steven Bosscher [Wed, 11 Jul 2012 08:46:17 +0000 (08:46 +0000)]
basic-block.h (struct edge_def): Use basic_block instead of basic_block_def *.

* basic-block.h (struct edge_def): Use basic_block instead of
basic_block_def *.
* cfgloop.h (struct loop_exit, struct loop): Likewise.
* gengenrtl.c (type_from_format): Likewise.  Also for 'tree'
instead of union tree_node *.
* rtl.h (union rtunion_def, emit_insn_before_noloc,
emit_insn_after_noloc, add_insn_before, add_insn_after,
debug_bb_slim): Likewise.
* tree-inline.h (struct copy_body_data): Likewise.
* sched-rgn.c (dump_region_dot): Likewise.
* gimple.h (struct gimple_statement_base, gimple_set_bb,
gsi_move_to_bb_end): Likewise.
* sched-vis.c (debug_bb_slim): Likewise.
(debug_bb_n_slim): Likewise.
* config/mn10300/mn10300.c (mn10300_insert_setlb_lcc): Likewise.
(mn10300_block_contains_call):

From-SVN: r189424

12 years agore PR target/53859 (ICE when calculate insn latency for armv7e-m arch in O2 level)
Greta Yorsh [Wed, 11 Jul 2012 08:41:37 +0000 (09:41 +0100)]
re PR target/53859 (ICE when calculate insn latency for armv7e-m arch in O2 level)

2012-07-10  Greta Yorsh  <Greta.Yorsh@arm.com>

gcc/
PR target/53859
* config/arm/arm.c (arm_early_load_addr_dep): Handle new
epilogue patterns.

gcc/testsuite

PR target/53859
* gcc.target/arm/pr53859.c: New test.

From-SVN: r189423

12 years ago* doc/extend.texi (Namespace Association): Alter cautionary text.
Jonathan Wakely [Wed, 11 Jul 2012 06:51:26 +0000 (06:51 +0000)]
* doc/extend.texi (Namespace Association): Alter cautionary text.

From-SVN: r189422

12 years agoDaily bump.
GCC Administrator [Wed, 11 Jul 2012 00:19:30 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r189420

12 years agore PR target/53886 (Seg fault in sh_insn_length_adjustment)
Oleg Endo [Tue, 10 Jul 2012 22:07:29 +0000 (22:07 +0000)]
re PR target/53886 (Seg fault in sh_insn_length_adjustment)

PR target/53886
* gcc.c-torture/compile/pr53886.c: New.

From-SVN: r189417

12 years agore PR target/53911 ([SH] Improve displacement addressing)
Oleg Endo [Tue, 10 Jul 2012 22:01:44 +0000 (22:01 +0000)]
re PR target/53911 ([SH] Improve displacement addressing)

PR target/53911
* config/sh/sh.md: Remove displacement addresssing related splits.

From-SVN: r189416

12 years agoImplement -freuse-stack= option
Xinliang David Li [Tue, 10 Jul 2012 20:26:38 +0000 (20:26 +0000)]
Implement -freuse-stack= option

From-SVN: r189413

12 years agoarm.md (movsi): Don't split symbol refs here.
Julian Brown [Tue, 10 Jul 2012 13:15:26 +0000 (13:15 +0000)]
arm.md (movsi): Don't split symbol refs here.

2012-07-10  Julian Brown  <julian@codesourcery.com>

* config/arm/arm.md (movsi): Don't split symbol refs here.
(define_split): New.

From-SVN: r189411

12 years agore PR bootstrap/53913 (resource.c:1179:5: error: 'current_function_decl' undeclared...
Andreas Schwab [Tue, 10 Jul 2012 11:48:00 +0000 (11:48 +0000)]
re PR bootstrap/53913 (resource.c:1179:5: error: 'current_function_decl' undeclared broke m68k bootstrap)

PR bootstrap/53913
* config/m68k/m68k.c (m68k_epilogue_uses): New.
* config/m68k/m68k.h (EPILOGUE_USES): Use it.
* config/m68k/m68k-protos.h (m68k_epilogue_uses): Add prototype.

From-SVN: r189410

12 years agoZap now unused builtin_mul_widen_even/odd target hooks
Richard Henderson [Tue, 10 Jul 2012 08:26:00 +0000 (01:26 -0700)]
Zap now unused builtin_mul_widen_even/odd target hooks

        * target.def (builtin_mul_widen_even, builtin_mul_widen_odd): Remove.
        * system.h (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Poison.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Poison.
        * config/i386/i386.c (IX86_BUILTIN_VEC_WIDEN_SMUL_ODD_V4SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_SMUL_ODD_V8SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_UMUL_ODD_V4SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_UMUL_ODD_V8SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_SMUL_EVEN_V4SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_UMUL_EVEN_V4SI): Remove.
        (IX86_BUILTIN_VEC_WIDEN_UMUL_EVEN_V8SI): Remove.
        (bdesc_args): Remove entries to match.
        (ix86_builtin_mul_widen_even, ix86_builtin_mul_widen_odd): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Remove.
        * config/rs6000/rs6000.c (rs6000_builtin_mul_widen_even): Remove.
        (rs6000_builtin_mul_widen_odd): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Remove.
        * config/spu/spu.c (spu_builtin_mul_widen_even): Remove.
        (spu_builtin_mul_widen_odd): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Remove.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Remove.
        * doc/tm.texi.in: Don't document the removed hooks.

From-SVN: r189409

12 years agoUse VEC_WIDEN_MULT_EVEN/ODD_EXPR in supportable_widening_operation
Richard Henderson [Tue, 10 Jul 2012 08:25:39 +0000 (01:25 -0700)]
Use VEC_WIDEN_MULT_EVEN/ODD_EXPR in supportable_widening_operation

        * tree-vect-stmts.c (supportable_widening_operation): Expand
        WIDEN_MULT_EXPR via VEC_WIDEN_MULT_EVEN/ODD_EXPR if possible.

From-SVN: r189408

12 years agoMove vector highpart emulation to the optabs layer
Richard Henderson [Tue, 10 Jul 2012 08:25:20 +0000 (01:25 -0700)]
Move vector highpart emulation to the optabs layer

        * expmed.c (expmed_mult_highpart): Rename from expand_mult_highpart.
        (expmed_mult_highpart_optab): Rename from expand_mult_highpart_optab.
        * optabs.c (can_mult_highpart_p): New.
        (expand_mult_highpart): New.
        * expr.c (expand_expr_real_2) [MULT_HIGHPART_EXPR): Use it.
        * tree-vect-generic.c (expand_vector_operations_1): Don't expand
        by pieces if can_mult_highpart_p.
        (expand_vector_divmod): Use can_mult_highpart_p and always
        generate MULT_HIGHPART_EXPR.
        * tree-vect-patterns.c (vect_recog_divmod_pattern): Likewise.
        * tree-vect-stmts.c (vectorizable_operation): Likewise.

From-SVN: r189407

12 years agospu: Rename patterns for vec_widen_<s>mult_even/odd_<mode>
Richard Henderson [Tue, 10 Jul 2012 08:24:51 +0000 (01:24 -0700)]
spu: Rename patterns for vec_widen_<s>mult_even/odd_<mode>

        * config/spu/spu-builtins.md (spu_mpy): Move to spu.md.
        (spu_mpyu, spu_mpyhhu, spu_mpyhh): Likewise.
        * config/spu/spu.md (vec_widen_smult_odd_v8hi): Rename from spu_mpy.
        (vec_widen_umult_odd_v8hi): Rename from spu_mpyu.
        (vec_widen_smult_even_v8hi): Rename from spu_mpyhh.
        (vec_widen_umult_even_v8hi): Rename from spu_mpyhhu.
        * config/spu/spu-builtins.def: Update pattern names to match.

From-SVN: r189406

12 years agors6000: Rename patterns for vec_widen_<s>mult_even/odd_<mode>
Richard Henderson [Tue, 10 Jul 2012 08:24:28 +0000 (01:24 -0700)]
rs6000: Rename patterns for vec_widen_<s>mult_even/odd_<mode>

        * config/rs6000/altivec.md (vec_widen_umult_even_v16qi): Rename
        from altivec_vmuleub.
        (vec_widen_smult_even_v16qi): Rename from altivec_vmulesb.
        (vec_widen_umult_even_v8hi): Rename from altivec_vmuleuh.
        (vec_widen_smult_even_v8hi): Rename from altivec_vmulesh.
        (vec_widen_umult_odd_v16qi): Rename from altivec_vmuloub.
        (vec_widen_smult_odd_v16qi): Rename from altivec_vmulosb.
        (vec_widen_umult_odd_v8hi): Rename from altivec_vmulouh.
        (vec_widen_smult_odd_v8hi): Rename from altivec_vmulosh.
        * config/rs6000/rs6000-builtin.def: Update pattern names to match.

From-SVN: r189405

12 years agoi386: Rename patterns for vec_widen_<s>mult_even/odd_<mode>
Richard Henderson [Tue, 10 Jul 2012 08:24:05 +0000 (01:24 -0700)]
i386: Rename patterns for vec_widen_<s>mult_even/odd_<mode>

        * config/i386/sse.md (vec_widen_umult_even_v8si): Rename from
        avx2_umulv4siv4di3.
        (vec_widen_umult_even_v4si): Rename from sse2_umulv2siv2di3.
        (vec_widen_smult_even_v8si): Rename from avx2_mulv4siv4di3.
        (mulv4si3): Remove XOP test shadowed by SSE4 test.
        * config/i386/i386.c (bdesc_args): Update pattern names.
        (ix86_expand_sse2_mulvxdi3): Likewise.
        (ix86_expand_mul_widen_evenodd): Likewise.  Remove XOP test
        shadowed by SSE4 test.

From-SVN: r189404

12 years agoAdd VEC_WIDEN_MULT_EVEN/ODD_EXPR
Richard Henderson [Tue, 10 Jul 2012 08:23:39 +0000 (01:23 -0700)]
Add VEC_WIDEN_MULT_EVEN/ODD_EXPR

        * tree.def (VEC_WIDEN_MULT_EVEN_EXPR, VEC_WIDEN_MULT_ODD_EXPR): New.
        * cfgexpand.c (expand_debug_expr): Handle them.
        * expr.c (expand_expr_real_2): Likewise.
        * fold-const.c (fold_binary_loc): Likewise.
        * gimple-pretty-print.c (dump_binary_rhs): Likewise.
        * optabs.c (optab_for_tree_code): Likewise.
        * tree-cfg.c (verify_gimple_assign_binary): Likewise.
        * tree-inline.c (estimate_operator_cost): Likewise.
        * tree-pretty-print.c (dump_generic_node): Likewise.
        * tree.c (commutative_tree_code): Likewise.
        * tree-vect-generic.c (expand_vector_operations_1): Likewise.
        Handle type change before looking up optab.
        * optabs.h (OTI_vec_widen_umult_even, OTI_vec_widen_umult_odd): New.
        (OTI_vec_widen_smult_even, OTI_vec_widen_smult_odd): New.
        (vec_widen_umult_even_optab, vec_widen_umult_odd_optab): New.
        (vec_widen_smult_even_optab, vec_widen_smult_odd_optab): New.
        * genopinit.c (optabs): Initialize them.
        * doc/md.texi: Document them.

From-SVN: r189403

12 years agotree.h (phi_arg_d): New field.
Dehao Chen [Tue, 10 Jul 2012 04:28:32 +0000 (04:28 +0000)]
tree.h (phi_arg_d): New field.

2012-07-10  Dehao Chen  <dehao@google.com>

* tree.h (phi_arg_d): New field.
* tree-flow-inline.h (gimple_phi_arg_block): New function.
(gimple_phi_arg_block_from_edge): New function.
(gimple_phi_arg_set_block): New function.
(gimple_phi_arg_has_block): New function.
(redirect_edge_var_map_block): New function.
* tree-flow.h (_edge_var_map): New field.
* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block
as used.
* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
redirect_edge_var_map_add.
* tree-outof-ssa.c (_elim_graph): New field.
(insert_partition_copy_on_edge): New parameter.
(insert_value_copy_on_edge): New parameter.
(insert_rtx_to_part_on_edge): New parameter.
(insert_part_to_rtx_on_edge): New parameter.
(elim_graph_add_edge): New parameter.
(elim_graph_remove_succ_edge): New parameter.
(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
(new_elim_graph): Add block debug info.
(clear_elim_graph): Likewise.
(delete_elim_graph): Likewise.
(elim_graph_add_node): Likewise.
(elim_graph_add_edge): Likewise.
(elim_graph_remove_succ_edge): Likewise.
(eliminate_build): Likewise.
(elim_forward): Likewise.
(elim_unvisited_predecessor): Likewise.
(elim_backward): Likewise.
(elim_create): Likewise.
(eliminate_phi): Likewise.
(insert_backedge_copies): Likewise.
* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
add_phi_arg.
(rewrite_add_phi_arguments): Likewise.
* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
* tree-ssa-tail-merge.c (replace_block_by): Likewise.
* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(add_exit_phis_edge): Likewise.
(split_loop_exit_edge): Likewise.
(copy_phi_node_args): Likewise.
(tree_transform_and_unroll_loop): Likewise.
* value-prof.c (gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
* tree-tailcall.c (add_successor_phi_arg): Likewise.
(eliminate_tail_call): Likewise.
(create_tailcall_accumulator): Likewise.
(tree_optimize_tail_calls_1): Likewise.
* tree-phinodes.c (add_phi_arg): Likewise.
(make_phi_node): Likewise.
(resize_phi_node): Likewise.
(remove_phi_arg_num): Likewise.
* omp-low.c (expand_parallel_call): Likewise.
(expand_omp_for_static_chunk): Likewise.
* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
Likewise.
(slpeel_update_phi_nodes_for_guard1): Likewise.
(slpeel_update_phi_nodes_for_guard2): Likewise.
(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
(set_prologue_iterations): Likewise.
(slpeel_tree_peel_loop_to_edge): Likewise.
(vect_loop_versioning): Likewise.
* tree-parloops.c (create_phi_for_local_result): Likewise.
(transform_to_exit_first_loop): Likewise.
(create_parallel_loop): Likewise.
* ipa-split.c (split_function): Likewise.
* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
(vect_create_epilog_for_reduction): Likewise.
* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
(cond_if_else_store_replacement_1): Likewise.
* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
(remove_forwarder_block_with_phi): Likewise.
* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
* tree-predcom.c (initialize_root_vars): Likewise.
(initialize_root_vars_lm): Likewise.
* sese.c (sese_add_exit_phis_edge): Likewise.
* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
* tree-ssa.c (flush_pending_stmts): Likewise.
(redirect_edge_var_map_add): Likewise.
(ssa_redirect_edge): Likewise.
* gimple-streamer-in.c (input_phi): Likewise.
* tree-vect-stmts.c (vectorizable_load): Likewise.
* tree-inline.c (copy_phis_for_bb): Likewise.
* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
* tree-switch-conversion.c (fix_phi_nodes): Likewise.
* tree-cfg.c (reinstall_phi_args): Likewise.
(gimple_make_forwarder_block): Likewise.
(add_phi_args_after_copy_edge): Likewise.
(gimple_duplicate_sese_tail): Likewise.

From-SVN: r189402

12 years agoDaily bump.
GCC Administrator [Tue, 10 Jul 2012 00:17:26 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189401

12 years agoDR 1402 PR c++/53733
Jason Merrill [Tue, 10 Jul 2012 00:03:23 +0000 (20:03 -0400)]
DR 1402 PR c++/53733

DR 1402
PR c++/53733
* cp-tree.h (FNDECL_SUPPRESS_IMPLICIT_DECL): New.
(struct lang_decl_fn): Add suppress_implicit_decl field.
* method.c (implicitly_declare_fn): Check it.
(process_subob_fn): Add no_implicit_p parm.
(walk_field_subobs, synthesized_method_walk): Likewise.
(maybe_explain_implicit_delete): Adjust.
(explain_implicit_non_constexpr): Adjust.

From-SVN: r189396

12 years agomethod.c (synthesized_method_walk): Avoid changing EH spec based on cleanups in other...
Jason Merrill [Tue, 10 Jul 2012 00:03:11 +0000 (20:03 -0400)]
method.c (synthesized_method_walk): Avoid changing EH spec based on cleanups in other places, too.

* method.c (synthesized_method_walk): Avoid changing
EH spec based on cleanups in other places, too.

From-SVN: r189395

12 years agore PR target/53886 (Seg fault in sh_insn_length_adjustment)
Oleg Endo [Mon, 9 Jul 2012 22:39:25 +0000 (22:39 +0000)]
re PR target/53886 (Seg fault in sh_insn_length_adjustment)

PR target/53886
* config/sh/sh.c (sequence_insn_p): New function.
(find_barrier, sh_insn_length_adjustment): Use it.

From-SVN: r189394

12 years agoerror.c (lang_decl_name): Use TFF_UNQUALIFIED_NAME flag.
Sterling Augustine [Mon, 9 Jul 2012 21:44:57 +0000 (21:44 +0000)]
error.c (lang_decl_name): Use TFF_UNQUALIFIED_NAME flag.

gcc/cp/ChangeLog
2012-07-09  Sterling Augustine  <saugustine@google.com>

* error.c (lang_decl_name): Use TFF_UNQUALIFIED_NAME flag.

gcc/testsuite/ChangeLog
2012-07-09  Sterling Augustine  <saugustine@google.com>

* g++.dg/debug/dwarf2/pubnames-2.C: New.

From-SVN: r189392

12 years agore PR target/53283 (Many failures on x86_64-apple-darwin10 after revision 186789)
Iain Sandoe [Mon, 9 Jul 2012 19:21:59 +0000 (19:21 +0000)]
re PR target/53283 (Many failures on x86_64-apple-darwin10 after revision 186789)

PR target/53283
* config/i386/i386.c (ix86_fold_builtin): Call SUBTARGET_FOLD_BUILTIN
if defined.
* config/darwin.h: Rename TARGET_FOLD_BUILTIN to
SUBTARGET_FOLD_BUILTIN.
* config/rs6000/darwin.h: Map TARGET_FOLD_BUILTIN onto
SUBTARGET_FOLD_BUILTIN.

From-SVN: r189391

12 years agodarwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Move NeXT runtime exceptions model...
Iain Sandoe [Mon, 9 Jul 2012 19:16:37 +0000 (19:16 +0000)]
darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Move NeXT runtime exceptions model setting from here ...

* config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Move NeXT
runtime exceptions model setting from here ...
* config/darwin.c (darwin_override_options): ... to here.

From-SVN: r189390

12 years agore PR middle-end/53887 (ICE in hoist_edge_and_branch_if_true, at tree-switch-conversi...
Steven Bosscher [Mon, 9 Jul 2012 18:53:35 +0000 (18:53 +0000)]
re PR middle-end/53887 (ICE in hoist_edge_and_branch_if_true, at tree-switch-conversion.c:79)

gcc/
PR tree-optimization/53887
* tree-cfg.c (group_case_labels_stmt): Make non-static.
* tree-flow.h (group_case_labels_stmt): Add prototype.
* tree-switch-conversion.c (process_switch): Use group_case_labels_stmt
to pre-process every switch.

testsuite/
PR tree-optimization/53887
* gcc.dg/pr53887.c: New test.

From-SVN: r189389

12 years agore PR c++/53882 (ICE in type_contains_placeholder_1, at tree.c:3015)
Jason Merrill [Mon, 9 Jul 2012 14:11:01 +0000 (10:11 -0400)]
re PR c++/53882 (ICE in type_contains_placeholder_1, at tree.c:3015)

PR c++/53882
* tree.c (type_contains_placeholder_1): Handle NULLPTR_TYPE.
(type_hash_eq): Likewise.

From-SVN: r189386

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:29:10 +0000 (15:29 +0200)]
[multiple changes]

2012-07-09  Pascal Obry  <obry@adacore.com>

* prj.adb (For_Every_Project_Imported_Context): Make sure we
callback with the project having sources.
Minor reformatting.

2012-07-09  Eric Botcazou  <ebotcazou@adacore.com>

* make.adb: Fix typo.

From-SVN: r189385

12 years agobuiltin-unreachable-6.c: New test.
Tom de Vries [Mon, 9 Jul 2012 13:28:57 +0000 (13:28 +0000)]
builtin-unreachable-6.c: New test.

2012-07-09  Tom de Vries  <tom@codesourcery.com>
    Richard Guenther  <rguenther@suse.de>

* gcc.dg/builtin-unreachable-6.c: New test.
* gcc.dg/builtin-unreachable-5.c: New test.

Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r189384

12 years agotree-ssa-ccp.c (optimize_unreachable): New function.
Tom de Vries [Mon, 9 Jul 2012 13:28:51 +0000 (13:28 +0000)]
tree-ssa-ccp.c (optimize_unreachable): New function.

2012-07-09  Tom de Vries  <tom@codesourcery.com>
    Richard Guenther  <rguenther@suse.de>

* tree-ssa-ccp.c (optimize_unreachable): New function.
(execute_fold_all_builtins): Use optimize_unreachable to optimize
BUILT_IN_UNREACHABLE.  Don't optimize after BUILT_IN_UNREACHABLE.

Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r189383

12 years agoRemove duplicate entries.
Eric Botcazou [Mon, 9 Jul 2012 13:27:47 +0000 (13:27 +0000)]
Remove duplicate entries.

From-SVN: r189381

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:27:22 +0000 (15:27 +0200)]
[multiple changes]

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* sem_ch9.adb (Check_Node): Allow attributes
that denote static function for lock-free implementation.
(Is_Static_Function): New routine.

2012-07-09  Tristan Gingold  <gingold@adacore.com>

* tracebak.c: Adjust skip_frames on Win64.

2012-07-09  Tristan Gingold  <gingold@adacore.com>

* init.c: Add __gnat_adjust_context_for_raise for ia64/hpux.
* raise-gcc.c: __gnat_cleanupunwind_handler: Do not call
_Unwind_GetGR on hpux when using libgcc unwinder.  Part of

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* exp_attr.adb, sem_attr.adb: Minor reformatting.
* par-ch13.adb, par-ch4.adb, par-util.adb: Reformatting
considering that internal attribute names are not defined anymore
in the main attribute names list.
* snames.adb-tmpl (Get_Attribute_Id): Special processinf
for names CPU, Dispatching_Domain and Interrupt_Priority.
(Is_Internal_Attribute_Name): Minor reformatting.
* snames.ads-tmpl: New list of internal attribute names. Internal
attributes moved at the end of the attribute Id list.

From-SVN: r189380

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:24:20 +0000 (15:24 +0200)]
[multiple changes]

2012-07-09  Robert Dewar  <dewar@adacore.com>

* freeze.adb: Minor code reorganization (use Ekind_In).
* exp_attr.adb, sem_ch9.adb par-ch4.adb, s-taprop-mingw.adb,
sem_attr.adb, exp_ch8.adb, snames.adb-tmpl, par-util.adb,
sem_ch13.adb, snames.ads-tmpl: Minor reformatting.

2012-07-09  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c: Adjust previous patch.

2012-07-09  Vincent Celier  <celier@adacore.com>

* make.adb (Compilation_Phase): Do not build libraries in
Codepeer mode (do not call Library_Phase).

From-SVN: r189379

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:19:56 +0000 (15:19 +0200)]
[multiple changes]

2012-07-09  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb: Extend previous change to elementary types.

2012-07-09  Javier Miranda  <miranda@adacore.com>

* exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Reverse
previous patch since unconditionally handling as renaming_as_body
renamings of predefined dispatching equality and unequality operator
cause visibility problems with private overridings of the equality
operator (see ACATS C854001).

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* exp_attr.adb (Signal_Bad_Attribute): Raise Program_Error in
case of internal attribute names (already rejected by the parser).
* par-ch13.adb (P_Representation_Clause): Complain if an internal
attribute name that comes from source occurs.
* par-ch4.adb (P_Name): Complain if an internal attribute name
occurs in the context of an attribute reference.
* par-util.adb (Signal_Bad_Attribute): Don't complain about
mispelling attribute with internal attributes.
* sem_attr.adb (Analyze_Attribute): Raise Program_Error in case
of internal attribute names (already rejected by the parser).
* snames.adb-tmpl (Is_Internal_Attribute_Name): New routine.
* snames.ads-tmpl: Attributes CPU, Dispatching_Domain and
Interrupt_Priority are marked as INT attributes since they
don't denote real attribute and are only used internally in
the compiler.
(Is_Internal_Attribute_Name): New routine.

From-SVN: r189378

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:14:52 +0000 (15:14 +0200)]
[multiple changes]

2012-07-09  Thomas Quinot  <quinot@adacore.com>

* einfo.adb (Set_Reverse_Storage_Order): Update assertion,
flag is now valid for array types as well.

2012-07-09  Tristan Gingold  <gingold@adacore.com>

* tracebak.c: Implement __gnat_backtrace for Win64 SEH.

2012-07-09  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Minor reformatting.

2012-07-09  Javier Miranda  <miranda@adacore.com>

* exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Handle as
renaming_as_body renamings of predefined dispatching equality
and unequality operators.

2012-07-09  Robert Dewar  <dewar@adacore.com>

* rident.ads: Do not instantiate r-ident.ads, this is now an
independent unit.

2012-07-09  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Write_DT): Avoid runtime crash of this debugging
routine.
* sem_disp.adb (Find_Dispatching_Time): Protect this routine
against partially decorated entities.

2012-07-09  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Size): Reject a size clause that specifies
a value greater than Int'Last for a scalar type.

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* sem_ch9.adb (Allows_Lock_Free_Implementation): type must support
atomic operation moved to the protected body case. No non-elementary
out parameter moved to the protected declaration case. Functions have
only one lock-free restriction.
(Analyze_Protected_Type_Declaration): Issue a warning when
Priority given with Lock_Free.

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* sem_dim.adb: Grammar of aspect Dimension fixed.

2012-07-09  Vincent Pucci  <pucci@adacore.com>

* freeze.adb (Freeze_Record_Type): Code reorg in order to avoid
pushing and popping the scope stack whenever a delayed aspect occurs.

2012-07-09  Gary Dismukes  <dismukes@adacore.com>

* s-os_lib.ads: Remove pragma Elaborate_Body, as
this is now unnecessary due to recently added pragma Preelaborate.

2012-07-09  Jose Ruiz  <ruiz@adacore.com>

* s-taprop-mingw.adb (Set_Priority): Remove the code that was
previously in place to reorder the ready queue when a task drops
its priority due to the loss of inherited priority.

From-SVN: r189377

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:09:52 +0000 (15:09 +0200)]
[multiple changes]

2012-07-09  Robert Dewar  <dewar@adacore.com>

* layout.adb, i-cstrea.ads, a-ststio.ads, prj-util.ads, sem_cat.adb,
s-commun.ads, s-ficobl.ads, s-os_lib.ads, s-fileio.ads: Minor
reformatting.

2012-07-09  Eric Botcazou  <ebotcazou@adacore.com>

* raise-gcc.c: Update comments. Fix typo.

2012-07-09  Thomas Quinot  <quinot@adacore.com>

* einfo.adb, einfo.ads, sem_attr.adb, sem_ch13.adb: Attribute
Scalar_Storage_Order can be defined or queried for array types as well
as record types.

From-SVN: r189376

12 years ago[multiple changes]
Arnaud Charlet [Mon, 9 Jul 2012 13:04:59 +0000 (15:04 +0200)]
[multiple changes]

2012-07-09  Tristan Gingold  <gingold@adacore.com>

* a-exexpr-gcc.adb (CleanupUnwind_Handler): Now imported from
raise-gcc.c
* raise-gcc.c (__gnat_cleanupunwind_handler): Defined.
Strictly follow the ABI convention on ia64.

2012-07-09  Gary Dismukes  <dismukes@adacore.com>

* a-ststio.ads: Add pragma Preelaborate, per AI05-0283.
* i-cstrea.ads (max_path_len): Change from variable to deferred
constant to allow it to be used as a bound in string component
in type System.File_IO.Temp_File_Record.
* s-os_lib.ads, s-commun.ads, s-ficobl.ads, s-fileio.ads: Add pragma
Preelaborate.
* s-fileio.adb (Get_Case_Sensitive): Move function inside
procedure Open.
(File_Names_Case_Sensitive): Move variable inside
procedure Open, to avoid violation of Preelaborate restriction
(due to call to Get_Case_Sensitive).

2012-07-09  Ed Schonberg  <schonberg@adacore.com>

* layout.adb (Set_Elem_Alignment): Protect against meaningless
size clause, to prevent overflow in internal computation of
alignment.

From-SVN: r189375

12 years agore PR bootstrap/53898 (bootstrap failure: graphite-optimize-isl.c: ISO C forbids...
Richard Guenther [Mon, 9 Jul 2012 12:40:51 +0000 (12:40 +0000)]
re PR bootstrap/53898 (bootstrap failure: graphite-optimize-isl.c: ISO C forbids an empty translation unit)

2012-07-09  Richard Guenther  <rguenther@suse.de>

PR bootstrap/53898
* graphite-optimize-isl.c: Make sure CU is not empty.

From-SVN: r189374