uweigand [Thu, 30 Sep 2004 21:21:57 +0000 (21:21 +0000)]
* config/s390/s390.c (legitimate_reload_constant_p): Remove
floating point constant workaround.
(s390_secondary_input_reload_class): Handle PLUS reloads
with too-large constant.
(s390_expand_plus_operand): Likewise.
* config/s390/s390.md ("movdi"): Do not call force_const_mem.
("movsi"): Likewise. Also, remove workaround for non-general
operands.
("movdf"): Do not call force_const_mem.
("movsf"): Likewise. Merge expander with *movsf insn.
("*movsf"): Remove, merge with movsf expander.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88356
138bc75d-0d04-0410-961f-
82ee72b054a4
pbrook [Thu, 30 Sep 2004 20:24:33 +0000 (20:24 +0000)]
* config/arm/symbian.h (STARTFILE_SPEC): Remove crt*.o.
(ENDFILE_SPEC): Define.
* config/arm/t-symbian.h (EXTRA_MULTILIB_PARTS): Set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88355
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Sep 2004 19:32:07 +0000 (19:32 +0000)]
* config/alpha/qrnnd.asm: Mark for noexecstack.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88349
138bc75d-0d04-0410-961f-
82ee72b054a4
mkoch [Thu, 30 Sep 2004 18:27:53 +0000 (18:27 +0000)]
2004-09-30 Tom Tromey <tromey@redhat.com>
i * java/text/MessageFormat.java (Field): Constructor now
protected.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88346
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Thu, 30 Sep 2004 18:27:25 +0000 (18:27 +0000)]
* protoize.c, tree-cfg.c: Fix comment typos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88345
138bc75d-0d04-0410-961f-
82ee72b054a4
mkoch [Thu, 30 Sep 2004 18:21:42 +0000 (18:21 +0000)]
2004-09-30 Tom Tromey <tromey@redhat.com>
* javax/crypto/MacSpi.java: Fixed typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88344
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 30 Sep 2004 18:17:54 +0000 (18:17 +0000)]
PR c/17730
* c-typeck.c (lvalue_or_else): Pass msgid directly to error.
testsuite:
* gcc.dg/pr17730-1.c: New test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88343
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 30 Sep 2004 17:23:10 +0000 (17:23 +0000)]
2004-09-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/10975 (DR 453)
* include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
and __off == 0.
* docs/html/ext/howto.html: Add an entry for DR 453.
* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
move to...
* testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
move to...
* testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88341
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 30 Sep 2004 15:25:18 +0000 (15:25 +0000)]
* cp-tree.h (struct lang_decl): Shrink by reordering fields and
turning operator_code and fixed_offset into bitfields.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88337
138bc75d-0d04-0410-961f-
82ee72b054a4
mkoch [Thu, 30 Sep 2004 15:22:08 +0000 (15:22 +0000)]
2004-09-30 Michael Koch <konqueror@gmx.de>
* java/net/InetAddress.java: Reformatted.
(loopback): Initialize with Inet4Address object.
(static): Initialize ANY_IF with Inet4Address object.
(InetAddress): Removed unused package-private constructor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88336
138bc75d-0d04-0410-961f-
82ee72b054a4
mkoch [Thu, 30 Sep 2004 14:54:13 +0000 (14:54 +0000)]
2004-09-30 Michael Koch <konqueror@gmx.de>
* java/beans/Beans.java,
java/beans/EventHandler.java,
java/beans/EventSetDescriptor.java,
java/beans/Introspector.java,
java/beans/PropertyEditorManager.java,
java/beans/beancontext/BeanContext.java,
java/beans/beancontext/BeanContextChild.java,
java/beans/beancontext/BeanContextChildSupport.java,
java/beans/beancontext/BeanContextMembershipEvent.java:
Reordered import statements and removed redundant modifiers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88335
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Thu, 30 Sep 2004 14:09:45 +0000 (14:09 +0000)]
* tree-ssa-alias.c (collect_points_to_info_r): Move analysis of
expressions...
(add_pointed_to_expr): ... here.
Call add_pointed_to_expr for variables with DECL_INITIAL set.
* tree-dfa.c (add_referenced_var): Scan DECL_INITIAL of any
pointer variable, if set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88334
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Thu, 30 Sep 2004 12:25:34 +0000 (12:25 +0000)]
* config/sh/sh.c: Follow spelling conventions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88333
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Sep 2004 08:21:27 +0000 (08:21 +0000)]
* unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
* doc/tm.texi (DWARF_ZERO_REG): New.
* config/alpha/alpha.c (alpha_sa_mask, alpha_expand_prologue,
alpha_expand_epilogue): Revert 2003-09-30 change to store zero.
* config/alpha/alpha.h (DWARF_ZERO_REG): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88331
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Thu, 30 Sep 2004 02:16:46 +0000 (02:16 +0000)]
* check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
* decl.c (finish_method, java_add_stmt): Likewise.
* java-gimplify.c (java-gimplify.c): Likewise.
* jcf-write.c (generate_bytecode_insns): Likewise.
* lang.c (java_post_options): Likewise - call linemap_add.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88324
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Thu, 30 Sep 2004 02:16:00 +0000 (02:16 +0000)]
* java-tree.h: Redefine some macros and add soem declaration
to handle the USE_MAPPED_LOCATION case.
* parse.h (EXPR_WFL_QUALIFICATION): Use operand 1, not 2.
* java-tree.h (EXPR_WFL_FILENAME_NODE): Use operand 2, not 1.
* java-tree.def (EXPR_WITH_FILE_LOCATION): Only need two operands in
USE_MAPPED_LOCATION case, since EXPR_WFL_FILENAME_NODE is gone.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88323
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Thu, 30 Sep 2004 01:39:35 +0000 (01:39 +0000)]
* builtins.c (expand_builtin_strlen): Do not call emit_move_insn
with a PLUS as source operand.
(expand_movstr): Likewise.
(expand_builtin_stpcpy): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88322
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Sep 2004 01:22:07 +0000 (01:22 +0000)]
PR 17739
* tree-gimple.c (is_gimple_reg): Reject hard registers.
(is_gimple_asm_val): New.
* tree-gimple.h (is_gimple_asm_val): Declare.
* gimplify.c (gimplify_asm_expr): Use it.
* tree-pretty-print.c (print_declaration): Dump hard regs.
* tree-outof-ssa.c (check_replaceable): Don't check for hard regs.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
* tree-ssa-pre.c (is_undefined_value): Likewise.
* tree-ssa-copy.c (may_propagate_copy): Likewise.
(may_propagate_copy_into_asm): Protect DECL_HARD_REGISTER.
* tree-ssa.c (warn_uninit): Likewise.
* tree.h (DECL_HARD_REGISTER): Check for VAR_DECL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88321
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Thu, 30 Sep 2004 01:19:46 +0000 (01:19 +0000)]
* directives.c (cpp_handle_deferred_pragma): Save, clear and restore
cb.line_change. Otherwise do_pragma will call the line_change
call-back with a meaningless line number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88320
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 30 Sep 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88316
138bc75d-0d04-0410-961f-
82ee72b054a4
fjahanian [Thu, 30 Sep 2004 00:09:42 +0000 (00:09 +0000)]
FIxed an IMA bug showed up in parse and gzip.
OKed by Richard Henderson.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88312
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Wed, 29 Sep 2004 23:08:32 +0000 (23:08 +0000)]
2004-09-29 Daniel Berlin <dberlin@dberlin.org>
* tree.h (INDIRECT_REF_P): New macro.
* alias.c (get_alias_set): Use it
(nonoverlapping_memrefs_p): Ditto.
* emit-rtl.c (mem_expr_equal_p): Ditto.
(set_mem_attributes_minus_bitpos): Ditto.
(is_gimple_addressable): Ditto.
(get_base_address): Ditto.
* tree-ssa-alias.c (find_ptr_derefernece): Ditto.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Ditto.
* tree-ssa-dom.c (record_equivalences_from_stmt): Ditto.
* tree-ssa-loop-im.c (is_call_clobbered_ref): Ditto.
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Ditto.
(add_address_candidates): Ditto.
(rewrite_address_base): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88309
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Wed, 29 Sep 2004 21:23:35 +0000 (21:23 +0000)]
* tree-flow.h (struct bb_ann_d): Remove num_preds member.
* tree-into-ssa.c (rewrite_into_ssa): Don't set it.
(rewrite_ssa_into_ssa): Likewise.
* tree-phinodes.c (create_phi_node): Access the number of
predecessor edges using EDGE_COUNT() and not num_preds.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88308
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 29 Sep 2004 21:14:43 +0000 (21:14 +0000)]
2004-09-29 Paolo Carlini <pcarlini@suse.de>
* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
(str()): Slightly tweak, protect from pptr() == 0.
(_M_update_egptr()): Likewise.
* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
for an empty buffer use __beg instead of _M_string.capacity().
* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2004-09-29 Paolo Carlini <pcarlini@suse.de>
Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_io.h (class constraint_buf): New, extended
and templatized version of constraint_filebuf; add typedefs for
streambuf/stringbuf/filebuf and wchar_t counterparts.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88307
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Wed, 29 Sep 2004 20:27:26 +0000 (20:27 +0000)]
PR c/7425
* c-decl.c (merge_decls): Merge TREE_DEPRECATED.
cp:
* decl.c (duplicate_decls): Merge TREE_DEPRECATED.
testsuite:
* gcc.dg/deprecated-3.c, g++.dg/warn/deprecated-2.C: New tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88303
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 29 Sep 2004 20:18:49 +0000 (20:18 +0000)]
revert accidental checkin
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88302
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 29 Sep 2004 19:51:17 +0000 (19:51 +0000)]
PR libgcj/17715:
* Makefile.in: Rebuilt.
* Makefile.am (libgcj-@gcc_version@.jar): Include properties
files.
(all_property_files): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88300
138bc75d-0d04-0410-961f-
82ee72b054a4
echristo [Wed, 29 Sep 2004 19:47:32 +0000 (19:47 +0000)]
2004-09-29 Eric Christopher <echristo@redhat.com>
* fold-const.c (tree_swap_operands_p): Remove duplicated code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88299
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Wed, 29 Sep 2004 19:46:18 +0000 (19:46 +0000)]
* config/cris/cris.md (moverside, movemside): With MEM, make sure
the address is (plus reg mem).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88298
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 29 Sep 2004 18:31:54 +0000 (18:31 +0000)]
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Re-sorted.
(libgcj.la): Moved to old location near lib-gnu-awt-xlib.la.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88294
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 29 Sep 2004 18:16:34 +0000 (18:16 +0000)]
PR tree-optimization/17697
* decl.c (duplicate_decls): Copy TREE_NOTHROW from newdecl to olddecl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88293
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 29 Sep 2004 15:19:56 +0000 (15:19 +0000)]
* config/rs6000/linux64.h (PROCESSOR_DEFAULT): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88290
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 29 Sep 2004 14:13:17 +0000 (14:13 +0000)]
2004-09-29 Andrew Haley <aph@redhat.com>
PR java/17007
* parse.y (patch_binop): Don't mess with the TREE_SIDE_EFFECTS of the
result of TRUNC_MOD_EXPR.
(patch_unaryop): Likewise for CONVERT_EXPR, which may throw.
* decl.c (java_init_decl_processing): Mark
soft_lookupinterfacemethod_node and soft_instanceof_node pure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88289
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Wed, 29 Sep 2004 13:07:50 +0000 (13:07 +0000)]
* tree.c (make_node_stat): Fix uninitialized warning. Replace
cascaded if ... else if with a switch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88288
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 29 Sep 2004 11:42:03 +0000 (11:42 +0000)]
Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88285
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 29 Sep 2004 11:41:17 +0000 (11:41 +0000)]
* configure.in (--without-headers): Add missing double quotes.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88284
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 29 Sep 2004 11:23:11 +0000 (11:23 +0000)]
* read-rtl.c (apply_macro_to_string): Replace index with strchr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88283
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 29 Sep 2004 09:47:56 +0000 (09:47 +0000)]
* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
and TI_VA_LIST_FPR_COUNTER_FIELD.
(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
* tree-pass.h (pass_stdarg): Add.
* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
* tree-stdarg.c: New file.
* Makefile.in (OBJS-common): Add tree-stdarg.o.
(tree-stdarg.o): Add dependencies.
* function.h (struct function): Add va_list_gpr_size and
va_list_fpr_size fields.
* function.c (allocate_struct_function): Initialize them.
* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(ix86_setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(ix86_va_start): Don't set up fields that won't be used.
* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(rs6000_va_start): Don't set up fields that won't be used.
* gcc.c-torture/execute/stdarg-1.c: New test.
* gcc.c-torture/execute/stdarg-2.c: New test.
* gcc.c-torture/execute/stdarg-3.c: New test.
* gcc.dg/tree-ssa/stdarg-1.c: New test.
* gcc.dg/tree-ssa/stdarg-2.c: New test.
* gcc.dg/tree-ssa/stdarg-3.c: New test.
* gcc.dg/tree-ssa/stdarg-4.c: New test.
* gcc.dg/tree-ssa/stdarg-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88279
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 29 Sep 2004 09:06:49 +0000 (09:06 +0000)]
* builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED,
BUILT_IN_FPUTS, BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FWRITE,
BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_PUTCHAR, BUILT_IN_PUTCHAR_UNLOCKED,
BUILT_IN_PUTS, BUILT_IN_PUTS_UNLOCKED): Remove nothrow attribute.
* builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_1_2,
ATTR_NONNULL_1_4): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88278
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 29 Sep 2004 09:04:21 +0000 (09:04 +0000)]
PR tree-optimization/17697
* tree-ssa-ccp.c (execute_fold_all_builtins): Update eh and cleanup
cfg if needed.
* g++.dg/opt/pr17697-1.C: New test.
* g++.dg/opt/pr17697-2.C: New test.
* g++.dg/opt/pr17697-3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88277
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Wed, 29 Sep 2004 06:44:51 +0000 (06:44 +0000)]
Oops - fix typo in ChangeLog.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88272
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Wed, 29 Sep 2004 06:42:31 +0000 (06:42 +0000)]
* profile.c (brnahc_prob): Pass correct value to output_location,
even when USE_MAPPED_LOCATION. Fixes bug from 09-11.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88271
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 29 Sep 2004 06:23:49 +0000 (06:23 +0000)]
PR middle-end/17525
* class.c (build_base_field): Set TYPE_MODE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88270
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 29 Sep 2004 02:50:47 +0000 (02:50 +0000)]
PR 15089
* tree-ssa-copy.c (may_propagate_copy_into_asm): New.
* tree-flow.h (may_propagate_copy_into_asm): Declare.
* tree-ssa-ccp.c (replace_uses_in): Use it.
* tree-ssa-dom.c (cprop_operand): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88269
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 29 Sep 2004 02:15:00 +0000 (02:15 +0000)]
* tree-ssa-threadupdate.c (create_block_for_threading): Request
that no outgoing edges be left in the duplicate block. Do no
update information on outgoing edges or PHI nodes in target
blocks here.
(remove_ctrl_stmt_and_useless_edges): Renamed from
remove_last_stmt_and_useless_edges. Handle case where the
block is empty or has no control statements. Do not update edge
flags here.
(thread_block): Create a template block rather than copying the
original block every time. Create outgoing edges from the
duplicate blocks and update PHIs at the target of the outgoing
edges here. Fix edge flags for the original block if necessary.
* cfghooks (duplicate_block): No longer assert that the original
block has incoming edges.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88267
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Wed, 29 Sep 2004 01:42:09 +0000 (01:42 +0000)]
* doc/extend.texi (Extended Asm): Add blurb about using Explicit
Reg Vars to enforce register allocation with general constraints.
(Explicit Reg Vars): Clarify relation to asm statements.
(Local Reg Vars): Similar.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88265
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Wed, 29 Sep 2004 01:28:22 +0000 (01:28 +0000)]
* sched-rgn.c (haifa_edge, edge_table, NEXT_IN, NEXT_OUT, FROM_BLOCK,
TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, OUT_EDGES,
build_control_flow, new_edge): Remove.
(schedule_insns): Remove edge_table/in_edges/out_edges cleanup.
(bitlst, bitlst_table_last, bitlst_table): Remove.
(bblst): Store basic_block pointer instead of block index.
(bblst_table): Likewise.
(edgelst): Store edge pointer instead of edge index.
(edgelst_table, edgelst_last): New variables.
(extract_bitlst): Rename to ...
(extract_edgelst): ... this. Return edge pointers, not indices.
(split_edges): Update call.
(rgn_edges): Store edge pointers instead of indices.
(edge_to_bit): Remove.
(EDGE_TO_BIT): Store per-region edge index in edge->aux.
(SET_EDGE_TO_BIT): New macro.
(is_cfg_nonregular): Check for simple cases of unreachable blocks.
(find_rgns): Remove edge_list parameter. Traverse standard CFG
data structures instead of haifa_edge et al. Use edge pointers
instead of edge indices everywhere.
(compute_dom_prob_ps): Use standard CFG data structures. Account
for exit edges.
(compute_trg_info): Likewise.
(propagate_deps): Likewise.
(debug_candidate): Account for bblst data structure change.
(check_live_1, update_live_1, is_pfree): Likewise.
(IS_REACHABLE): Use standard CFG data structures.
(init_ready_list): Update bblst_table/edgelst_table allocation.
(schedule_region): Update alloc/cleanup code to data structure
changes. Use edge->aux to store per-region edge index.
(init_regions): No longer call build_control_flow. Do not
create edge list any more.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88264
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 29 Sep 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88262
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Tue, 28 Sep 2004 23:29:02 +0000 (23:29 +0000)]
* cse.c (cse_insn): Avoid creating direct non-local jumps.
* combine.c (can_combine_p): Likewise.
* local-alloc. (update_equiv_regs): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88258
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 28 Sep 2004 22:55:04 +0000 (22:55 +0000)]
PR 17531
* expr.c (expand_expr_addr_expr_1): Only assemble_external for decls.
Don't check VOIDmode here. Force PLUS operands to common type.
(expand_expr_addr_expr): Do VOIDmode check earlier. Force use of
Pmode if given a non pointer type.
PR 17531
* optabs.c (expand_binop): Force constants to the correct mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88257
138bc75d-0d04-0410-961f-
82ee72b054a4
sayle [Tue, 28 Sep 2004 22:43:11 +0000 (22:43 +0000)]
PR driver/17537
* g++spec.c (lang_specific_driver): Unrecognized libraries, other
than -lc and -lm, may require linking against libstc++.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88256
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Tue, 28 Sep 2004 21:55:26 +0000 (21:55 +0000)]
* jni.cc (_Jv_JNI_RegisterNatives): Formatting fixlets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88255
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Tue, 28 Sep 2004 21:39:28 +0000 (21:39 +0000)]
* config/s390/s390.c (s390_adjust_cost): Remove.
(TARGET_SCHED_ADJUST_COST): Do not redefine.
(s390_adjust_priority): Handle TYPE_STM like TYPE_STORE.
* config/s390/s390.md ("main_pool"): Use "larl" type
attribute if TARGET_CPU_ZARCH.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88254
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 28 Sep 2004 21:17:53 +0000 (21:17 +0000)]
* config/ia64/ia64.c (ia64_expand_prologue): Declare ei
variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88253
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Tue, 28 Sep 2004 20:39:46 +0000 (20:39 +0000)]
* tree-ssa-loop.c (pass_record_bounds): Do not assign a
name to the pass.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88252
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Tue, 28 Sep 2004 20:37:40 +0000 (20:37 +0000)]
PR libgcj/17222:
* Makefile.am (libgcj.la): Restored.
* Makefile.in: Rebuilt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88251
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Tue, 28 Sep 2004 20:34:17 +0000 (20:34 +0000)]
* common.opt (flag_gcse_sm): Disable by default.
(flag_gcse_las): Likewise.
(flag_web): Likewise. Create from this file.
* flags.h: Remove flag_web declaration.
* toplev.c (flag_web): Likewise.
(process_options): Never set flag_web.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88250
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Tue, 28 Sep 2004 20:31:16 +0000 (20:31 +0000)]
* Makefile.in (tree-ssa-propagate.o): Depend on vec.h.
* tree-ssa-propagate.c: Include vec.h.
(interesting_ssa_edges, varying_ssa_edges): Make these VECs
instead of varrays.
(cfg_blocks_add): Assert the block is not already in the worklist.
Update uses of interesting_ssa_edges and varying_ssa_edges.
(process_ssa_edge_worklist, ssa_prop_init, ssa_prop_fini,
ssa_propagate): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88249
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 28 Sep 2004 19:35:26 +0000 (19:35 +0000)]
PR c/16409
* c-decl.c (start_decl): Check for initializing incomplete array
of VLAs.
(build_compound_literal): Check for TYPE being error_mark_node.
* c-parse.in (primary): Check for VLA compound literals.
testsuite:
* gcc.dg/vla-init-2.c, gcc.dg/vla-init-3.c, gcc.dg/vla-init-4.c,
gcc.dg/vla-init-5.c: New tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88248
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Tue, 28 Sep 2004 18:27:25 +0000 (18:27 +0000)]
PR java/15710:
* class.c (add_miranda_methods): Load superinterface if not
already loaded.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88243
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Tue, 28 Sep 2004 18:14:33 +0000 (18:14 +0000)]
* tree-ssa-live.c (calculate_live_on_entry): Fix warnings
with --disable-checking.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88241
138bc75d-0d04-0410-961f-
82ee72b054a4
dpatel [Tue, 28 Sep 2004 17:52:59 +0000 (17:52 +0000)]
* tree-pretty-print.c (dump_generic_node): Print vector types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88240
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Tue, 28 Sep 2004 17:40:56 +0000 (17:40 +0000)]
2004-09-28 Andrew Haley <aph@redhat.com>
PR java/17586
* jcf-parse.c (load_class): Don't try to read a class that we've
already read.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88239
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 28 Sep 2004 17:37:35 +0000 (17:37 +0000)]
sh.h (INIT_CUMULATIVE_ARGS): Replace with an invocation of the function
sh_init_cumulative_args.
(INIT_CUMULATIVE_LIBCALL_ARGS): Likewise.
(INIT_CUMULATIVE_INCOMING_ARGS): Delete.
sh-protos.h: Prototype sh_init_cumulative_args.
sh.c (sh_init_cumulative_args): New function based on the contents of the old
INIT_CUMULATIVE_ARGS macro but with a heuristic added to determine the setting
of force_mem when a library function is being called.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88238
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Tue, 28 Sep 2004 17:29:32 +0000 (17:29 +0000)]
* tree-ssa-loop-im.c (single_reachable_address) <PHI_NODE>:
Skip constant arguments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88237
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Tue, 28 Sep 2004 14:58:31 +0000 (14:58 +0000)]
2004-09-28 Andrew Haley <aph@redhat.com>
* jcf-parse.c (load_class): Back out previous broken patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88234
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Tue, 28 Sep 2004 13:57:05 +0000 (13:57 +0000)]
2004-09-28 Andrew Haley <aph@redhat.com>
PR java/17586
* jcf-parse.c (load_class): Don't try to read a class that we've
already read.
Check that we really did read the right class.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88233
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Tue, 28 Sep 2004 13:45:05 +0000 (13:45 +0000)]
* tree-ssa-alias.c (create_name_tags): If PTR points to a
volatile type, mark the tag volatile.
(get_tmt_for): If TAG_TYPE is a volatile type, mark the tag
volatile.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88232
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Tue, 28 Sep 2004 13:14:28 +0000 (13:14 +0000)]
2004-09-28 Andrew Pinski <pinskia@physics.uc.edu>
* tree.def (vec_cond_expr): Fix. Change 'e'
to tcc_expression.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88231
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Tue, 28 Sep 2004 12:15:48 +0000 (12:15 +0000)]
* basic-block.h: Fix a comment typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88230
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Tue, 28 Sep 2004 11:55:45 +0000 (11:55 +0000)]
* tree.c: Fix a comment typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88229
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Tue, 28 Sep 2004 11:49:07 +0000 (11:49 +0000)]
* optabs.c, optabs.h: Fix comment typos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88228
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 28 Sep 2004 11:40:27 +0000 (11:40 +0000)]
* config/sparc/sparc.md (call_address_struct_value_sp32):
Properly mask the immediate field of the 'unimp' instruction.
(call_symbolic_struct_value_sp32): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88227
138bc75d-0d04-0410-961f-
82ee72b054a4
mkoch [Tue, 28 Sep 2004 11:02:35 +0000 (11:02 +0000)]
2004-09-28 Michael Koch <konqueror@gmx.de>
* java/net/URLConnection.java: Reformatted.
* java/net/URLClassLoader.java: Reformatted.
(getContent): Reordered return of content.
(getContentHandler): Don't check for null explicitely.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88226
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 28 Sep 2004 08:58:35 +0000 (08:58 +0000)]
2004-09-28 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16612
* include/bits/basic_string.h (_M_dispose, _M_refcopy,
basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined,
don't deal with _S_empty_rep.
* include/bits/basic_string.tcc (_S_construct, _M_destroy,
_M_leak_hard, _M_mutate): Likewise.
* acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New.
* acconfig.h: Add corresponding undef.
* configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING.
* docs/html/configopts.html: Document --enable-fully-dynamic-string.
* configure: Regenerate.
* config.h.in: Likewise.
2004-09-28 Benjamin Kosnik <bkoz@redhat.com>
Paolo Carlini <pcarlini@suse.de>
* testsuite/21_strings/basic_string/operations/char/1.cc: New.
* testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New.
* testsuite/21_strings/basic_string/element_access/char/empty.cc: New.
* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
New.
2004-09-28 Paolo Carlini <pcarlini@suse.de>
* README: Remove obsolete entry about include/c_shadow.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88225
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Tue, 28 Sep 2004 08:50:56 +0000 (08:50 +0000)]
* class.c (VTT_TOP_LEVEL_P, VTT_MARKED_BINFO_P): Remove.
(struct secondary_vptr_vtt_init_data_s): New.
(build_vtt_inits): Adjust dfs_walkers.
(dfs_build_secondary_vptr_vtt_inits): Caller data is a
secondary_vptr_vtt_init_data_s structure. Adjust.
(dfs_ctor_vtable_bases_queue_p): Remove.
(dfs_fixup_binfo_vtbls): No need to clear BINFO_MARKED. Simplify.
* pt.c (struct get_template_base_data_s): Remove.
(get_template_base_r): Fold into get_template_base.
(get_template_base): Walk base binfos directly in inheritance
graph order.
Remove duplicated changelog entries
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88224
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Tue, 28 Sep 2004 07:59:54 +0000 (07:59 +0000)]
2004-09-24 Ben Elliston <bje@au.ibm.com>
Steven Bosscher <stevenb@suse.de>
Andrew Pinski <pinskia@physics.uc.edu>
Merge from edge-vector-branch:
* basic-block.h: Include vec.h, errors.h. Instantiate a VEC(edge).
(struct edge_def): Remove pred_next, succ_next members.
(struct basic_block_def): Remove pred, succ members. Add preds
and succs members of type VEC(edge).
(FALLTHRU_EDGE): Redefine using EDGE_SUCC.
(BRANCH_EDGE): Likewise.
(EDGE_CRITICAL_P): Redefine using EDGE_COUNT.
(EDGE_COUNT, EDGE_I, EDGE_PRED, EDGE_SUCC): New.
(edge_iterator): New.
(ei_start, ei_last, ei_end_p, ei_one_before_end_p): New.
(ei_next, ei_prev, ei_edge, ei_safe_edge): Likewise.
(FOR_EACH_EDGE): New.
* bb-reorder.c (find_traces): Use FOR_EACH_EDGE and EDGE_* macros
where applicable.
(rotate_loop): Likewise.
(find_traces_1_route): Likewise.
(bb_to_key): Likewise.
(connect_traces): Likewise.
(copy_bb_p): Likewise.
(find_rarely_executed_basic_blocks_and_crossing_edges): Likewise.
(add_labels_and_missing_jumps): Likewise.
(fix_up_fall_thru_edges): Likewise.
(find_jump_block): Likewise.
(fix_crossing_conditional_branches): Likewise.
(fix_crossing_unconditional_branches): Likewise.
(add_reg_crossing_jump_notes): Likewise.
* bt-load.c (augment_live_range): Likewise.
* cfg.c (clear_edges): Likewise.
(unchecked_make_edge): Likewise.
(cached_make_edge): Likewise.
(make_single_succ_edge): Likewise.
(remove_edge): Likewise.
(redirect_edge_succ_nodup): Likewise.
(check_bb_profile): Likewise.
(dump_flow_info): Likewise.
(alloc_aux_for_edges): Likewise.
(clear_aux_for_edges): Likewise.
(dump_cfg_bb_info): Likewise.
* cfganal.c (forwarder_block_p): Likewise.
(can_fallthru): Likewise.
(could_fall_through): Likewise.
(mark_dfs_back_edges): Likewise.
(set_edge_can_fallthru_flag): Likewise.
(find_unreachable_blocks): Likewise.
(create_edge_list): Likewise.
(verify_edge_list): Likewise.
(add_noreturn_fake_exit_edges): Likewise.
(connect_infinite_loops_to_exit): Likewise.
(flow_reverse_top_sort_order_compute): Likewise.
(flow_depth_first_order_compute): Likewise.
(flow_preorder_transversal_compute): Likewise.
(flow_dfs_compute_reverse_execute): Likewise.
(dfs_enumerate_from): Likewise.
(compute_dominance_frontiers_1): Likewise.
* cfgbuild.c (make_edges): Likewise.
(compute_outgoing_frequencies): Likewise.
(find_many_sub_basic_blocks): Likewise.
(find_sub_basic_blocks): Likewise.
* cfgcleanup.c (try_simplify_condjump): Likewise.
(thread_jump): Likewise.
(try_forward_edges): Likewise.
(merge_blocks_move): Likewise.
(outgoing_edges_match): Likewise.
(try_crossjump_to_edge): Likewise.
(try_crossjump_bb): Likewise.
(try_optimize_cfg): Likewise.
(merge_seq_blocks): Likewise.
* cfgexpand.c (expand_gimple_tailcall): Likewise.
(expand_gimple_basic_block): Likewise.
(construct_init_block): Likewise.
(construct_exit_block): Likewise.
* cfghooks.c (verify_flow_info): Likewise.
(dump_bb): Likewise.
(delete_basic_block): Likewise.
(split_edge): Likewise.
(merge_blocks): Likewise.
(make_forwarder_block): Likewise.
(tidy_fallthru_edges): Likewise.
(can_duplicate_block_p): Likewise.
(duplicate_block): Likewise.
* cfglayout.c (fixup_reorder_chain): Likewise.
(fixup_fallthru_exit_predecessor): Likewise.
(can_copy_bbs_p): Likewise.
(copy_bbs): Likewise.
* cfgloop.c (flow_loops_cfg_dump): Likewise.
(flow_loop_entry_edges_find): Likewise.
(flow_loop_exit_edges_find): Likewise.
(flow_loop_nodes_find): Likewise.
(mark_single_exit_loops): Likewise.
(flow_loop_pre_header_scan): Likewise.
(flow_loop_pre_header_find): Likewise.
(update_latch_info): Likewise.
(canonicalize_loop_headers): Likewise.
(flow_loops_find): Likewise.
(get_loop_body_in_bfs_order): Likewise.
(get_loop_exit_edges): Likewise.
(num_loop_branches): Likewise.
(verify_loop_structure): Likewise.
(loop_latch_edge): Likewise.
(loop_preheader_edge): Likewise.
* cfgloopanal.c (mark_irreducible_loops): Likewise.
(expected_loop_iterations): Likewise.
* cfgloopmanip.c (remove_bbs): Likewise.
(fix_bb_placement): Likewise.
(fix_irreducible_loops): Likewise.
(remove_path): Likewise.
(scale_bbs_frequencies): Likewise.
(loopify): Likewise.
(unloop): Likewise.
(fix_loop_placement): Likewise.
(loop_delete_branch_edge): Likewise.
(duplicate_loop_to_header_edge): Likewise.
(mfb_keep_just): Likewise.
(create_preheader): Likewise.
(force_single_succ_latches): Likewise.
(loop_split_edge_with): Likewise.
(create_loop_notes): Likewise.
* cfgrtl.c (rtl_split_block): Likewise.
(rtl_merge_blocks): Likewise.
(rtl_can_merge_blocks): Likewise.
(try_redirect_by_replacing_jump): Likewise.
(force_nonfallthru_and_redirect): Likewise.
(rtl_tidy_fallthru_edge): Likewise.
(commit_one_edge_insertion): Likewise.
(commit_edge_insertions): Likewise.
(commit_edge_insertions_watch_calls): Likewise.
(rtl_verify_flow_info_1): Likewise.
(rtl_verify_flow_info): Likewise.
(purge_dead_edges): Likewise.
(cfg_layout_redirect_edge_and_branch): Likewise.
(cfg_layout_can_merge_blocks_p): Likewise.
(rtl_flow_call_edges_add): Likewise.
* cse.c (cse_cc_succs): Likewise.
* df.c (hybrid_search): Likewise.
* dominance.c (calc_dfs_tree_nonrec): Likewise.
(calc_dfs_tree): Likewise.
(calc_idoms): Likewise.
(recount_dominator): Likewise.
* domwalk.c (walk_dominator_tree): Likewise.
* except.c (emit_to_new_bb_before): Likewise.
(connect_post_landing_pads): Likewise.
(sjlj_emit_function_enter): Likewise.
(sjlj_emit_function_exit): Likewise.
(finish_eh_generation): Likewise.
* final.c (compute_alignments): Likewise.
* flow.c (calculate_global_regs_live): Likewise.
(initialize_uninitialized_subregs): Likewise.
(init_propagate_block_info): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
* gcse.c (find_implicit_sets): Likewise.
(bypass_block): Likewise.
(bypass_conditional_jumps): Likewise.
(compute_pre_data): Likewise.
(insert_insn_end_bb): Likewise.
(insert_store): Likewise.
(remove_reachable_equiv_notes): Likewise.
* global.c (global_conflicts): Likewise.
(calculate_reg_pav): Likewise.
* graph.c (print_rtl_graph_with_bb): Likewise.
* ifcvt.c (mark_loop_exit_edges): Likewise.
(merge_if_block): Likewise.
(find_if_header): Likewise.
(block_jumps_and_fallthru_p): Likewise.
(find_if_block): Likewise.
(find_cond_trap): Likewise.
(block_has_only_trap): Likewise.
(find_if_case1): Likewise.
(find_if_case_2): Likewise.
* lambda-code.c (lambda_loopnest_to_gcc_loopnest): Likewise.
(perfect_nestify): Likewise.
* lcm.c (compute_antinout_edge): Likewise.
(compute_laterin): Likewise.
(compute_available): Likewise.
(compute_nearerout): Likewise.
* loop-doloop.c (doloop_modify): Likewise.
* loop-init.c (loop_optimizer_init): Likewise.
* loop-invariant.c (find_exits): Likewise.
* loop-iv.c (simplify_using_initial_values): Likewise.
(check_simple_exit): Likewise.
(find_simple_exit): Likewise.
* loop-unroll.c (peel_loop_completely): Likewise.
(unroll_loop_constant_iterations): Likewise.
(unroll_loop_runtime_iterations): Likewise.
* loop-unswitch.c (may_unswitch_on): Likewise.
(unswitch_loop): Likewise.
* modulo-sched.c (generate_prolog_epilog): Likewise.
(sms_schedule): Likewise.
* postreload-gcse.c (eliminate_partially_redundant_load):
Likewise.
* predict.c (can_predict_insn_p): Likewise.
(set_even_probabilities): Likewise.
(combine_predictions_for_bb): Likewise.
(predict_loops): Likewise.
(estimate_probability): Likewise.
(tree_predict_by_opcode): Likewise.
(tree_estimate_probability): Likewise.
(last_basic_block_p): Likewise.
(propagate_freq): Likewise.
(estimate_loops_at_level): Likewise.
(estimate_bb_frequencies): Likewise.
* profile.c (instrument_edges): Likewise.
(get_exec_counts): Likewise.
(compute_branch_probabilities): Likewise.
(branch_prob): Likewise.
* ra-build.c (live_in): Likewise.
* ra-rewrite.c (rewrite_program2): Likewise.
* ra.c (reg_alloc): Likewise.
* reg-stack.c (reg_to_stack): Likewise.
(convert_regs_entry): Likewise.
(compensate_edge): Likewise.
(convert_regs_1): Likewise,
(convert_regs_2): Likewise.
(convert_regs): Likewise.
* regrename.c (copyprop_hardreg_forward): Likewise.
* reload1.c (fixup_abnormal_edges): Likewise.
* sbitmap.c (sbitmap_intersection_of_succs): Likewise.
(sbitmap_insersection_of_preds): Likewise.
(sbitmap_union_of_succs): Likewise.
(sbitmap_union_of_preds): Likewise.
* sched-ebb.c (compute_jump_reg_dependencies): Likewise.
(fix_basic_block_boundaries): Likewise.
(sched_ebbs): Likewise.
* sched-rgn.c (build_control_flow): Likewise.
(find_rgns): Likewise.
* tracer.c (find_best_successor): Likewise.
(find_best_predecessor): Likewise.
(tail_duplicate): Likewise.
* tree-cfg.c (make_edges): Likewise.
(make_ctrl_stmt_edges): Likewise.
(make_goto_expr_edges): Likewise.
(tree_can_merge_blocks_p): Likewise.
(tree_merge_blocks): Likewise.
(cfg_remove_useless_stmts_bb): Likewise.
(remove_phi_nodes_and_edges_for_unreachable_block): Likewise.
(tree_block_forwards_to): Likewise.
(cleanup_control_expr_graph): Likewise.
(find_taken_edge): Likewise.
(dump_cfg_stats): Likewise.
(tree_cfg2vcg): Likewise.
(disband_implicit_edges): Likewise.
(tree_find_edge_insert_loc): Likewise.
(bsi_commit_edge_inserts): Likewise.
(tree_split_edge): Likewise.
(tree_verify_flow_info): Likewise.
(tree_make_forwarder_block): Likewise.
(tree_forwarder_block_p): Likewise.
(thread_jumps): Likewise.
(tree_try_redirect_by_replacing_jump): Likewise.
(tree_split_block): Likewise.
(add_phi_args_after_copy_bb): Likewise.
(rewrite_to_new_ssa_names_bb): Likewise.
(dump_function_to_file): Likewise.
(print_pred_bbs): Likewise.
(print_loop): Likewise.
(tree_flow_call_edges_add): Likewise.
(split_critical_edges): Likewise.
(execute_warn_function_return): Likewise.
(extract_true_false_edges_from_block): Likewise.
* tree-if-conv.c (tree_if_conversion): Likewise.
(if_convertable_bb_p): Likewise.
(find_phi_replacement_condition): Likewise.
(combine_blocks): Likewise.
* tree-into-ssa.c (compute_global_livein): Likewise.
(ssa_mark_phi_uses): Likewise.
(ssa_rewrite_initialize_block): Likewise.
(rewrite_add_phi_arguments): Likewise.
(ssa_rewrite_phi_arguments): Likewise.
(insert_phi_nodes_for): Likewise.
(rewrite_into_ssa): Likewise.
(rewrite_ssa_into_ssa): Likewise.
* tree-mudflap.c (mf_build_check_statement_for): Likewise.
* tree-outof-ssa.c (coalesce_abnormal_edges): Likewise.
(rewrite_trees): Likewise.
* tree-pretty-print.c (dump_bb_header): Likewise.
(dump_implicit_edges): Likewise.
* tree-sra.c (insert_edge_copies): Likewise.
(find_obviously_necessary_stmts): Likewise.
(remove_data_stmt): Likewise.
* tree-ssa-dom.c (thread_across_edge): Likewise.
(dom_opt_finalize_block): Likewise.
(single_incoming_edge_ignoring_loop_edges): Likewise.
(record_equivalences_from_incoming_edges): Likewise.
(cprop_into_successor_phis): Likewise.
* tree-ssa-live.c (live_worklist): Likewise.
(calculate_live_on_entry): Likewise.
(calculate_live_on_exit): Likewise.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Likewise.
(copy_loop_headers): Likewise.
* tree-ssa-loop-im.c (loop_commit_inserts): Likewise.
(fill_always_executed_in): Likewise.
* tree-ssa-loop-ivcanon.c (create_canonical_iv): Likewise.
* tree-ssa-loop-ivopts.c (find_interesting_uses): Likewise.
(compute_phi_arg_on_exit): Likewise.
* tree-ssa-loop-manip.c (add_exit_phis_edge): Likewise.
(get_loops_exit): Likewise.
(split_loop_exit_edge): Likewise.
(ip_normal_pos): Likewise.
* tree-ssa-loop-niter.c (simplify_using_initial_conditions):
Likewise.
* tree-ssa-phiopt.c (candidate_bb_for_phi_optimization): Likewise.
(replace_phi_with_stmt): Likewise.
(value_replacement): Likewise.
* tree-ssa-pre.c (compute_antic_aux): Likewise.
(insert_aux): Likewise.
(init_pre): Likewise.
* tree-ssa-propagate.c (simulate_stmt): Likewise.
(simulate_block): Likewise.
(ssa_prop_init): Likewise.
* tree-ssa-threadupdate.c (thread_block): Likewise.
(create_block_for_threading): Likewise.
(remove_last_stmt_and_useless_edges): Likewise.
* tree-ssa.c (verify_phi_args): Likewise.
(verify_ssa): Likewise.
* tree_tailcall.c (independent_of_stmt_p): Likewise.
(find_tail_calls): Likewise.
(eliminate_tail_call): Likewise.
(tree_optimize_tail_calls_1): Likewise.
* tree-vectorizer.c (vect_transform_loop): Likewise.
* var-tracking.c (prologue_stack_adjust): Likewise.
(vt_stack_adjustments): Likewise.
(vt_find_locations): Likewise.
* config/frv/frv.c (frv_ifcvt_modify_tests): Likewise.
* config/i386/i386.c (ix86_pad_returns): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88222
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 28 Sep 2004 06:26:08 +0000 (06:26 +0000)]
PR target/16532
* config/sparc/sparc.c (struct machine_function): New field
'leaf_function_p' and 'prologue_data_valid_p'.
(sparc_leaf_function_p, sparc_prologue_data_valid_p): New macro
to conveniently access the above fields.
(TARGET_LATE_RTL_PROLOGUE_EPILOGUE): Delete.
(eligible_for_return_delay): Use 'sparc_leaf_function_p' instead
of the generic flavor 'current_function_uses_only_leaf_regs'.
(eligible_for_sibcall_delay): Likewise.
(sparc_expand_prologue): Compute 'sparc_leaf_function_p' and set
'sparc_prologue_data_valid_p'. Use 'sparc_leaf_function_p'.
(sparc_asm_function_prologue): Add sanity check for the assumption
made in 'sparc_expand_prologue'. Use 'sparc_leaf_function_p'.
(sparc_can_use_return_insn_p): New function.
(sparc_expand_epilogue): Use 'sparc_leaf_function_p'.
(output_restore): Likewise.
(output_sibcall): Likewise.
(sparc_output_mi_thunk): Likewise.
* config/sparc/sparc-protos.h (sparc_can_use_return_insn_p): Declare.
* config/sparc/sparc.md (return): New expander.
* config/sparc/sparc.h (INITIAL_ELIMINATION_OFFSET): Minor tweak.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88220
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Tue, 28 Sep 2004 04:42:52 +0000 (04:42 +0000)]
Fix formatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88218
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 28 Sep 2004 02:56:11 +0000 (02:56 +0000)]
PR c++/17642
* stor-layout.c (layout_decl): Use fold_convert, not convert.
(bit_from_pos): Likewise.
(byte_from_pos): Likewise.
(pos_from_bit): Likewise.
(normalize_offset): Likewise.
(place_field): Likewise.
(finalize_type_size): Likewise.
(layout_type): Likewise.
* tree.c (build_index_type): Likewise.
PR c++/17642
* cp-tree.h (fold_if_not_in_template): New function.
* call.c (build_conditional_expr): Use fold_if_not_in_template.
(build_cxx_call): Likewise.
* cvt.c (convert_to_complex): Likewise.
(ocp_convert): Likewise.
(convert): Likewise.
(convert_force): Likewise.
* decl.c (compute_array_index_type): Clear
processing_template_decl while folding array bounds.
* pt.c (convert_nontype_argument): Clear
processing_template_decl while processing non-type argument
initialization.
* tree.c (fold_if_not_in_template): New function.
* typeck.c (build_class_member_access_expr): Use
fold_if_not_in_template.
(build_array_ref): Likewise.
(build_binary_op): Likewise. Do not try to optimize computations
when processing templates.
(cp_pointer_int_sum): Use fold_if_not_in_template.
(pointer_diff): Likewise.
(build_unary_op): Likewise.
(build_reinterpret_cast): Likewise.
(get_delta_difference): Likewise.
(expand_ptrmemfunc_cst): Likewise.
(dubious_conversion_warnings): Likewise.
* g++.dg/template/crash23.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88217
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 28 Sep 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88212
138bc75d-0d04-0410-961f-
82ee72b054a4
dpatel [Tue, 28 Sep 2004 00:13:12 +0000 (00:13 +0000)]
* expr.c (expand_expr_real_1): Handle VEC_COND_EXPR.
* genopinit.c (optabs): New entry for vcond_gen_code and
vcondu_gen_code.
* optabs.c (vcond_gen_code, vcondu_gen_code): New optabs.
(get_rtx_code): New function.
(vector_compare_rtx): New function.
(init_optabs): Initialize vcond_gen_code and vcondu_gen_code.
(expand_vec_cond_expr_p): New function.
(expand_vec_cond_expr): New function.
(get_vcond_icode): New function.
* optabs.h (expand_vec_cond_expr, expand_vec_cond_expr_p): New externs.
(vcond_gen_code, vcondu_gen_code): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88209
138bc75d-0d04-0410-961f-
82ee72b054a4
kcook [Mon, 27 Sep 2004 23:16:29 +0000 (23:16 +0000)]
2004-09-27 Kelley Cook <kcook@gcc.gnu.org>
* Makefile.in (STAGESTUFF): Split into ...
(STAGECOPYSTUFF, STAGEMOVESTUFF): ... these.
(mostlyclean): Update.
(stage1-start, stage2-start, stage3-start, stage4-start,
stageprofile-start, stagefeedback-start): Copy the STAGECOPYSTUFF.
Move the STAGEMOVESTUFF.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88207
138bc75d-0d04-0410-961f-
82ee72b054a4
kcook [Mon, 27 Sep 2004 22:58:02 +0000 (22:58 +0000)]
2004-09-27 Kelley Cook <kcook@gcc.gnu.org>
* configure.ac: Update all AC_DEFINEs to newer style.
* configure: Regenerate.
* include/gc_config.h.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88206
138bc75d-0d04-0410-961f-
82ee72b054a4
kcook [Mon, 27 Sep 2004 22:51:37 +0000 (22:51 +0000)]
2004-09-27 Kelley Cook <kcook@gcc.gnu.org>
* aclocal.m4: Quote m4_includes. Include ../config/gcc-lib-path.m4.
* configure.ac: Don't sinclude it here.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88205
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 27 Sep 2004 22:38:08 +0000 (22:38 +0000)]
* system.h (getpagesize): Return 'int' instead of 'long'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88204
138bc75d-0d04-0410-961f-
82ee72b054a4
austern [Mon, 27 Sep 2004 22:24:35 +0000 (22:24 +0000)]
Fix implicit extern "C" breakage introduced by tokenization patch.
* cp/parser.c (struct cp_token): new one-bit field , implicit_extern_c
(cp_lexer_get_preprocessor_token): Set implicit_extern_c for
tokens that come from headers that are implicitly extern "C".
(struct cp_parser): new one-bit field, implicit_extern_c.
(cp_parser_new): Set parser's implicit_extern_c to false.
(cp_parser_translation_unit): Pop lang context if we were in a
header that was implicitly extern "C".
(cp_parser_declaration_seq_opt): Push/pop lang context as
required by the token's and parser's implicit_extern_c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88203
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Mon, 27 Sep 2004 21:41:33 +0000 (21:41 +0000)]
2004-09-27 Michael Matz <matz@suse.de>
PR bootstrap/17698
PR bootstrap/17702
* bitmap.h (bmp_iter_single_init, bmp_iter_and_not_init,
bmp_iter_and_init): Shift by bit_in_word.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88201
138bc75d-0d04-0410-961f-
82ee72b054a4
kcook [Mon, 27 Sep 2004 21:32:13 +0000 (21:32 +0000)]
2004-09-27 Kelley Cook <kcook@gcc.gnu.org>
* aclocal.m4: Quote m4_includes. Include ../config/gcc-lib-path.m4.
* configure.ac: Don't sinclude it here.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88200
138bc75d-0d04-0410-961f-
82ee72b054a4
dorit [Mon, 27 Sep 2004 20:23:38 +0000 (20:23 +0000)]
* config/rs6000/rs6000.c (rs6000_legitimate_address, print_operand):
Handle AND pattern
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88196
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Mon, 27 Sep 2004 19:33:55 +0000 (19:33 +0000)]
PR c/13804
* c-typeck.c (build_component_ref): Name type involved in
diagnostic for structure or union without a member of the given
name.
testsuite:
* gcc.dg/pr13804-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88195
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Mon, 27 Sep 2004 19:28:51 +0000 (19:28 +0000)]
* config/stormy16/stormy16.c (xstormy16_asm_output_aligned_common):
.comm alignment is bytes, not bits.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88194
138bc75d-0d04-0410-961f-
82ee72b054a4
dpatel [Mon, 27 Sep 2004 19:23:55 +0000 (19:23 +0000)]
* tree-pretty-print.c (dump_generic_node): Print VEC_COND_EXPR.
(print_call_name): Do not print VEC_COND_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88192
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 27 Sep 2004 18:47:29 +0000 (18:47 +0000)]
PR c++/17585
* cp-tree.h (shared_member_p): Declare.
* search.c (shared_member_p): Give it external linkage.
* semantics.c (finish_qualified_id_expr): Use it.
(finish_id_expression): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88188
138bc75d-0d04-0410-961f-
82ee72b054a4
dpatel [Mon, 27 Sep 2004 18:22:14 +0000 (18:22 +0000)]
* tree-pretty-print.c (dump_generic_node): Print VEC_COND_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88187
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 27 Sep 2004 16:19:18 +0000 (16:19 +0000)]
* i386.c (athlon_cost, k8_cost): Set BRANCH_COST to 5.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88181
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Mon, 27 Sep 2004 16:01:58 +0000 (16:01 +0000)]
PR fortran/16938
* gfortran.dg/pr16938.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88180
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 27 Sep 2004 14:46:55 +0000 (14:46 +0000)]
PR c++/17585
* semantics.c (finish_id_expression): Do not add "this->" to
static member functions.
PR c++/17585
* g++.dg/template/static8.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88174
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Mon, 27 Sep 2004 12:10:16 +0000 (12:10 +0000)]
cp:
PR c++/17681
* error.c (dump_type): Change TREE_VEC case into TREE_BINFO.
testsuite:
PR c++/17681
* g++.dg/other/error9.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88170
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Mon, 27 Sep 2004 12:00:08 +0000 (12:00 +0000)]
* class.c (struct count_depth_data): Remove.
(dfs_depth_post, dfs_depth_q): Remove.
(find_final_overrider): Use number of vbase classes as depth
bound.
* cp-tree.h (types_overlap_p): Remove.
* search.c (struct overlap_info): Remove.
(dfs_check_overlap, dfs_no_overlap_yet, types_overlap_p): Remove.
* pt.c (GTB_VIA_VIRTUAL, GTB_IGNORE_TYPE): Remove.
(get_template_base_recursive): Remove. Replace with ...
(get_template_base_r): ... this.
(struct get_template_base_data_s): New.
(get_template_base): Use get_template_base_r via dfs_walk. Always
return NULL on failure.
(unify): Remove error_mark_node check from get_template_base result.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88169
138bc75d-0d04-0410-961f-
82ee72b054a4