Bernd Schmidt [Tue, 8 Sep 2009 14:52:02 +0000 (14:52 +0000)]
bfin.c (np_check_regno, [...]): New static variables.
* config/bfin/bfin.c (np_check_regno, np_after_branch): New static
variables.
(note_np_check_stores): New function.
(harmless_null_pointer_p): New function.
(trapping_loads_p): New args NP_REG and AFTER_NP_BRANCH. Callers
changed. Take into account whether we're in the shadow of a condjump
that tested NP_REG for NULL.
Lose all code that tested for SEQUENCEs.
(workaround_speculation): Avoid inserting NOPs for loads that are
either always executed or a NULL pointer.
From-SVN: r151513
Jan Hubicka [Tue, 8 Sep 2009 13:59:20 +0000 (15:59 +0200)]
invoke.texi (early-inlining-insns): Reduce from 12 to 8.
* doc/invoke.texi (early-inlining-insns): Reduce from 12 to 8.
* params.def (early-inlining-insns): Likewise.
From-SVN: r151511
Joseph Myers [Tue, 8 Sep 2009 12:15:41 +0000 (13:15 +0100)]
* id.po: Update.
From-SVN: r151508
Joseph Myers [Tue, 8 Sep 2009 10:55:09 +0000 (11:55 +0100)]
i386-prefetch.exp: Skip tests when multilib flags contain -march.
* gcc.misc-tests/i386-prefetch.exp: Skip tests when multilib flags
contain -march.
* gcc.dg/tree-ssa/prefetch-7.c, gcc.target/i386/387-1.c,
gcc.target/i386/387-5.c, gcc.target/i386/cmov7.c,
gcc.target/i386/funcspec-1.c, gcc.target/i386/funcspec-8.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-1.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-2.c,
gcc.target/i386/isa-6.c, gcc.target/i386/lea.c,
gcc.target/i386/pentium4-not-mull.c, gcc.target/i386/sse-5.c,
gcc.target/i386/ssefn-1.c: Skip when multilib flags contain -march
options other than that used in dg-options.
From-SVN: r151506
Jakub Jelinek [Tue, 8 Sep 2009 09:25:47 +0000 (11:25 +0200)]
re PR rtl-optimization/41239 (Scheduler reorders division by zero before a call that might not return)
PR rtl-optimization/41239
* sched-int.h (struct deps): Add last_function_call_may_noreturn field.
* sched-rgn.c (deps_join): Join also last_function_call_may_noreturn
lists.
* sched-deps.c (sched_analyze_insn): Prevent moving trapping insns
across calls, as the calls might not always return normally.
(call_may_noreturn_p): New function.
(deps_analyze_insn): Update last_function_call_may_noreturn list.
(init_deps): Initialize it.
(remove_from_deps): Also remove calls from
last_function_call_may_noreturn list.
* gcc.c-torture/execute/pr41239.c: New test.
From-SVN: r151500
Eric Botcazou [Tue, 8 Sep 2009 06:57:47 +0000 (06:57 +0000)]
* gcc-interface/targtyps.c: Reorder include directives.
From-SVN: r151498
Jerry DeLisle [Tue, 8 Sep 2009 01:18:48 +0000 (01:18 +0000)]
re PR fortran/41192 (NAMELIST input with just a comment ("&NAME ! comment \") fails)
2009-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/41192
* gfortran.dg/namelist_59.f90: New test.
From-SVN: r151496
Jerry DeLisle [Tue, 8 Sep 2009 00:59:05 +0000 (00:59 +0000)]
re PR fortran/41192 (NAMELIST input with just a comment ("&NAME ! comment \") fails)
2009-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/41192
* io/list_read.c (eat_line): Enable eat_line to function on
internal units.
PR libgfortran/41219
* io/list_read.c (nml_read_obj): Replace GFC_DTYPE_UNKNOWN with
BT_NULL to get rid of warning.
From-SVN: r151495
GCC Administrator [Tue, 8 Sep 2009 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151494
Bernd Schmidt [Mon, 7 Sep 2009 21:40:23 +0000 (21:40 +0000)]
From Jie Zhang <jie.zhang@analog.com>:
* config/bfin/predicates.md (p_register_operand): New
predicate.
(dp_register_operand): New predicate.
* config/bfin/bfin-protos.h (WA_05000074): Define.
(ENABLE_WA_05000074): Define.
* config/bfin/bfin.c (bfin_cpus[]): Add WA_05000074 for
all cpus.
(bfin_gen_bundles): Put dsp32shiftimm instruction in slot[0].
* config/bfin/bfin.md (define_attr type): Add dsp32shiftimm.
(define_attr addrtype): Allow load/store register to be
P register.
(define_attr storereg): New.
(define_cpu_unit anomaly_05000074): New.
(define_insn_reservation dsp32shiftimm): New.
(define_insn_reservation dsp32shiftimm_anomaly_05000074): New.
(define_insn_reservation loadp): Cannot use slot2.
(define_insn_reservation loadsp): Cannot use slot2.
(define_insn_reservation storep): Cannot use slot2. Does not
apply when working around
05000074.
(define_insn_reservation storep_anomaly_05000074): New.
(define_insn_reservation storei): Does not apply when working
around
05000074.
(define_insn_reservation storei_anomaly_05000074): New.
(define_attr length): Add dsp32shiftimm case.
(define_insn movsi_insn32, movsi_insv, ashlsi3_insn, ashrsi3,
ror_one, rol_one, lshrsi3, lshrpdi3, ashrpdi3, movhiv2hi_low,
movhiv2hi_high, composev2hi, packv2hi, movv2hi_hi,
ssashiftv2hi3, ssashifthi3, ssashiftsi3, lshiftv2hi3, lshifthi3):
Set type as dsp32shiftimm for dsp32shiftimm alternatives.
From-SVN: r151490
Bernd Schmidt [Mon, 7 Sep 2009 18:59:49 +0000 (18:59 +0000)]
gcc/
From Mike Frysinger <michael.frysinger@analog.com>
* config/bfin/bfin-protos.h (bfin_cpu_type): Add BFIN_CPU_BF542M,
BFIN_CPU_BF544M, BFIN_CPU_BF547M, BFIN_CPU_BF548M, and BFIN_CPU_BF549M.
* config/bfin/bfin.c (bfin_cpus[]): Add 0.3 for bf542m, bf544m, bf547m,
bf548m, and bf549m.
* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __ADSPBF542M__
for BFIN_CPU_BF542M, __ADSPBF544M__ for BFIN_CPU_BF544M, __ADSPBF547M__
for BFIN_CPU_BF547M, __ADSPBF548M__ for BFIN_CPU_BF548M, and
__ADSPBF549M__ for BFIN_CPU_BF549M.
* config/bfin/t-bfin-elf (MULTILIB_MATCHES): Select bf532-none for
bf542m-none, bf544m-none, bf547m-none, bf548m-none, and bf549m-none.
* config/bfin/t-bfin-linux (MULTILIB_MATCHES): Likewise.
* config/bfin/t-bfin-uclinux (MULTILIB_MATCHES): Likewise.
* doc/invoke.texi (Blackfin Options): Document that -mcpu now accepts
bf542m, bf544m, bf547m, bf548m, and bf549m.
gcc/testsuite/
From Mike Frysinger <michael.frysinger@analog.com>
* gcc.target/bfin/mcpu-bf542m.c: New file.
* gcc.target/bfin/mcpu-bf544m.c: Likewise.
* gcc.target/bfin/mcpu-bf546m.c: Likewise.
* gcc.target/bfin/mcpu-bf548m.c: Likewise.
* gcc.target/bfin/mcpu-bf549m.c: Likewise.
From-SVN: r151488
Bernd Schmidt [Mon, 7 Sep 2009 18:42:50 +0000 (18:42 +0000)]
From Jie Zhang <jie.zhang@analog.com>:
* config/bfin/bfin-protos.h (enum bfin_cpu_type, bfin_cpu_type,
bfin_si_revision, bfin_workarounds): Move these ...
* config/bfin/bfin.h: ... here.
From-SVN: r151487
Bernd Schmidt [Mon, 7 Sep 2009 18:06:51 +0000 (18:06 +0000)]
bfin.md (UNSPEC_VOLATILE_STALL): New constant.
* config/bfin/bfin.md (UNSPEC_VOLATILE_STALL): New constant.
(attr "addrtype"): New member "spreg".
Use it if mem_spfp_address_operand is true for the address.
(attr "type"): New entry "stall".
(cpu_unit "load"): New.
(insn_reservations "load32", "loadp", "loadi"): Add reservation of
"load".
(insn_reservation "loadsp"): New.
(insn_reservation "load_stall1"): New.
(insn_reservation "load_stall3"): New.
(stall): New insn.
* config/bfin/predicates.md (const1_operand, const3_operand): New.
(mem_p_address_operand): Exclude stack and frame pointer based
addresses.
(mem_spfp_address_operand): New; match them here.
* config/bfin/bfin.c (add_sched_insns_for_speculation): New function.
(bfin_reorg): Call it if scheduling insns.
(bfin_gen_bundles): Remove dummy insns created by
add_sched_insns_for_speculation.
From-SVN: r151486
Martin Jambor [Mon, 7 Sep 2009 17:08:12 +0000 (19:08 +0200)]
re PR middle-end/41282 (Revision 151394 failed to compile mplayer)
2009-09-07 Martin Jambor <mjambor@suse.cz>
PR middle-end/41282
* tree-sra.c (create_artificial_child_access): Return NULL if
build_ref_for_offset fails.
(propagate_subacesses_accross_link): Allow build_ref_for_offset
and create_artificial_child_access to fail.
* testsuite/gcc.c-torture/compile/pr41282.c: New test.
From-SVN: r151484
Dmitry Gorbachev [Mon, 7 Sep 2009 15:41:52 +0000 (15:41 +0000)]
re PR c++/41214 (Null pointer dereferenced in _Unwind_SetGR())
PR c++/41214
* unwind-dw2.c (uw_init_context_1): Mark noinline.
* config/ia64/unwind-ia64.c (uw_init_context_1): Likewise.
* config/xtensa/unwind-dw2-xtensa.c (uw_init_context_1): Likewise.
From-SVN: r151482
Thomas Koenig [Mon, 7 Sep 2009 15:23:15 +0000 (15:23 +0000)]
re PR fortran/41197 (ICE with ALLOCATE and nonscalar STAT= variable)
2009-09-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/41197
* resolve_c (resolve_allocate_deallocate): Complain
if stat or errmsg varaible is an array.
2009-09-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/41197
* gfortran.dg/allocate_alloc_opt_1.f90: Use scalar
variables for stat and errmsg.
* gfortran.dg/deallocate_alloc_opt_1.f90: Likewise.
* gfortran.dg/allocate_stat_2.f90: New test.
From-SVN: r151480
Bernd Schmidt [Mon, 7 Sep 2009 15:13:40 +0000 (15:13 +0000)]
bfin.c (bfin_optimize_loop): When creating a new basic block, ensure it has an exit edge.
gcc/
* config/bfin/bfin.c (bfin_optimize_loop): When creating a new basic
block, ensure it has an exit edge. Emit a barrier after a jump.
gcc/testsuite/
* gcc.c-torture/compile/
20090907-1.c: New test.
From-SVN: r151479
Nick Clifton [Mon, 7 Sep 2009 14:48:02 +0000 (14:48 +0000)]
gcc.c (this_is_linker_script): New variable.
* gcc.c (this_is_linker_script): New variable. Like
this_is_library_file but for the %T constructor.
(end_going_arg): If this_is_linker_script is set then locate the
script and insert a --script switch before it
(do_spec_2): Initialise this_is_linker_script.
(do_spec_1): Likewise. Handle %T construct.
(eval_spec_function): Preserve this_is_linker_script.
* doc/invoke.texi: Document %T construct in spec files.
* config/m32c/m32c.h (LIB_SPEC): Use it.
From-SVN: r151477
H.J. Lu [Mon, 7 Sep 2009 13:38:27 +0000 (13:38 +0000)]
re PR libstdc++/41280 (Revision 151352 breaks 32bit libstdc++)
2009-09-07 H.J. Lu <hongjiu.lu@intel.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR libstdc++/41280
* configure.ac: Run "${multi_basedir}/config-ml.in" to generate
MULTISUBDIR = in subdirectory Makefiles, with ml_norecursion set.
* configure: Regenerate.
Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r151476
Andreas Krebbel [Mon, 7 Sep 2009 10:30:32 +0000 (10:30 +0000)]
rtl.h (PREFETCH_SCHEDULE_BARRIER_P): New macro.
2009-09-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* rtl.h (PREFETCH_SCHEDULE_BARRIER_P): New macro.
* sched-deps.c (sched_analyze_2): Make prefetches a hard barrier
when volatile flag is set.
* doc/rtl.texi (PREFETCH_SCHEDULE_BARRIER_P): Add documentation pieces.
From-SVN: r151475
Laurent GUERBY [Mon, 7 Sep 2009 09:25:08 +0000 (09:25 +0000)]
targtyps.c: Add missing include for tm_p.h.
2009-09-07 Laurent GUERBY <laurent@guerby.net>
* gcc-interface/targtyps.c: Add missing include for tm_p.h.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r151474
Laurent GUERBY [Mon, 7 Sep 2009 09:00:51 +0000 (09:00 +0000)]
make.adb: Add missing documentation for multilib handling.
2009-09-07 Laurent GUERBY <laurent@guerby.net>
* make.adb: Add missing documentation for multilib handling.
From-SVN: r151473
Eric Botcazou [Mon, 7 Sep 2009 06:25:59 +0000 (06:25 +0000)]
Fix typo
From-SVN: r151468
GCC Administrator [Mon, 7 Sep 2009 00:17:01 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151466
Eric Botcazou [Sun, 6 Sep 2009 21:15:45 +0000 (21:15 +0000)]
re PR bootstrap/41241 (bootstrap comparison failure)
PR bootstrap/41241
* combine-stack-adj.c (try_apply_stack_adjustment): Handle stores.
(combine_stack_adjustments_for_block): Allow insns between stack
adjustments and stores with corresponding with pre-(dec|inc)rement
or pre-modify.
From-SVN: r151463
Jakub Jelinek [Sun, 6 Sep 2009 19:31:55 +0000 (21:31 +0200)]
re PR bootstrap/41241 (bootstrap comparison failure)
PR bootstrap/41241
* combine-stack-adj.c (struct csa_memlist): Rename to...
(struct csa_reflist): ... this. Rename mem field to ref.
(free_csa_memlist): Rename to...
(free_csa_reflist): ... this.
(record_one_stack_memref): Rename to...
(record_one_stack_ref): ... this. Handle also REG_P.
(try_apply_stack_adjustment): Handle also REG_P.
(struct record_stack_memrefs_data): Rename to...
(struct record_stack_refs_data): ... this. Rename memlist field to
reflist.
(record_stack_memrefs): Rename to...
(record_stack_refs): ... this. For DEBUG_INSNs keep traversing
subexpressions instead of failing when a MEM contains SP references.
For SP itself in DEBUG_INSNs queue it also onto reflist chain.
(combine_stack_adjustments_for_block): Adjust for mem to ref renaming.
* gcc.dg/pr41241.c: New test.
From-SVN: r151462
Richard Guenther [Sun, 6 Sep 2009 16:49:48 +0000 (16:49 +0000)]
re PR c++/41144 (ice for legal code with -O2 in get_alias_set)
2009-09-06 Richard Guenther <rguenther@suse.de>
PR middle-end/41144
* tree.c (build_array_type): Do not record types marked
with structural equality in the canonical type hashtable.
* g++.dg/torture/pr41144.C: New testcase.
From-SVN: r151461
Richard Guenther [Sun, 6 Sep 2009 16:48:41 +0000 (16:48 +0000)]
re PR middle-end/41261 (ice with -O2 -fprofile-arcs when compiling Linux kernel)
2009-09-06 Richard Guenther <rguenther@suse.de>
PR middle-end/41261
* tree-ssa-alias.c (refs_may_alias_p_1): Bail out for function decls.
* gcc.dg/torture/pr41261.c: New testcase.
From-SVN: r151460
Paolo Carlini [Sun, 6 Sep 2009 15:41:38 +0000 (15:41 +0000)]
re PR libstdc++/41267 (vector<>::resize() from an empty vector calls memmove for 0 bytes (twice), wasting a lot of cpu time in a production PowerDNS)
2009-09-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/41267
* include/bits/stl_algobase.h (__copy_move::__copy_m,
__copy_move_backward::__copy_move_b): Don't call __builtin_memmove
with a null third argument.
From-SVN: r151459
GCC Administrator [Sun, 6 Sep 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151458
Richard Guenther [Sat, 5 Sep 2009 19:32:25 +0000 (19:32 +0000)]
re PR tree-optimization/41181 (internal compiler error when using x86_64-w64-mingw32-gcc to build ffmpeg ac3enc.c)
2009-09-05 Richard Guenther <rguenther@suse.de>
PR middle-end/41181
* tree-ssa-ccp.c (maybe_fold_stmt_addition): Use the correct type.
* gcc.c-torture/compile/pr41181.c: New testcase.
From-SVN: r151455
Richard Guenther [Sat, 5 Sep 2009 15:15:16 +0000 (15:15 +0000)]
re PR c++/41273 (ICE in add_virtual_operand, at tree-ssa-operands.c:638)
2009-09-05 Richard Guenther <rguenther@suse.de>
PR debug/41273
* tree-ssa-operands.c (get_tmr_operands): Pass through opf_no_vops.
* g++.dg/torture/pr41273.C: New testcase.
From-SVN: r151454
Richard Guenther [Sat, 5 Sep 2009 15:14:12 +0000 (15:14 +0000)]
re PR tree-optimization/41271 (FAIL: gcc.dg/matrix/matrix-2.c scan-ipa-dump-times matrix-reorg "Flattened 2 dimensions" 1)
2009-09-05 Richard Guenther <rguenther@suse.de>
PR middle-end/41271
* tree-ssa.c (useless_type_conversion_p): Drop qualifiers
before comparing function argument types.
From-SVN: r151453
Paul Thomas [Sat, 5 Sep 2009 14:20:51 +0000 (14:20 +0000)]
re PR fortran/41258 (internal compiler error: in find_typebound_proc_uop, at fortran/symbol.c:4575)
2009-09-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/41258
* primary.c (gfc_match_varspec): Do not look for typebound
procedures unless the derived type has a f2k_derived namespace.
2009-09-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/41258
* gfortran.dg/typebound_proc_12.f90 : New test.
From-SVN: r151451
Francois-Xavier Coudert [Sat, 5 Sep 2009 14:14:28 +0000 (14:14 +0000)]
re PR target/41024 (driver passes wrong parameter to as)
PR target/41024
* config/i386/mingw-w64.h (ASM_SPEC): Pass -v instead of -V to
the assembler.
From-SVN: r151450
Benjamin Kosnik [Sat, 5 Sep 2009 00:18:07 +0000 (00:18 +0000)]
revert: compatibility.cc: Make C++0x safe, add in explicit casts to bool for stream sentry objects.
2009-09-04 Benjamin Kosnik <bkoz@redhat.com>
Revert.
2009-08-06 Benjamin Kosnik <bkoz@redhat.com>
* src/compatibility.cc: Make C++0x safe, add in explicit casts to
bool for stream sentry objects.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/ostream_insert.h: Same.
* src/istream.cc: Same.
From-SVN: r151445
GCC Administrator [Sat, 5 Sep 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151444
Uros Bizjak [Fri, 4 Sep 2009 19:57:51 +0000 (21:57 +0200)]
revert: alpha.c (alpha_output_mi_thunk_osf): Allocate insn locators before emit_insn is called.
2009-09-04 Uros Bizjak <ubizjak@gmail.com>
Revert:
2009-08-18 Uros Bizjak <ubizjak@gmail.com>
* config/alpha/alpha.c (alpha_output_mi_thunk_osf): Allocate insn
locators before emit_insn is called.
From-SVN: r151441
Vladimir Makarov [Fri, 4 Sep 2009 19:36:26 +0000 (19:36 +0000)]
re PR bootstrap/41241 (bootstrap comparison failure)
2009-09-04 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/41241
* ira.c (update_equiv_reg): Revert my previous patch for the PR.
* reginfo.c (resize_reg_info): Call allocate_reg_info if necessary.
(reginfo_init): Don't call allocate_reg_info.
From-SVN: r151440
Uros Bizjak [Fri, 4 Sep 2009 19:32:04 +0000 (21:32 +0200)]
re PR target/41262 (ICE compiling 09/03/09 snapshot of gcc on DEC Alpha)
PR target/41262
* config/alpha/alpha.c (alpha_does_function_need_gp): Use
NONDEBUG_INSN_P instead of INSN_P.
From-SVN: r151439
Alexandre Oliva [Fri, 4 Sep 2009 19:03:49 +0000 (19:03 +0000)]
re PR debug/41225 (VTA: internal compiler error: in vect_stmt_relevant_p, at tree-vect-stmts.c:150)
gcc/ChangeLog:
PR debug/41225
* tree-vect-stmts.c (vect_stmt_relevant_p): Skip debug uses.
gcc/testsuite/ChangeLog:
PR debug/41225
* gfortran.dg/pr41225.f90: New.
From-SVN: r151438
Alexandre Oliva [Fri, 4 Sep 2009 18:59:50 +0000 (18:59 +0000)]
re PR target/41252 (Var tracking by default breaks arm-none-eabi build of newlib)
PR target/41252
* config/arm/vfp.md (*cmpdf_split_vfp): Fix src mode in the second
pattern of the split.
From-SVN: r151437
Alexandre Oliva [Fri, 4 Sep 2009 18:59:15 +0000 (18:59 +0000)]
* compare-debug: Grep for blank before dash to avoid grep -e.
From-SVN: r151436
Alexandre Oliva [Fri, 4 Sep 2009 18:58:34 +0000 (18:58 +0000)]
configure.ac (with-build-config): Document.
* configure.ac (with-build-config): Document. Handle without.
Handle missing argument.
* configure: Rebuilt.
From-SVN: r151435
Alexandre Oliva [Fri, 4 Sep 2009 18:56:39 +0000 (18:56 +0000)]
guality.h: Include stdint.h.
* gcc.dg/guality/guality.h: Include stdint.h. Drop unnecessary
unistd.h, sys/types.h and sys/wait.h.
(gualchk_t): New.
(GUALCVT): New.
(GUALCHKXPR, GUALCHKVAL, GUALCHKFLA): Use it.
(GUALITY_GDB_REDIRECT): New.
(GUALITY_GDB_ARGS): Use it.
From-SVN: r151434
Alexandre Oliva [Fri, 4 Sep 2009 18:55:45 +0000 (18:55 +0000)]
toplev.c (process_options): Move setter of flag_var_tracking before other tests that depend on it.
* toplev.c (process_options): Move setter of flag_var_tracking
before other tests that depend on it. Move down setter of
flag_rename_registers. Don't enable var-tracking-assignments
by default if selective scheduling is enabled. Warn if both
are enabled.
From-SVN: r151433
Alexandre Oliva [Fri, 4 Sep 2009 18:55:25 +0000 (18:55 +0000)]
var-tracking.c (dv_is_decl_p): Adjust NULL behavior to match comment.
* var-tracking.c (dv_is_decl_p): Adjust NULL behavior to match
comment. Use switch statement to catch overlaps between rtx
and tree codes. Accept FUNCTION_DECLs in addition to those in...
(IS_DECL_CODE): ... here. Remove.
(check_value_is_not_decl): Remove.
(dv_from_decl, dv_from_value): Check after conversion.
From-SVN: r151432
Richard Guenther [Fri, 4 Sep 2009 18:54:01 +0000 (18:54 +0000)]
re PR middle-end/41257 (Bogus error '*.LTHUNK0' aliased to undefined symbol '_ZN1CD1Ev')
2009-09-04 Richard Guenther <rguenther@suse.de>
PR middle-end/41257
* (cgraph_finalize_compilation_unit): Move finalizing aliases
after emitting tunks. Move emitting thunks and ctors from ...
(cgraph_optimize): ... here. Remove redundant
cgraph_analyze_functions.
* varasm.c (find_decl_and_mark_needed): Remove no longer
necessary check.
(finish_aliases_1): Adjust check for thunk aliases.
* g++.dg/torture/pr41257.C: New testcase.
From-SVN: r151431
Daniel Gutson [Fri, 4 Sep 2009 15:42:05 +0000 (15:42 +0000)]
arm.md (ctzsi2): Added braces to avoid warning that broke booststrap.
2009-09-04 Daniel Gutson <dgutson@codesourcery.com>
* config/arm/arm.md (ctzsi2): Added braces
to avoid warning that broke booststrap.
From-SVN: r151427
Ozkan Sezer [Fri, 4 Sep 2009 14:33:16 +0000 (14:33 +0000)]
re PR target/39065 (libiberty hashtab.c:hash_pointer() needs intptr_t)
2009-09-04 Ozkan Sezer <sezeroz@gmail.com>
PR target/39065
* configure.ac: Replace AC_CHECK_TYPE() for intptr_t and uintptr_t
with AC_TYPE_INTPTR_T and AC_TYPE_UINTPTR_T.
* config.in: Regenerated.
* configure: Regenerated.
From-SVN: r151423
Martin Jambor [Fri, 4 Sep 2009 11:08:12 +0000 (13:08 +0200)]
re PR tree-optimization/41112 (ACATS
c43205b fails at -O2 (tree-sra))
2009-09-04 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/41112
* tree-sra.c (build_ref_for_offset_1): Signal that we cannot
handle variable-bounded arrays.
(expr_with_var_bounded_array_refs_p): New function.
(analyze_access_subtree): Call expr_with_var_bounded_array_refs_p.
* testsuite/gnat.dg/array8.adb: New test.
From-SVN: r151420
Wolfgang Gellerich [Fri, 4 Sep 2009 10:11:00 +0000 (10:11 +0000)]
2097.md: Removed two incorrect bypasses.
2009-09-04 Wolfgang Gellerich <gellerich@de.ibm.com>
* config/s390/2097.md: Removed two incorrect bypasses.
(z10_fsimpdf): Fixed latency.
(z10_fhex): New insn_reservation.
(z10_floaddf): Fixed latency.
(z10_floadsf): Fixed latency.
(z10_ftrunctf): Fixed latency.
(z10_ftruncdf): Fixed latency.
* config/s390/s390.c (z10_cost): Fixed values.
(s390_adjust_priority): Added z10 path.
* config/s390/s390.md (type): Added fhex.
(*mov<mode>_64dfp): Updated type attribute.
(*mov<mode>_64): Updated type attribute.
(*mov<mode>_31): Updated type attribute.
(*mov<mode>"): Likewise.
* config/s390/2084.md (x_fsimpdf): Updated condition.
From-SVN: r151419
Tobias Burnus [Fri, 4 Sep 2009 09:25:00 +0000 (11:25 +0200)]
re PR fortran/41219 (libgfortran build warnings)
2009-09-04 Tobias Burnus <burnus@net-b.de>
PR fortran/41219
* intrinsics/getlog.c: Define _POSIX for MINGW32.
From-SVN: r151417
Andreas Krebbel [Fri, 4 Sep 2009 07:48:09 +0000 (07:48 +0000)]
s390.md ("*fmadd<mode>", [...]): Enable mem RTXs in the predicate for operand 1.
2009-09-04 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.md ("*fmadd<mode>", "*fmsub<mode>"): Enable mem
RTXs in the predicate for operand 1.
From-SVN: r151416
Jakub Jelinek [Fri, 4 Sep 2009 06:56:55 +0000 (08:56 +0200)]
guality.exp: Only run guality tests if a trivial testcase using guality.h compiles and links...
* gcc.dg/guality/guality.exp: Only run guality tests if a trivial
testcase using guality.h compiles and links and if a global variable
can be verified by gdb.
From-SVN: r151410
Daniel Gutson [Fri, 4 Sep 2009 02:52:08 +0000 (02:52 +0000)]
arm.md (UNSPEC_RBIT): New constant.
2009-09-03 Daniel Gutson <dgutson@codesourcery.com>
* config/arm/arm.md (UNSPEC_RBIT): New constant.
(rbitsi2): New insn.
(ctzsi2): New expand.
* config/arm/arm.h (CTZ_DEFINED_VALUE_AT_ZERO): New macro.
testsuite/
* gcc.target/arm/ctz.c: New test case.
From-SVN: r151402
Daniel Gutson [Fri, 4 Sep 2009 00:20:27 +0000 (00:20 +0000)]
Daniel Gutson added.
From-SVN: r151400
GCC Administrator [Fri, 4 Sep 2009 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r151399
Martin Jambor [Thu, 3 Sep 2009 21:25:00 +0000 (23:25 +0200)]
tree-sra.c (duplicate_expr_for_different_base): Removed.
2009-09-03 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (duplicate_expr_for_different_base): Removed.
(create_artificial_child_access): Use build_ref_for_offset instead
of duplicate_expr_for_different_base.
(propagate_subacesses_accross_link): Likewise.
From-SVN: r151394
Eric Botcazou [Thu, 3 Sep 2009 20:26:12 +0000 (20:26 +0000)]
Fix long line
From-SVN: r151393
Alexandre Oliva [Thu, 3 Sep 2009 20:11:24 +0000 (20:11 +0000)]
Move misplaced contrib/ChangeLog entry to config/.
From-SVN: r151392
Richard Sandiford [Thu, 3 Sep 2009 19:50:30 +0000 (19:50 +0000)]
mips.c (USEFUL_INSN_P): Use NONDEBUG_INSN_P instead of INSN_P.
gcc/
* config/mips/mips.c (USEFUL_INSN_P): Use NONDEBUG_INSN_P instead
of INSN_P.
(mips16e_collect_argument_saves): Skip debug instructions.
(mips_74k_agen_init): Use CALL_P || JUMP_P instead of !NONJUMP_INSN_P.
(mips16_lay_out_constants): Use USEFUL_INSN_P instead of INSN_P.
(r10k_insert_cache_barriers): Likewise.
(mips_reorg_process_insns): Likewise.
From-SVN: r151391
Joseph Myers [Thu, 3 Sep 2009 19:22:55 +0000 (20:22 +0100)]
* fi.po: Update.
From-SVN: r151389
Vladimir Makarov [Thu, 3 Sep 2009 18:33:25 +0000 (18:33 +0000)]
re PR bootstrap/41241 (bootstrap comparison failure)
2009-09-03 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/41241
* ira.c (update_equiv_reg): Remove check on class likely spill.
From-SVN: r151388
Loren J. Rittle [Thu, 3 Sep 2009 16:53:35 +0000 (16:53 +0000)]
dyn_load.c (HAVE_DL_ITERATE_PHDR): Break definition from use.
2009-09-03 Loren J. Rittle <ljrittle@acm.org>
* dyn_load.c (HAVE_DL_ITERATE_PHDR): Break definition from use.
Define for FreeBSD 7.0+.
From-SVN: r151387
Ozkan Sezer [Thu, 3 Sep 2009 16:46:00 +0000 (16:46 +0000)]
re PR target/39065 (libiberty hashtab.c:hash_pointer() needs intptr_t)
2009-09-03 Ozkan Sezer <sezeroz@gmail.com>
PR target/39065
* configure.ac: Also check for intptr_t.
* config.h.in: Regenerated.
* configure: Regenerated.
* hashtab.c (hash_pointer): Cast the pointer argument to intptr_t
instead of of long.
From-SVN: r151386
Jakub Jelinek [Thu, 3 Sep 2009 16:33:27 +0000 (18:33 +0200)]
re PR debug/41236 (RTL checking failure compiling libgcc)
PR debug/41236
* dwarf2out.c (loc_descriptor): Don't use SUBREG_REG macro on
SIGN_EXTEND or ZERO_EXTEND. Don't assume there is a REG inside of
it or SUBREG.
From-SVN: r151385
Jakub Jelinek [Thu, 3 Sep 2009 16:32:07 +0000 (18:32 +0200)]
re PR debug/41238 (VTA: bootstrap failure, ICE in loc_cmp, at var-tracking.c:2456)
PR debug/41238
* function.c (assign_parm_find_stack_rtl): Don't set mem attributes on
the stack slot if it is passed by invisible reference.
* var-tracking.c (vt_add_function_parameters): Handle arguments passed by
invisible reference.
From-SVN: r151384
Kai Tietz [Thu, 3 Sep 2009 15:49:00 +0000 (17:49 +0200)]
Revert revision 151379 for linux bootstrap failure for gstdint.h
From-SVN: r151382
Bernd Schmidt [Thu, 3 Sep 2009 15:37:28 +0000 (15:37 +0000)]
linux.h (TARGET_SUPPORTS_SYNC_CALLS): Define to 1.
gcc/
* config/bfin/linux.h (TARGET_SUPPORTS_SYNC_CALLS): Define to 1.
* config/bfin/uclinux.h (TARGET_SUPPORTS_SYNC_CALLS): Define to 1.
* config/bfin/bfin.h (TARGET_SUPPORTS_SYNC_CALLS): Provide default of
0.
* config/bfin/sync.md: New file.
* config/bfin/bfin.md: Include it.
(UNSPEC_ATOMIC): New.
(UNSPEC_ONES): Provide a unique number.
From Jie Zhang <jie.zhang@analog.com>:
* config/bfin/bfin.c (ret_regs): New.
(must_save_fp_p): Don't return true because of frame_pointer_needed.
(must_save_rets_p): New.
(n_regs_saved_by_prologue): Use must_save_rets_p instead of
current_function_is_leaf.
(do_link): Likewise.
(do_unlink): Likewise.
(expand_interrupt_handler_prologue): Use ret_regs array.
(expand_interrupt_handler_epilogue): Use ret_regs array and
pass return register to gen_return_internal.
(bfin_expand_epilogue): Pass return register to
gen_return_internal.
(bfin_expand_call): Explicitly clobber RETS.
* config/bfin/bfin.h (FUNCTION_RETURN_REGISTERS): Define.
* config/bfin/bfin.md (call_symbol_fdpic, call_value_symbol_fdpic,
call_insn_fdpic, call_value_insn_fdpic, call_symbol,
call_value_symbol, call_insn, call_value_insn): Explicitly clobber
RETS.
(return_internal): Take a reg rtx rather than the register number.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_sync_int_long):
Supported on Blackfin Linux targets.
From-SVN: r151381
Kai Tietz [Thu, 3 Sep 2009 14:18:38 +0000 (16:18 +0200)]
config.in (HAVE_STDINT_H): New.
2009-09-03 Kai Tietz <kai.tietz@onevision.com>
* config.in (HAVE_STDINT_H): New.
* configure.ac (GCC_HEADER_STDINT): Generated gstdint.h.
* configure: Regenerated.
* system.h (gstdint.h): Add include.
* Makefile.in (aclocal): Add config/stdint.m4.
* aclocal.m4: Regenerated.
From-SVN: r151379
H.J. Lu [Thu, 3 Sep 2009 13:19:01 +0000 (13:19 +0000)]
tree-parloops.c (parallelize_loops): Cast to HOST_WIDE_INT when comparing against estimated_loop_iterations_int return.
2009-09-03 H.J. Lu <hongjiu.lu@intel.com>
* tree-parloops.c (parallelize_loops): Cast to HOST_WIDE_INT
when comparing against estimated_loop_iterations_int return.
From-SVN: r151378
Richard Guenther [Thu, 3 Sep 2009 11:11:08 +0000 (11:11 +0000)]
dwarf2out.c (dwarf2out_do_cfi_asm): Remove check of eh_personality_libfunc.
2009-09-03 Richard Guenther <rguenther@suse.de>
* dwarf2out.c (dwarf2out_do_cfi_asm): Remove check of
eh_personality_libfunc.
From-SVN: r151376
Razya Ladelsky [Thu, 3 Sep 2009 09:38:54 +0000 (09:38 +0000)]
tree-parloops.c (separate_decls_in_region): Add space
* tree-parloops.c (separate_decls_in_region): Add space
From-SVN: r151374
Razya Ladelsky [Thu, 3 Sep 2009 09:10:36 +0000 (09:10 +0000)]
tree-parloops.c (separate_decls_in_region): Change the condition checking if there are reductions in the loop.
* tree-parloops.c (separate_decls_in_region): Change the condition
checking if there are reductions in the loop.
From-SVN: r151373
Razya Ladelsky [Thu, 3 Sep 2009 08:59:25 +0000 (08:59 +0000)]
re PR tree-optimization/38275 (bootstrap failure when -ftree-parallelize-loops=4 is enabled)
PR tree-optimization/38275
* tree-parloops.c (parallelize_loops): Replace profitability condition
for expected number of iterations.
* testsuite/gcc.dg/autopar/reduc-1char.c: Increase number
of iterations. Adjust the logic accordingly.
* testsuite/gcc.dg/autopar/reduc-2char.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-1.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-2.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-3.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-6.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-7.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-8.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-9.c: Ditto.
* testsuite/gcc.dg/autopar/pr39500-1.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-1short.c: Ditto.
* testsuite/gcc.dg/autopar/reduc-2short.c: Ditto.
* testsuite/gcc.dg/autopar/parallelization-1.c: Ditto.
From-SVN: r151372
Tobias Burnus [Thu, 3 Sep 2009 07:36:36 +0000 (09:36 +0200)]
re PR fortran/41219 (libgfortran build warnings)
2009-09-03 Tobias Burnus <burnus@net-b.de>
PR fortran/41219
* intrinsics/iso_c_binding.c (c_f_pointer_u0): Move variable
declaration out of the loop.
From-SVN: r151371
Alexandre Oliva [Thu, 3 Sep 2009 05:55:57 +0000 (05:55 +0000)]
configure.ac (--with-build-config): New.
ChangeLog:
* configure.ac (--with-build-config): New. Set BUILD_CONFIG.
Default to bootstrap-debug only if compare-debug works.
* configure: Rebuilt.
* Makefile.tpl: Make BUILD_CONFIG configure-configurable.
* Makefile.in: Rebuilt.
contrib/ChangeLog:
* bootstrap-debug-big.mk (STAGE2_CFLAGS): Drop -gtoggle.
* bootstrap-debug-lean.mk: Update comments.
(STAGE2_CFLAGS): Likewise.
(do-compare): Don't override.
gcc/ChangeLog:
* doc/invoke.texi (BUILD_CONFIG): Document --with-build-config.
(bootstrap-debug): Explain conditions in which it becomes default.
(bootstrap-debug-big): Rather than duplicate bootstrap-debug,
make it add to it.
From-SVN: r151367
Namhyung Kim [Thu, 3 Sep 2009 05:31:42 +0000 (05:31 +0000)]
invoke.texi (Optimize Options): Move -finline-small-functions to the -O2 list.
2009-09-03 Namhyung Kim <namhyung@gmail.com>
* doc/invoke.texi (Optimize Options): Move
-finline-small-functions to the -O2 list.
From-SVN: r151366
Alexandre Oliva [Thu, 3 Sep 2009 05:24:57 +0000 (05:24 +0000)]
toplev.c (process_options): Enable var-tracking-assignments by default if var-tracking is enabled.
* toplev.c (process_options): Enable var-tracking-assignments
by default if var-tracking is enabled.
From-SVN: r151362
David Daney [Thu, 3 Sep 2009 05:01:40 +0000 (05:01 +0000)]
cfgbuild.c (find_bb_boundaries): Split blocks containing a barrier.
2009-09-02 David Daney <ddaney@caviumnetworks.com>
* cfgbuild.c (find_bb_boundaries): Split blocks containing a
barrier.
* emit-rtl.c (prev_nonnote_insn_bb): New function.
* rtl.h (prev_nonnote_insn_bb): Declare it.
2009-09-02 David Daney <ddaney@caviumnetworks.com>
* gcc.c-torture/compile/builtin_unreachable-1.c: New testcase.
From-SVN: r151361
Diego Novillo [Thu, 3 Sep 2009 04:07:12 +0000 (00:07 -0400)]
[multiple changes]
2009-09-01 Diego Novillo <dnovillo@google.com>
* c-lang.c (lang_hooks): Remove const qualifier.
java/ChangeLog
* lang.c (lang_hooks): Remove const qualifier.
objc/ChangeLog
* objc-lang.c (lang_hooks): Remove const qualifier.
objcp/ChangeLog
* objcp-lang.c (lang_hooks): Remove const qualifier.
ada/ChangeLog
* gcc-interface/misc.c (lang_hooks): Remove const qualifier.
fortran/ChangeLog
* f95-lang.c (lang_hooks): Remove const qualifier.
cp/ChangeLog
* cp-lang.c (lang_hooks): Remove const qualifier.
2009-09-01 Diego Novillo <dnovillo@google.com>
* cgraph.c (cgraph_node_for_decl): New.
* cgraph.h (cgraph_node_for_decl): Declare.
* tree.c (host_integerp): Return 0 if T is NULL.
2009-09-01 Diego Novillo <dnovillo@google.com>
* tree.h (struct alias_pair): Move from varasm.c.
(alias_pairs): Likewise.
(TYPE_MAXVAL): Define.
(TYPE_MINVAL): Define.
(iterative_hash_host_wide_int): Declare.
(remove_unreachable_alias_pairs): Declare.
* tree-pass.h (pass_ipa_free_lang_data): Declare.
* diagnostic.c (default_diagnostic_starter): Make extern.
(default_diagnostic_finalizer): Make extern.
* diagnostic.h (default_diagnostic_starter): Declare.
(default_diagnostic_finalizer): Declare.
(default_tree_printer): Declare.
* toplev.c (default_tree_printer): Make extern.
2009-09-01 Richard Guenther <rguenther@suse.de>
Diego Novillo <dnovillo@google.com>
* cgraph.c (cgraph_add_new_function): Remove gimplification.
* cgraphunit.c (cgraph_expand_function): Do not emit
associated thunks from here.
(cgraph_emit_thunks): New.
(cgraph_optimize): Call it.
Return if any IPA pass finds an error.
* varasm.c (finish_aliases_1): Ignore errorneous aliases used
by thunks.
2009-09-01 Simon Baldwin <simonb@google.com>
Rafael Espindola <espindola@google.com>
Richard Guenther <rguenther@suse.de>
Doug Kwan <dougkwan@google.com>
Diego Novillo <dnovillo@google.com>
* tree.c: Include tree-pass.h, langhooks-def.h,
diagnostic.h, cgraph.h, timevar.h, except.h and debug.h.
(free_lang_data_in_type): New.
(need_assembler_name_p): New.
(free_lang_data_in_block): New.
(free_lang_data_in_decl): New.
(struct free_lang_data_d): New.
(add_tree_to_fld_list): New.
(find_decls_types_r): New.
(get_eh_types_for_runtime): New.
(find_decls_types_in_eh_region): New.
(find_decls_types_in_node): New.
(find_decls_types_in_var): New.
(free_lang_data_in_cgraph): New.
(free_lang_data): New.
(gate_free_lang_data): New.
(pass_ipa_free_lang_data): New.
2009-09-01 Diego Novillo <dnovillo@google.com>
* timevar.def (TV_IPA_FREE_LANG_DATA): Define.
* langhooks.h (struct lang_hooks): Add field free_lang_data.
(lang_hooks): Remove const qualifier.
* ipa.c (cgraph_remove_unreachable_nodes): Call
remove_unreachable_alias_pairs.
* except.c (add_type_for_runtime): Check if TYPE has
already been converted.
(lookup_type_for_runtime): Likewise.
(check_handled): Handle converted types.
* varasm.c (remove_unreachable_alias_pairs): New.
* gimple.c: Include demangle.h.
(gimple_decl_printable_name): New.
(gimple_fold_obj_type_ref): New.
* gimple.h (gimple_decl_printable_name): Declare.
(gimple_fold_obj_type_ref): Declare.
* passes.c (init_optimization_passes): Add pass
pass_ipa_free_lang_data.
* langhooks-def.h (LANG_HOOKS_FREE_LANG_DATA): Define.
(LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_FREE_LANG_DATA.
testsuite/ChangeLog
2009-09-01 Diego Novillo <dnovillo@google.com>
* gcc.dg/gomp/combined-1.c: Adjust expected pattern.
* g++.dg/tree-prof/inline_mismatch_args.C: Likewise.
* g++.dg/warn/unit-1.C: Likewise.
* g++.dg/ipa/iinline-1.C: Likewise.
* g++.dg/template/cond2.C: Adjust expected line location for the
error.
* g++.dg/template/pr35240.C: Likewise.
cp/ChangeLog
2009-09-01 Doug Kwan <dougkwan@google.com>
* tree.c (cp_fix_function_decl_p): New.
(cp_free_lang_data): New.
2009-09-01 Diego Novillo <dnovillo@google.com>
* Make-lang.in (decl2.o): Add dependency on $(POINTER_SET_H).
* decl2.c: Include pointer-set.h.
(collect_candidates_for_java_method_aliases): New.
(cp_write_global_declarations): Call it.
Add local variable CANDIDATES. If set, call
build_java_method_aliases.
(build_java_method_aliases): Add argument CANDIDATES.
Use it to determine if FNDECL should get a hidden alias.
* cp-objcp-common.h (LANG_HOOKS_FREE_LANG_DATA): Define.
* cp-tree.h (cp_free_lang_data): Declare.
2009-09-03 Richard Guenther <rguenther@suse.de>
* method.c (use_thunk): Use cgraph_finalize_function to hand
off thunks to the cgraph.
* semantics.c (emit_associated_thunks): Do not emit thunks
for really extern functions.
From-SVN: r151360
Alan Modra [Thu, 3 Sep 2009 02:02:09 +0000 (11:32 +0930)]
update copyright dates
From-SVN: r151359
GCC Administrator [Thu, 3 Sep 2009 00:16:36 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r151358
Richard Henderson [Thu, 3 Sep 2009 00:07:41 +0000 (17:07 -0700)]
* tb-gcc.c (__gnat_backtrace): Mark all arguments unused.
From-SVN: r151355
Loren J. Rittle [Wed, 2 Sep 2009 23:33:10 +0000 (23:33 +0000)]
install.texi (*-*-freebsd*): Update target information.
2009-09-02 Loren James Rittle <ljrittle@acm.org>
* doc/install.texi (*-*-freebsd*): Update target information.
From-SVN: r151354
Anatoly Sokolov [Wed, 2 Sep 2009 22:20:52 +0000 (02:20 +0400)]
hard-reg-set.h (call_fixed_regs): Remove.
* hard-reg-set.h (call_fixed_regs): Remove.
* reginfo.c (call_fixed_regs): Remove.
(init_reg_sets_1): Remove initialization of call_fixed_regs.
(globalize_reg): Don't use call_fixed_regs.
* caller-save.c (init_caller_save): Use call_fixed_reg_set instead of
call_fixed_regs.
From-SVN: r151353
Ralf Wildenhues [Wed, 2 Sep 2009 22:11:54 +0000 (22:11 +0000)]
v3: fix config.status instantiation of subdir makefiles.
libstdc++-v3/:
* configure.ac: Replace AC_CONFIG_COMMANDS([default])
instantiation with additional commands issued for each Makefile
in glibcxx_SUBDIRS, so `./config.status subdir/Makefile' also
runs these commands.
Add a separate AC_CONFIG_COMMANDS([generate-headers]) for
running `make' in include, passing `pch_build=' to `make'.
* configure: Regenerate.
From-SVN: r151352
Ralf Wildenhues [Wed, 2 Sep 2009 22:03:32 +0000 (22:03 +0000)]
Fix 'make clean' to remove stamp-host file in libstdc++-v3/include.
libstdc++-v3/:
PR libstdc++/41220
* include/Makefile.am (CLEANFILES): Add stamp-host.
* include/Makefile.in: Regenerate.
From-SVN: r151351
Michael Matz [Wed, 2 Sep 2009 21:13:34 +0000 (21:13 +0000)]
expr.h (emit_storent_insn, [...]): Declare.
* expr.h (emit_storent_insn, expand_expr_real_1,
expand_expr_real_2): Declare.
* expr.c (emit_storent_insn, expand_expr_real_1,
expand_expr_real_2): Export.
(store_expr): Setting and evaluating dont_return_target is
useless.
(expand_expr_real_1, <case GOTO_EXPR, RETURN_EXPR, SWITCH_EXPR,
LABEL_EXPR and ASM_EXPR>): Move to gcc_unreachable.
* except.c (expand_resx_expr): Rename to ...
(expand_resx_stmt): ... this. Rewrite to take gimple statement.
* except.h (expand_resx_stmt): Declare.
* stmt.c: Add include gimple.h
(expand_asm_expr): Rename to ...
(expand_asm_stmt): ... this. Rewrite to take gimple statement.
(expand_case): Rewrite to take gimple statement.
* tree.h (expand_asm_stmt): Declare.
(expand_case): Change prototype.
* Makefile.in (stmt.o): Depend on gimple.h.
* builtins.c (expand_builtin_synchronize): Build gimple asm
statement, not an ASM_EXPR.
* cfgexpand.c (gimple_cond_pred_to_tree, set_expr_location_r,
gimple_to_tree, release_stmt_tree): Remove.
(expand_gimple_cond): Don't call gimple_cond_pred_to_tree or
ggc_free, but hold comparison code and operands separately.
Call jumpif_1 and jumpifnot_1 instead of jumpif and jumpifnot.
(expand_call_stmt, expand_gimple_stmt_1,
expand_gimple_stmt): New helpers.
(expand_gimple_tailcall): Don't call gimple_to_tree, expand_expr_stmt,
release_stmt_tree. Call expand_gimple_stmt instead.
(expand_gimple_basic_block): Ditto.
* calls.c (emit_call_1): Don't look at EH regions here, make
fntree parameter useless.
(expand_call): New local rettype for TREE_TYPE(exp), use it
throughout. Remove local p, use addr instead.
Don't look at EH regions here.
From-SVN: r151350
Geoffrey Keating [Wed, 2 Sep 2009 20:26:15 +0000 (20:26 +0000)]
* btest-gcc.sh: Continue after bootstrap comparison failure.
From-SVN: r151349
Vladimir Makarov [Wed, 2 Sep 2009 18:54:25 +0000 (18:54 +0000)]
invoke.texi (-fsched-pressure): Document it.
2009-09-02 Vladimir Makarov <vmakarov@redhat.com>
* doc/invoke.texi (-fsched-pressure): Document it.
(-fsched-reg-pressure-heuristic): Remove it.
* reload.c (ira.h): Include.
(find_reloads): Add choosing reload on number of small spilled
classes.
* haifa-sched.c (ira.h): Include.
(sched_pressure_p, sched_regno_cover_class, curr_reg_pressure,
saved_reg_pressure, curr_reg_live, saved_reg_live,
region_ref_regs): New variables.
(sched_init_region_reg_pressure_info, mark_regno_birth_or_death,
initiate_reg_pressure_info, setup_ref_regs,
initiate_bb_reg_pressure_info, save_reg_pressure,
restore_reg_pressure, dying_use_p, print_curr_reg_pressure): New
functions.
(setup_insn_reg_pressure_info): New function.
(rank_for_schedule): Add pressure checking and insn issue time.
Remove comparison of insn reg weights.
(ready_sort): Set insn reg pressure info.
(update_register_pressure, setup_insn_max_reg_pressure,
update_reg_and_insn_max_reg_pressure,
sched_setup_bb_reg_pressure_info): New functions.
(schedule_insn): Add code for printing and updating reg pressure
info.
(find_set_reg_weight, find_insn_reg_weight): Remove.
(ok_for_early_queue_removal): Do nothing if pressure_only_p.
(debug_ready_list): Print reg pressure info.
(schedule_block): Ditto. Check insn issue time.
(sched_init): Set up sched_pressure_p. Allocate and set up some
reg pressure related info.
(sched_finish): Free some reg pressure related info.
(fix_tick_ready): Make insn always ready if pressure_p.
(init_h_i_d): Don't call find_insn_reg_weight.
(haifa_finish_h_i_d): Free insn reg pressure info.
* ira-int.h (ira_hard_regno_cover_class, ira_reg_class_nregs,
ira_memory_move_cost, ira_class_hard_regs,
ira_class_hard_regs_num, ira_no_alloc_regs,
ira_available_class_regs, ira_reg_class_cover_size,
ira_reg_class_cover, ira_class_translate): Move to ira.h.
* ira-lives.c (single_reg_class): Check mode to find how many
registers are necessary for operand.
(ira_implicitly_set_insn_hard_regs): New.
* common.opt (fsched-pressure): New options.
(fsched-reg-pressure-heuristic): Remove.
* ira.c (setup_eliminable_regset): Rename to
ira_setup_eliminable_regset. Make it external.
(expand_reg_info): Pass cover class to setup_reg_classes.
(ira): Call resize_reg_info instead of allocate_reg_info.
* sched-deps.c: Include ira.h.
(implicit_reg_pending_clobbers, implicit_reg_pending_uses): New.
(create_insn_reg_use, create_insn_reg_set, setup_insn_reg_uses,
reg_pressure_info, insn_use_p, mark_insn_pseudo_birth,
mark_insn_hard_regno_birth, mark_insn_reg_birth,
mark_pseudo_death, mark_hard_regno_death, mark_reg_death,
mark_insn_reg_store, mark_insn_reg_clobber,
setup_insn_reg_pressure_info): New.
(sched_analyze_1): Update implicit_reg_pending_uses.
(sched_analyze_insn): Find implicit sets, uses, clobbers of regs.
Use them to create dependencies. Set insn reg uses and pressure
info. Process reg_pending_uses in one place.
(free_deps): Free implicit sets.
(remove_from_deps): Remove implicit sets if necessary. Check
implicit sets when clearing reg_last_in_use.
(init_deps_global): Clear implicit_reg_pending_clobbers and
implicit_reg_pending_uses.
* ira.h (ira_hard_regno_cover_class, ira_reg_class_nregs,
ira_memory_move_cost, ira_class_hard_regs,
ira_class_hard_regs_num, ira_no_alloc_regs,
ira_available_class_regs, ira_reg_class_cover_size,
ira_reg_class_cover, ira_class_translate): Move from ira-int.h.
(ira_setup_eliminable_regset, ira_set_pseudo_classes,
ira_implicitly_set_insn_hard_regs): New prototypes.
* ira-costs.c (pseudo_classes_defined_p, allocno_p,
cost_elements_num): New variables.
(allocno_costs, total_costs): Rename to costs and
total_allocno_costs.
(COSTS_OF_ALLOCNO): Rename to COSTS.
(allocno_pref): Rename to pref.
(allocno_pref_buffer): Rename to pref_buffer.
(common_classes): Rename to regno_cover_class.
(COST_INDEX): New.
(record_reg_classes): Set allocno attributes only if allocno_p.
(record_address_regs): Ditto. Use COST_INDEX instead of
ALLOCNO_NUM.
(scan_one_insn): Use COST_INDEX and COSTS instead of ALLOCNO_NUM
and COSTS_OF_ALLOCNO.
(print_costs): Rename to print_allocno_costs.
(print_pseudo_costs): New.
(process_bb_node_for_costs): Split into 2 functions with new
function process_bb_for_costs. Pass BB to process_bb_for_costs.
(find_allocno_class_costs): Rename to find_costs_and_classes. Add
new parameter dump_file. Use cost_elements_num instead of
ira_allocnos_num. Make one iteration if preferred classes were
already calculated for scheduler. Make 2 versions of code
depending on allocno_p.
(setup_allocno_cover_class_and_costs): Check allocno_p. Use
regno_cover_class and COSTS instead of common_classes and
COSTS_OF_ALLOCNO.
(init_costs, finish_costs): New.
(ira_costs): Set up allocno_p and cost_elements_num. Call
init_costs and finish_costs.
(ira_set_pseudo_classes): New.
* rtl.h (allocate_reg_info): Remove.
(resize_reg_info): Change return type.
(reg_cover_class): New.
(setup_reg_classes): Add new parameter.
* sched-int.h (struct deps_reg): New member implicit_sets.
(sched_pressure_p, sched_regno_cover_class): New external
definitions.
(INCREASE_BITS): New macro.
(struct reg_pressure_data, struct reg_use_data): New.
(struct _haifa_insn_data): Remove reg_weight. Add members
reg_pressure, reg_use_list, reg_set_list, and
reg_pressure_excess_cost_change.
(struct deps): New member implicit_sets.
(pressure_p): New variable.
(COVER_CLASS_BITS, INCREASE_BITS): New macros.
(struct reg_pressure_data, struct reg_use_data): New.
(INSN_REG_WEIGHT): Remove.
(INSN_REG_PRESSURE, INSN_MAX_REG_PRESSURE, INSN_REG_USE_LIST,
INSN_REG_SET_LIST, INSN_REG_PRESSURE_EXCESS_COST_CHANGE): New
macros.
(sched_init_region_reg_pressure_info,
sched_setup_bb_reg_pressure_info): New prototypes.
* reginfo.c (struct reg_pref): New member coverclass.
(reg_cover_class): New function.
(reginfo_init, pass_reginfo_init): Move after free_reg_info.
(reg_info_size): New variable.
(allocate_reg_info): Make static. Setup reg_info_size.
(resize_reg_info): Use reg_info_size. Return flag of resizing.
(setup_reg_classes): Add a new parameter. Setup cover class too.
* Makefile.in (reload.o, haifa-sched.o, sched-deps.o): Add ira.h to the
dependencies.
* sched-rgn.c (deps_join): Set up implicit_sets.
(schedule_region): Set up region and basic blocks pressure
relative info.
* passes.c (init_optimization_passes): Move
pass_subregs_of_mode_init before pass_sched.
From-SVN: r151348
Kaveh R. Ghazi [Wed, 2 Sep 2009 18:06:40 +0000 (18:06 +0000)]
inline-3.c: Add -fpie when pic.
* gcc.dg/tree-ssa/inline-3.c: Add -fpie when pic.
* gcc.dg/tree-ssa/local-pure-const.c: Likewise.
From-SVN: r151346
Martin Jambor [Wed, 2 Sep 2009 17:52:18 +0000 (19:52 +0200)]
tree-sra.c (struct access): New field grp_hint.
2009-09-02 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): New field grp_hint.
(dump_access): Dump grp_hint.
(sort_and_splice_var_accesses): Set grp_hint if a group is read
multiple times.
(analyze_access_subtree): Only scalarize accesses with grp_hint set or
those which have been specifically read and somehow written to.
(propagate_subacesses_accross_link): Set grp_hint of right child and
also possibly of the left child.
* testsuite/gcc.dg/tree-ssa/sra-8.c: New testcase.
* testsuite/gcc.dg/memcpy-1.c: Add . to match pattern.
* testsuite/gcc.dg/uninit-I.c: XFAIL warning test.
* testsuite/g++.dg/warn/unit-1.C: XFAIL warning test.
From-SVN: r151345
Ian Lance Taylor [Wed, 2 Sep 2009 17:35:30 +0000 (17:35 +0000)]
macro.c (stringify_arg): Escape CPP_WCHAR tokens.
libcpp/:
* macro.c (stringify_arg): Escape CPP_WCHAR tokens.
gcc/testsuite/:
* gcc.dg/
20090902-1.c: New test.
From-SVN: r151343
Joseph Myers [Wed, 2 Sep 2009 16:40:22 +0000 (17:40 +0100)]
* es.po: Update.
From-SVN: r151337
Joseph Myers [Wed, 2 Sep 2009 16:00:24 +0000 (17:00 +0100)]
libstdc++.exp (libstdc++_init): Copy .tcc files under util/ to remote host.
* testsuite/lib/libstdc++.exp (libstdc++_init): Copy .tcc files
under util/ to remote host. Copy .h and .hpp files at more levels
under util/ to remote host.
From-SVN: r151336
Jason Merrill [Wed, 2 Sep 2009 15:48:52 +0000 (11:48 -0400)]
* semantics.c (describable_type): Don't pretend to be in a template.
From-SVN: r151335
Jason Merrill [Wed, 2 Sep 2009 15:48:44 +0000 (11:48 -0400)]
* ptree.c (cxx_print_type) [DECLTYPE_TYPE]: Print the expression.
From-SVN: r151334
Tristan Gingold [Wed, 2 Sep 2009 15:33:29 +0000 (15:33 +0000)]
(Reflect changes from binutils):
2009-09-02 Tristan Gingold <gingold@adacore.com>
* vmsbuild.com: Removed as unused and superceeded by makefile.vms.
* makefile.vms: Ported to Itanium VMS. Remove useless targets and
dependencies. Remove unused FORMAT variable.
* configure.com: New file to create build.com DCL script for
Itanium VMS or Alpha VMS.
From-SVN: r151333