platform/upstream/gcc.git
18 years agocall.c (standard_conversion): Return NULL instead of 0.
Volker Reichelt [Tue, 14 Feb 2006 15:54:34 +0000 (15:54 +0000)]
call.c (standard_conversion): Return NULL instead of 0.

* call.c (standard_conversion): Return NULL instead of 0.
(build_user_type_conversion_1): Likewise.
(tourney): Likewise.
* decl.c (redeclaration_error_message): Likewise.
* error.c (language_to_string): Likewise.

From-SVN: r110976

18 years agore PR tree-optimization/26260 (PTA is slow with large structs (hits clisp))
Daniel Berlin [Tue, 14 Feb 2006 14:49:13 +0000 (14:49 +0000)]
re PR tree-optimization/26260 (PTA is slow with large structs (hits clisp))

2006-02-14  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/26260

* doc/invoke.texi (max-fields-for-field-sensitive): Document
param.
* params.h (MAX_FIELDS_FOR_FIELD_SENSITIVE): New.
* params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Ditto.
* tree-ssa-structalias.c (create_variable_info_for): Use
MAX_FIELDS_FOR_FIELD_SENSITIVE.

From-SVN: r110972

18 years agoAdd forgotten file.
Zdenek Dvorak [Tue, 14 Feb 2006 13:51:51 +0000 (13:51 +0000)]
Add forgotten file.

From-SVN: r110965

18 years agoinvoke.texi (-fprefetch-loop-arrays, [...]): Document.
Zdenek Dvorak [Tue, 14 Feb 2006 12:22:11 +0000 (13:22 +0100)]
invoke.texi (-fprefetch-loop-arrays, [...]): Document.

* doc/invoke.texi (-fprefetch-loop-arrays, -fprefetch-loop-arrays-rtl):
Document.
* tree-ssa-loop-niter.c (number_of_iterations_ne,
number_of_iterations_lt, number_of_iterations_cond): Remember the shape
of the ending condition.
* tree-ssa-loop-manip.c: Include params.h.
(build_if_stmt, can_unroll_loop_p, determine_exit_conditions,
tree_unroll_loop): New functions.
* tree-pass.h (pass_loop_prefetch): Declare.
* loop.c (rest_of_handle_loop_optimize): Test for
-fprefetch-loop-arrays-rtl.
* tree-scalar-evolution.h (affine_iv): Moved to tree-flow.h.
* timevar.def (TV_TREE_PREFETCH): New timevar.
* tree-ssa-loop.c (tree_ssa_loop_prefetch, gate_tree_ssa_loop_prefetch,
pass_loop_prefetch): New.
* tree-cfgcleanup.c: Include tree-scalar-evolution.h.
(cleanup_tree_cfg_loop): Call scev_reset.
* common.opt (fprefetch-loop-arrays-rtl): Add.
* tree-ssa-loop-prefetch.c: New file.
* tree-outof-ssa.c (struct value_expr_d): Add expr_vars field.
(new_temp_expr_table): Initialize expr_vars.
(free_temp_expr_table): Cleanup expr_vars.
(check_replaceable, find_replaceable_in_bb): Prevent accumulating
expressions from being merged into one.
* tree-flow.h (affine_iv): Moved from tree-scalar-evolution.h.
(struct tree_niter_desc): Add control, bound and cmp fields.
(tree_ssa_prefetch_arrays, can_unroll_loop_p, tree_unroll_loop):
Declare.
* Makefile.in (tree-ssa-loop-prefetch.o): Add.
(tree-cfgcleanup.o): Add SCEV_H dependency.
(tree-ssa-loop-manip.o): Add PARAMS_H dependency.
* passes.c (init_optimization_passes): Add pass_loop_prefetch.

From-SVN: r110964

18 years agore PR tree-optimization/26258 (Wrong alias information for struct addresses in PHIs)
Richard Guenther [Tue, 14 Feb 2006 09:58:57 +0000 (09:58 +0000)]
re PR tree-optimization/26258 (Wrong alias information for struct addresses in PHIs)

2006-02-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/26258
* tree-ssa-structalias.c (find_func_aliases): Handle aggregates
in PHI argument processing.

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

From-SVN: r110963

18 years ago[multiple changes]
Paolo Bonzini [Tue, 14 Feb 2006 09:36:24 +0000 (09:36 +0000)]
[multiple changes]

2006-02-14  Paolo Bonzini  <bonzini@gnu.org>

Sync from src:

2005-12-27  Leif Ekblad  <leif@rdos.net>

        * configure.in: Add support for RDOS target.
        * configure: Regenerate.

2006-02-14  Paolo Bonzini  <bonzini@gnu.org>
            Andreas Schwab  <schwab@suse.de>

        * configure: Regenerate.

config:
2006-02-14  Paolo Bonzini  <bonzini@gnu.org>
            Andreas Schwab  <schwab@suse.de>

        * acx.m4 (NCN_STRICT_CHECK_TARGET_TOOLS): Use correct program name.
        (ACX_CHECK_INSTALLED_TARGET_TOOL): Likewise, and always set $1.

Co-Authored-By: Andreas Schwab <schwab@suse.de>
From-SVN: r110961

18 years agosimplify-rtx.c (simplify_unary_operation_1): Return new expression in the requested...
Adam Nemet [Tue, 14 Feb 2006 07:10:35 +0000 (07:10 +0000)]
simplify-rtx.c (simplify_unary_operation_1): Return new expression in the requested machine mode.

* simplify-rtx.c (simplify_unary_operation_1) <TRUNCATE>: Return
new expression in the requested machine mode.

From-SVN: r110959

18 years agooptabs.c (expand_abs): Don't call do_jump_by_parts_greater_rtx directly...
Roger Sayle [Tue, 14 Feb 2006 02:59:42 +0000 (02:59 +0000)]
optabs.c (expand_abs): Don't call do_jump_by_parts_greater_rtx directly...

* optabs.c (expand_abs): Don't call do_jump_by_parts_greater_rtx
directly, instead let do_compare_rtx_and_jump handle this for us.
* expr.c (expand_expr_real_1): Likewise.
* dojump.c (do_jump_by_parts_greater_rtx): Make static.  Move
before do_jump_by_parts_greater.
(do_jump_by_parts_greater): Move after do_jump_by_parts_greater_rtx.
* expr.h (do_jump_by_parts_greater_rtx): Delete prototype.

From-SVN: r110954

18 years agoquadlib.c: Use defines instead of enum qfcmp_magic.
John David Anglin [Tue, 14 Feb 2006 00:22:04 +0000 (00:22 +0000)]
quadlib.c: Use defines instead of enum qfcmp_magic.

* pa/quadlib.c: Use defines instead of enum qfcmp_magic.

From-SVN: r110947

18 years agoDaily bump.
GCC Administrator [Tue, 14 Feb 2006 00:17:46 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110945

18 years agore PR rtl-optimization/26235 (FAIL: gcc.c-torture/execute/ieee/fp-cmp-8l.c execution...
Zdenek Dvorak [Mon, 13 Feb 2006 23:19:49 +0000 (00:19 +0100)]
re PR rtl-optimization/26235 (FAIL: gcc.c-torture/execute/ieee/fp-cmp-8l.c execution at -O1, -O2 and -Os)

PR rtl-optimization/26235
* loop-invariant.c (hash_invariant_expr_1): Handle 'i' and 'n' formats.
(invariant_expr_equal_p): Handle 'i' and 'n' formats.  Fail on unknown
format.

From-SVN: r110939

18 years agotree-vrp.c (extract_range_from_binary_expr): Remove handling of TRUTH_XOR_EPR.
Jeff Law [Mon, 13 Feb 2006 23:08:00 +0000 (16:08 -0700)]
tree-vrp.c (extract_range_from_binary_expr): Remove handling of TRUTH_XOR_EPR.

* tree-vrp.c (extract_range_from_binary_expr): Remove handling of
TRUTH_XOR_EPR.

From-SVN: r110938

18 years agocp-tree.h (warn_hidden): Remove prototype.
Volker Reichelt [Mon, 13 Feb 2006 22:39:00 +0000 (22:39 +0000)]
cp-tree.h (warn_hidden): Remove prototype.

* cp-tree.h (warn_hidden): Remove prototype.
* class.c (warn_hidden): Make static.

From-SVN: r110936

18 years agocp-tree.h (build_type_conversion): Remove prototype.
Volker Reichelt [Mon, 13 Feb 2006 22:37:02 +0000 (22:37 +0000)]
cp-tree.h (build_type_conversion): Remove prototype.

* cp-tree.h (build_type_conversion): Remove prototype.
* cvt.c (build_type_conversion): Add prototype, make static.

From-SVN: r110935

18 years agocp-tree.h (push_tinst_level): Remove prototype.
Volker Reichelt [Mon, 13 Feb 2006 22:32:47 +0000 (22:32 +0000)]
cp-tree.h (push_tinst_level): Remove prototype.

* cp-tree.h (push_tinst_level): Remove prototype.
(pop_tinst_level): Likewise.
* pt.c (push_tinst_level): Add prototype, make static.
(pop_tinst_level): Likewise.

From-SVN: r110934

18 years agodecl.c (grokdeclarator): Return NULL_TREE instead of 0.
Volker Reichelt [Mon, 13 Feb 2006 22:05:40 +0000 (22:05 +0000)]
decl.c (grokdeclarator): Return NULL_TREE instead of 0.

* decl.c (grokdeclarator): Return NULL_TREE instead of 0.
* typeck.c (unary_complex_lvalue): Likewise.

From-SVN: r110933

18 years agolex.c (parse_strconst_pragma): Return error_mark_node instead of "(tree)-1" to indica...
Volker Reichelt [Mon, 13 Feb 2006 22:00:35 +0000 (22:00 +0000)]
lex.c (parse_strconst_pragma): Return error_mark_node instead of "(tree)-1" to indicate failure.

* lex.c (parse_strconst_pragma): Return error_mark_node instead of
"(tree)-1" to indicate failure.  Simplify.
(handle_pragma_interface): Test for error_mark_node instead of
"(tree)-1".
(handle_pragma_implementation): Likewise.

From-SVN: r110932

18 years agore PR fortran/26246 (return string length is being marked as TREE_STATIC and TREE_PUBLIC)
Andrew Pinski [Mon, 13 Feb 2006 21:31:18 +0000 (22:31 +0100)]
re PR fortran/26246 (return string length is being marked as TREE_STATIC and TREE_PUBLIC)

2006-02-13  Andrew Pinski  <pinskia@physics.uc.edu>
    Jakub Jelinek  <jakub@redhat.com>

PR fortran/26246
* trans-decl.c (gfc_get_symbol_decl, gfc_get_fake_result_decl): Use
gfc_add_decl_to_function rather than gfc_finish_var_decl on length.

* gfortran.dg/pr26246_1.f90: New test.
* gfortran.dg/pr26246_2.f90: New test.

From-SVN: r110929

18 years agore PR middle-end/26092 (ICE on const function pointer assigned to a builtin function)
Jakub Jelinek [Mon, 13 Feb 2006 21:28:03 +0000 (22:28 +0100)]
re PR middle-end/26092 (ICE on const function pointer assigned to a builtin function)

PR middle-end/26092
* gimplify.c (gimplify_call_expr): Don't call get_callee_fndecl
twice if decl is a builtin.  When trying again, call get_callee_fndecl
first to verify it is still a builtin.

* gcc.c-torture/compile/20060208-1.c: New test.

From-SVN: r110927

18 years agore PR fortran/26074 (Module array cannot be automatic or assumed shape)
Paul Thomas [Mon, 13 Feb 2006 21:22:55 +0000 (21:22 +0000)]
re PR fortran/26074 (Module array cannot be automatic or assumed shape)

2006-02-13  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/26074
PR fortran/25103
* resolve.c (resolve_symbol): Extend the requirement that module
arrays have constant bounds to those in the main program.  At the
same time simplify the array bounds, to avoiding trapping parameter
array references, and exclude automatic character length from main
and modules. Rearrange resolve_symbol and resolve_derived to put as
each flavor together, as much as is possible and move all specific
code for flavors FL_VARIABLE, FL_PROCEDURE and FL_PARAMETER into new
functions.
(resolve_fl_var_and_proc, resolve_fl_variable, resolve_fl_procedure):
New functions to do work of resolve_symbol.
(resolve_index_expr): New function that is called from resolved_symbol
and is extracted from resolve_charlen.
(resolve_charlen): Call this new function.
(resolve_fl_derived): Renamed resolve_derived to be consistent with
the naming of the new functions for the other flavours.  Change the
charlen checking so that the style is consistent with other similar
checks. Add the generation of the gfc_dt_list, removed from resolve_
symbol.

PR fortran/20861
* resolve.c (resolve_actual_arglist): Prevent internal procedures
from being dummy arguments.

PR fortran/20871
* resolve.c (resolve_actual_arglist): Prevent pure but non-intrinsic
procedures from being dummy arguments.

PR fortran/25083
* resolve.c (check_data_variable): Add test that data variable is in
COMMON.

PR fortran/25088
* resolve.c (resolve_call): Add test that the subroutine does not
have a type.

2006-02-13  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/26074
PR fortran/25103
* gfortran.dg/module_parameter_array_refs_1.f90: New test.
* gfortran.dg/bad_automatic_objects_1.f90: New test.
* gfortran.dg/automatic_module_variable.f90: Change error message.

PR fortran/20861
* gfortran.dg/internal_dummy_1.f90: New test.

PR fortran/20871
* gfortran.dg/elemental_non_intrinsic_dummy_1.f90: New test.

PR fortran/25083
* gfortran.dg/uncommon_block_data_1.f90: New test.
* gfortran.dg/equiv_constraint_7.f90: Correct non-compliance of test
with standard.

PR fortran/25088
* gfortran.dg/typed_subroutine_1.f90: New test.

From-SVN: r110926

18 years agoIndex: gcc/ChangeLog
Geoffrey Keating [Mon, 13 Feb 2006 21:17:59 +0000 (21:17 +0000)]
Index: gcc/ChangeLog
2006-02-13  Geoffrey Keating  <geoffk@apple.com>

* dwarf2out.c (base_type_die): Don't add AT_name here.
(subrange_type_die): Don't add AT_name here.
(modified_type_die): Rearrange code flow.  Do add AT_name here.

Index: gcc/testsuite/ChangeLog
2006-02-13  Geoffrey Keating  <geoffk@apple.com>

* objc.dg/dwarf-1.m: New.

From-SVN: r110925

18 years agore PR rtl-optimization/26247 (gcc.dg/tree-ssa/gen-vect-26.c, 28 and 32. int_mode_for_...
Zdenek Dvorak [Mon, 13 Feb 2006 20:27:44 +0000 (21:27 +0100)]
re PR rtl-optimization/26247 (gcc.dg/tree-ssa/gen-vect-26.c, 28 and 32. int_mode_for_mode ICE strict_low_part loop-invariant)

PR rtl-optimization/26247
PR rtl-optimization/26248
* loop-invariant.c (may_assign_reg_p): Do not allow VOIDmode.

From-SVN: r110924

18 years agofloatunditf.c: Use if __LDBL_MANT_DIG__ == 113.
Richard Sandiford [Mon, 13 Feb 2006 19:56:21 +0000 (19:56 +0000)]
floatunditf.c: Use if __LDBL_MANT_DIG__ == 113.

* config/floatunditf.c: Use if __LDBL_MANT_DIG__ == 113.
* config/fixtfdi.c: Likewise.
* config/fixunstfdi.c: Likewise.
* config/floatditf.c: Likewise.

From-SVN: r110923

18 years agore PR middle-end/24427 (missing optimization opportunity with binary operators)
Roger Sayle [Mon, 13 Feb 2006 18:33:32 +0000 (18:33 +0000)]
re PR middle-end/24427 (missing optimization opportunity with binary operators)

PR middle-end/24427
* fold-const.c (fold_binary) <BIT_IOR_EXPR>: Transform (X&C1)|C2
into (X,C2) if C1 is a subset of the bits of C2.  Transform
(X&C1)|C2 into X|C2 if C1|C2 == ~0.  Canonicalize (X&C1)|C2 as
(X&(C1&~C2))|C2.
<BIT_AND_EXPR>: Canonicalize (X|C1)&C2 as (X&C2)|(C1&C2).

* gcc.dg/tree-ssa/andor-1.c: New test case.

From-SVN: r110918

18 years agore PR target/25376 (section attribute doesn't work on darwin)
Josh Conner [Mon, 13 Feb 2006 18:12:17 +0000 (18:12 +0000)]
re PR target/25376 (section attribute doesn't work on darwin)

PR target/25376
* varasm.c (function_section): Check for section name before
calling select_section on targets that define
USE_SELECT_SECTION_FOR_FUNCTIONS.  On other targets, use
unlikely_text_section instead of hot_function_section if
first_function_block_is_cold.
* gcc.dg/pr25376.c: New test.

* gcc.c-torture/compile/pr23237.c: Only compile test -- don't
assemble.
* lib/target-supports.exp (check_named_sections_available):
Only compile named-sections test -- don't assemble.

From-SVN: r110917

18 years agoAdd PR marker for:
Joern Rennecke [Mon, 13 Feb 2006 15:32:57 +0000 (15:32 +0000)]
Add PR marker for:

PR middle-end/25335
* reload1.c (gen_reload): Also use find_replacement in UNARY_P case.

From-SVN: r110916

18 years ago* reload1.c (gen_reload): Also use find_replacement in UNARY_P case.
J"orn Rennecke [Mon, 13 Feb 2006 15:31:31 +0000 (15:31 +0000)]
* reload1.c (gen_reload): Also use find_replacement in UNARY_P case.

From-SVN: r110915

18 years agore PR rtl-optimization/26222 (build failuring in libjava)
Zdenek Dvorak [Mon, 13 Feb 2006 11:21:23 +0000 (12:21 +0100)]
re PR rtl-optimization/26222 (build failuring in libjava)

PR rtl-optimization/26222
* function.c (assign_stack_temp_for_type): Do not reuse stack slots
after tree->rtl expansion.
* loop-invariant.c (move_invariant_reg): Use force_operand on rhs
before passing it to emit_move_insn.

From-SVN: r110912

18 years agore PR c++/26151 (duplicate 'duplicate' diagnostic)
Volker Reichelt [Mon, 13 Feb 2006 10:29:31 +0000 (10:29 +0000)]
re PR c++/26151 (duplicate 'duplicate' diagnostic)

PR c++/26151
* parser.c (cp_parser_decl_specifier_seq): Check for duplicate
decl-specifiers.  Remove extra check for duplicate 'friend'.
* decl.c (grokdeclarator): Remove check for duplicate
decl-specifiers.  Set longlong together with long_p.

From-SVN: r110911

18 years agore PR libgomp/25936 (libgomp needs to link against rt on HPUX)
Roger Sayle [Mon, 13 Feb 2006 02:33:37 +0000 (02:33 +0000)]
re PR libgomp/25936 (libgomp needs to link against rt on HPUX)

2006-02-12  Roger Sayle  <roger@eyesopen.com>
    John David Anglin  <dave@hiauly1.hia.nrc.ca>

PR libgomp/25936
* configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.

Co-Authored-By: John David Anglin <dave@hiauly1.hia.nrc.ca>
From-SVN: r110908

18 years agoinvoke.texi (-Write-strings): Document that it is enabled by default.
Gabriel Dos Reis [Mon, 13 Feb 2006 01:57:29 +0000 (01:57 +0000)]
invoke.texi (-Write-strings): Document that it is enabled by default.

2006-02-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * doc/invoke.texi (-Write-strings): Document that it is
enabled by
        default.
        * c.opt (-Wwrite-strings): Declare variable
warn_write_strings.
        Clarify documentation.
        * c-common.h (warn_write_strings): Remove.
        * c-common.c (warn_write_strings): Likewise.
        * c-opts.c (c_common_init_options): Enable -Wwrite-strings by
        default for C++.

testsuite/
2006-02-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * g++.dg/warn/no-write-strings.C: New test.
        * g++.dg/warn/write-strings.C: Likewise.
        * g++.dg/warn/write-strings-default.C: Likewise.

From-SVN: r110907

18 years agore PR middle-end/25724 (Emits call to __cmpdi2 for long long comparison in switches)
Roger Sayle [Mon, 13 Feb 2006 01:55:37 +0000 (01:55 +0000)]
re PR middle-end/25724 (Emits call to __cmpdi2 for long long comparison in switches)

PR middle-end/25724
* dojump.c (do_jump): Call do_compare_rtx_and_jump.
(do_jump_parts_zero_rtx): New function renamed from
do_jump_parts_equality_rtx.  Made static.  Add a mode argument.
(do_jump_parts_equality_rtx): New function split out from
do_jump_parts_equality.  Old implementation renamed as above.
Call do_jump_parts_zero_rtx if either operand is zero.
(do_jump_parts_equality): Call do_jump_parts_equality_rtx to
do all of the heavy lifting.
(do_compare_rtx_and_jump): Handle multi-word comparisons by
calling either do_jump_by_parts_greater_rtx or
do_jump_by_parts_equality_rtx.
* expr.h (do_jump_by_parts_equality_rtx): Remove prototype.
* expmed.c (do_cmp_and_jump): Now multi-word optimization has
moved to do_compare_rtx_and_jump, call it directly.
* stmt.c (do_jump_if_equal): Remove static prototype.  Add a
mode argument.  Call do_compare_rtx_and_jump.
(emit_case_nodes): Update calls to do_jump_if_equal.

From-SVN: r110906

18 years agoDaily bump.
GCC Administrator [Mon, 13 Feb 2006 00:17:49 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110904

18 years agore PR rtl-optimization/26225 (GCC error: in emit_move_multi_word, at expr.c:3053)
Zdenek Dvorak [Mon, 13 Feb 2006 00:02:37 +0000 (01:02 +0100)]
re PR rtl-optimization/26225 (GCC error: in emit_move_multi_word, at expr.c:3053)

PR rtl-optimization/26225
* loop-invariant.c (may_assign_reg_p): Do not allow BLKmode operands.

From-SVN: r110898

18 years agore PR rtl-optimization/26232 (cc0 targets broken; loop-invariants-move code doesn...
Zdenek Dvorak [Sun, 12 Feb 2006 22:32:33 +0000 (23:32 +0100)]
re PR rtl-optimization/26232 (cc0 targets broken; loop-invariants-move code doesn't handle cc0.)

PR rtl-optimization/26232
* loop-invariant.c (find_invariant_insn): Ignore insns that set CC0.

From-SVN: r110897

18 years agore PR libfortran/25949 (Unbounded I/O buffer memory usage for formatted IO)
Janne Blomqvist [Sun, 12 Feb 2006 19:59:32 +0000 (21:59 +0200)]
re PR libfortran/25949 (Unbounded I/O buffer memory usage for formatted IO)

2006-02-12  Janne Blomqvist  <jb@gcc.gnu.org>

PR libgfortran/25949
* io/io.h: Add set function pointer to struct stream.
* io/unix.c (fd_seek): Only update offset, don't seek.
(fd_sset): New function.
(fd_read): Call lseek directly if necessary.
(fd_write): Likewise.
(fd_open): Set pointer to fd_sset.
(mem_set): New function.
(open_internal): Set pointer to mem_set.
* io/transfer.c (write_block_direct): Rename to write_buf, add
error return, non-pointer length argument.
(unformatted_write): Update to use write_buf.
(us_write): Simplify by using swrite instead of salloc_w.
(write_us_marker): New function.
(new_record_w): Use sset instead of memset, use write_us_marker,
simplify by using swrite instead of salloc_w.

From-SVN: r110895

18 years agore PR fortran/25806 (problems with functions returning array pointers?)
Erik Edelmann [Sun, 12 Feb 2006 17:34:15 +0000 (17:34 +0000)]
re PR fortran/25806 (problems with functions returning array pointers?)

fortran/
2006-02-12  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/25806
        * trans-array.c (gfc_trans_allocate_array_storage): New argument
        dealloc; free the temporary only if dealloc is true.
        (gfc_trans_allocate_temp_array): New argument bool dealloc, to be
        passed onwards to gfc_trans_allocate_array_storage.
        (gfc_trans_array_constructor, gfc_conv_loop_setup): Update call to
        gfc_trans_allocate_temp_array.
        * trans-array.h (gfc_trans_allocate_temp_array): Update function
        prototype.
        * trans-expr.c (gfc_conv_function_call): Set new argument 'dealloc'
        to gfc_trans_allocate_temp_array to false in case of functions
        returning pointers.
        (gfc_trans_arrayfunc_assign): Return NULL for functions returning
        pointers.

testsuite/
2006-02-12  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/25806
        * gfortran.dg/ret_pointer_2.f90: New test.

From-SVN: r110893

18 years agoconfigure.in (enable_libgomp): Add AIX.
David Edelsohn [Sun, 12 Feb 2006 16:24:23 +0000 (16:24 +0000)]
configure.in (enable_libgomp): Add AIX.

        * configure.in (enable_libgomp): Add AIX.
        * configure: Regenerate.

From-SVN: r110892

18 years agore PR libstdc++/26211 ([DR 419, US 137 / US 139] basic_istream::tellg, seekg are...
Paolo Carlini [Sun, 12 Feb 2006 16:09:41 +0000 (16:09 +0000)]
re PR libstdc++/26211 ([DR 419, US 137 / US 139] basic_istream::tellg, seekg are unformatted input functions)

2006-02-12  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/26211
* include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
seekg(off_type, ios_base::seekdir)): Construct a sentry, as per
27.6.1.3/1.
* testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
* testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
* testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Adjust.
* testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
* testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
* testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.

From-SVN: r110891

18 years agore PR c++/24996 (ICE on throw code)
Jason Merrill [Sun, 12 Feb 2006 16:02:00 +0000 (11:02 -0500)]
re PR c++/24996 (ICE on throw code)

        PR c++/24996
        * except.c (build_throw): Add a CLEANUP_POINT_EXPR inside the
        TRY_CATCH_EXPR or MUST_NOT_THROW_EXPR.

From-SVN: r110889

18 years agore PR tree-optimization/24365 (statement makes a memory store with complex)
Jason Merrill [Sun, 12 Feb 2006 08:01:04 +0000 (03:01 -0500)]
re PR tree-optimization/24365 (statement makes a memory store with complex)

        PR tree-opt/24365
        * tree-inline.c (declare_return_variable): Just don't use the
        modify target if it's a gimple complex reg and the return slot
        isn't.

From-SVN: r110888

18 years agoDaily bump.
GCC Administrator [Sun, 12 Feb 2006 00:17:26 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110885

18 years agocontrib.texi: Update my entry.
Kaveh R. Ghazi [Sat, 11 Feb 2006 19:12:19 +0000 (19:12 +0000)]
contrib.texi: Update my entry.

* doc/contrib.texi: Update my entry.

From-SVN: r110874

18 years agore PR bootstrap/16787 (NAN constant "(0.0/0.0)" cannot be compiled by Tru64 cc)
Roger Sayle [Sat, 11 Feb 2006 16:50:41 +0000 (16:50 +0000)]
re PR bootstrap/16787 (NAN constant "(0.0/0.0)" cannot be compiled by Tru64 cc)

2006-02-11  Roger Sayle  <roger@eyesopen.com>
    R. Scott Bailey  <scott.bailey@eds.com>
    Bill Northcott  <w.northcott@unsw.edu.au>

PR bootstrap/16787
* floatformat.c: Include <float.h> where available.
(NAN): Use value of DBL_QNAN if defined, and NAN isn't.

Co-Authored-By: Bill Northcott <w.northcott@unsw.edu.au>
Co-Authored-By: R. Scott Bailey <scott.bailey@eds.com>
From-SVN: r110873

18 years ago* config/i386/darwin.h (DBX_REGISTER_NUMBER): Define.
Geoffrey Keating [Sat, 11 Feb 2006 00:31:04 +0000 (00:31 +0000)]
* config/i386/darwin.h (DBX_REGISTER_NUMBER): Define.

From-SVN: r110865

18 years agoDaily bump.
GCC Administrator [Sat, 11 Feb 2006 00:17:27 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110862

18 years agotree-inline.c (estimate_num_insns_1): Make OpenMP directives expensive.
Diego Novillo [Fri, 10 Feb 2006 22:34:42 +0000 (22:34 +0000)]
tree-inline.c (estimate_num_insns_1): Make OpenMP directives expensive.

* tree-inline.c (estimate_num_insns_1): Make OpenMP directives
expensive.

From-SVN: r110853

18 years agoinvoke.texi (-floop-optimize2): Removed.
Zdenek Dvorak [Fri, 10 Feb 2006 21:01:10 +0000 (22:01 +0100)]
invoke.texi (-floop-optimize2): Removed.

* doc/invoke.texi (-floop-optimize2): Removed.
* toplev.c (process_options): Remove handling of flag_loop_optimize2.
* loop-init.c (gate_handle_loop2): Do not test flag_loop_optimize2.
Test flag_branch_on_count_reg only if HAVE_doloop_end.
* common.opt (floop-optimize2): Removed.
(fmove-loop-invariants): Enabled by default.

* gcc.dg/20050105-1.c: Do not use -floop-optimize2.

From-SVN: r110852

18 years agotree-if-conv.c (combine_blocks): Free the result of get_loop_exit_edges.
Sebastian Pop [Fri, 10 Feb 2006 20:46:03 +0000 (21:46 +0100)]
tree-if-conv.c (combine_blocks): Free the result of get_loop_exit_edges.

        * tree-if-conv.c (combine_blocks): Free the result of
        get_loop_exit_edges.

From-SVN: r110850

18 years agofold-const.c (tree_expr_nonzero_p): Fix thinko.
Jeff Law [Fri, 10 Feb 2006 20:31:19 +0000 (13:31 -0700)]
fold-const.c (tree_expr_nonzero_p): Fix thinko.

* fold-const.c (tree_expr_nonzero_p): Fix thinko.

From-SVN: r110849

18 years agore PR tree-optimization/26213 (new (within last few days) infinite loop with -O1)
Jeff Law [Fri, 10 Feb 2006 19:22:58 +0000 (12:22 -0700)]
re PR tree-optimization/26213 (new (within last few days) infinite loop with -O1)

PR tree-optimization/26213
* tree-ssa-threadedge.c (simplify_control_stmt_condition): Do not
loop trying to follow SSA_NAME_VALUE chains.

* gcc.c-torture/compile/pr26213.c: New test.

From-SVN: r110846

18 years agore PR fortran/20858 (NULL doesn't get its argument type (kind))
Steven G. Kargl [Fri, 10 Feb 2006 19:01:05 +0000 (19:01 +0000)]
re PR fortran/20858 (NULL doesn't get its argument type (kind))

2006-02-05  Steven G. Kargl  <kargls@comcast.net>

PR fortran/20858
*decl.c (variable_decl): Improve error message.  Remove initialization
 typespec.  Wrap long line.
*expr.c (gfc_check_pointer_assign): Permit checking of type, kind type,
 and rank.
*simplify.c (gfc_simplify_null): Ensure type, kind type, and rank are set.

gfortran.dg/null_1.f90: New test.

From-SVN: r110845

18 years agore PR libstdc++/26181 (istream::operator>>(streambuf*) fails to set eofbit)
Paolo Carlini [Fri, 10 Feb 2006 18:29:04 +0000 (18:29 +0000)]
re PR libstdc++/26181 (istream::operator>>(streambuf*) fails to set eofbit)

2006-10-02  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/26181
* include/bits/streambuf.tcc (__copy_streambufs_eof): New, like
the existing __copy_streambufs but reporting eof in input.
(__copy_streambufs): Just use the latter.
* src/streambuf.cc (__copy_streambufs_eof): Adjust specializations
of __copy_streambufs.
* include/bits/istream.tcc (operator>>(__streambuf_type*)): Use
__copy_streambufs_eof instead.
* include/std/std_streambuf.h: Adjust.
* src/streambuf-inst.cc: Adjust.
* config/abi/pre/gnu.ver: Export the new symbols.
* testsuite/27_io/basic_istream/extractors_other/char/26181.cc: New.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/1.cc: Adjust.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc:
Likewise.

From-SVN: r110841

18 years agore PR fortran/14771 (frontend doesn't record parentheses)
Tobias Schlüter [Fri, 10 Feb 2006 18:08:27 +0000 (19:08 +0100)]
re PR fortran/14771 (frontend doesn't record parentheses)

fortran/
PR fortran/14771
* arith.c (eval_intrinsic): Accept INTRINSIC_PARENTHESES.
* expr.c (check_intrinsic_op): Likewise.
* module.c (mio_expr): Likewise.
testsuite/
PR fortran/14771
* gfortran.dg/parens_4.f90: New.
* gfortran.dg/parens_5.f90: New.

From-SVN: r110840

18 years agoclass.c (debug_class): Remove extern.
Volker Reichelt [Fri, 10 Feb 2006 13:49:19 +0000 (13:49 +0000)]
class.c (debug_class): Remove extern.

* class.c (debug_class): Remove extern.
(debug_thunks): Likewise.

From-SVN: r110836

18 years agotree-dfa.c (get_ref_base_and_extent): When computing maxsize deal with structures...
Richard Guenther [Fri, 10 Feb 2006 13:05:48 +0000 (13:05 +0000)]
tree-dfa.c (get_ref_base_and_extent): When computing maxsize deal with structures that end in implicitly variable...

2006-02-10  Richard Guenther  <rguenther@suse.de>

        * tree-dfa.c (get_ref_base_and_extent): When computing maxsize
        deal with structures that end in implicitly variable sized arrays.

From-SVN: r110834

18 years agopr23372-1.c: Remove empty file.
Richard Guenther [Fri, 10 Feb 2006 09:50:04 +0000 (09:50 +0000)]
pr23372-1.c: Remove empty file.

2006-02-10  Richard Guenther  <rguenther@suse.de>

        * testsuite/gcc.dg/pr23372-1.c: Remove empty file.

From-SVN: r110833

18 years ago* pthread_support.c: Conditionally include dlfcn.h.
Tom Tromey [Fri, 10 Feb 2006 01:58:30 +0000 (01:58 +0000)]
* pthread_support.c: Conditionally include dlfcn.h.

From-SVN: r110832

18 years agoDaily bump.
GCC Administrator [Fri, 10 Feb 2006 00:17:33 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110826

18 years agodump-parse-tree.c: Update copyright years.
Tobias Schlüter [Fri, 10 Feb 2006 00:16:25 +0000 (01:16 +0100)]
dump-parse-tree.c: Update copyright years.

* dump-parse-tree.c: Update copyright years.
* matchexp.c: Likewise.
* module.c: Likewise.

From-SVN: r110820

18 years agore PR fortran/14771 (frontend doesn't record parentheses)
Tobias Schlüter [Fri, 10 Feb 2006 00:10:47 +0000 (01:10 +0100)]
re PR fortran/14771 (frontend doesn't record parentheses)

fortran/
2006-02-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>

        PR fortran/14771
        * gfortran.h (gfc_intrinsic_op): Add INTRINSIC_PARENTHESES.
        * dump-parse-tree (gfc_show_expr): Handle INTRINSIC_PARENTHESES.
        * expr.c (simplify_intrinsic_op): Treat INTRINSIC_PARENTHESES as
        if it were INTRINSIC_UPLUS.
        * resolve.c (resolve_operator): Handle INTRINSIC_PARENTHESES.
        * match.c (intrinsic_operators): Add INTRINSIC_PARENTHESES.
        * matchexp.c (match_primary): Record parentheses surrounding
        numeric expressions.
        * module.c (intrinsics): Add INTRINSIC_PARENTHESES for module
        dumping.
        * trans-expr.c (gfc_conv_expr_op): Handle INTRINSIC_PARENTHESES.

testsuite/
2006-02-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
        Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/14771
        * gfortran.dg/parens_1.f90: New.
        * gfortran.dg/parens_2.f90: New.
        * gfortran.dg/parens_3.f90: New.

From-SVN: r110819

18 years agoClass.h (_Jv_IDispatchTable): Make it a struct.
Bryce McKinlay [Thu, 9 Feb 2006 23:59:30 +0000 (23:59 +0000)]
Class.h (_Jv_IDispatchTable): Make it a struct.

2006-02-09  Bryce McKinlay  <mckinlay@redhat.com>

* java/lang/Class.h (_Jv_IDispatchTable): Make it a struct. Put
'itable' inline, instead of as a pointer.
(java::lang::Class): Put 'idt' in anonymous union with 'ioffsets'.
* link.cc (null_idt): Update definition.
(_Jv_Linker::prepare_constant_time_tables): Allocate klass->idt
as a single struct. Use _Jv_AllocBytes, not _Jv_AllocRawObj.
(_Jv_Linker::generate_itable): Update to use 'ioffsets'.
(_Jv_Linker::find_iindex): Likewise. Update comment.
* java/lang/natClass.cc (_Jv_LookupInterfaceMethodIdx): Update for
_Jv_IDispatchTable change.
(_Jv_IsAssignableFrom): Likewise.

From-SVN: r110818

18 years agore PR fortran/26038 (ICE on allocation of assumed length CHARACTER dummy.)
Paul Thomas [Thu, 9 Feb 2006 23:23:28 +0000 (23:23 +0000)]
re PR fortran/26038 (ICE on allocation of assumed length CHARACTER dummy.)

2006-02-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/26038
* trans-stmt.c (gfc_trans_allocate): Provide assumed character length
scalar with missing backend_decl for the hidden dummy charlen.

PR fortran/25059
* interface.c (gfc_extend_assign): Remove detection of non-PURE
subroutine in assignment interface, with gfc_error, and put it in
* resolve.c (resolve_code).

PR fortran/25070
* interface.c (gfc_procedure_use): Flag rank checking for non-
elemental, contained or interface procedures in call to
(compare_actual_formal), where ranks are checked for assumed
shape arrays..

2006-02-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/26038
* gfortran.dg/allocate_char_star_scalar_1.f90: New test.

PR fortran/25059
* gfortran.dg/impure_assignment_1.f90: New test.

PR fortran/25070
* gfortran.dg/assumed_shape_ranks_1.f90: New test.

From-SVN: r110816

18 years agore PR rtl-optimization/24762 ([killloop-branch] code motion of non-invariant expressi...
Zdenek Dvorak [Thu, 9 Feb 2006 22:34:23 +0000 (23:34 +0100)]
re PR rtl-optimization/24762 ([killloop-branch] code motion of non-invariant expressions with hard registers.)

PR rtl-optimization/24762
* df-scan.c (df_bb_refs_record): Record correct registers defined on
eh edges.

From-SVN: r110815

18 years agotree-ssa-loop-ivopts.c (struct loop_data, loop_data): Removed.
Zdenek Dvorak [Thu, 9 Feb 2006 22:28:23 +0000 (23:28 +0100)]
tree-ssa-loop-ivopts.c (struct loop_data, loop_data): Removed.

* tree-ssa-loop-ivopts.c (struct loop_data, loop_data): Removed.
(struct ivopts_data): Add regs_used field.
(tree_ssa_iv_optimize_init): Do not allocate aux fields for loops.
(ivopts_global_cost_for_size, determine_set_costs): Use data->regs_used
instead of loop_data->regs_used;
(free_loop_data): Do not free aux fields for loops.
(tree_ssa_iv_optimize): Do not pass loops to tree_ssa_iv_optimize_init
and tree_ssa_iv_optimize_finalize.

From-SVN: r110813

18 years agosh.h (FUNCTION_VALUE): Don't handle CHAR_TYPE.
Kaz Kojima [Thu, 9 Feb 2006 21:03:23 +0000 (21:03 +0000)]
sh.h (FUNCTION_VALUE): Don't handle CHAR_TYPE.

2006-02-09  Kaz Kojima  <kkojima@gcc.gnu.org>

* config/sh/sh.h (FUNCTION_VALUE): Don't handle CHAR_TYPE.

From-SVN: r110812

18 years agore PR target/26141 (va_arg causes cc1plus ICE in gimplify_addr_expr)
J"orn Rennecke [Thu, 9 Feb 2006 20:54:12 +0000 (20:54 +0000)]
re PR target/26141 (va_arg causes cc1plus ICE in gimplify_addr_expr)

PR target/26141

gcc:
* sh.c (sh_gimplify_va_arg_expr): Don't change the result type when
computing the effective result type.

gcc/testsuite:
* g++.dg/expr/stdarg2.C: New test.

From-SVN: r110811

18 years agore PR inline-asm/16194 (global register with inline-asm and clobered)
J"orn Rennecke [Thu, 9 Feb 2006 19:17:09 +0000 (19:17 +0000)]
re PR inline-asm/16194 (global register with inline-asm and clobered)

PR inline-asm/16194

gcc:
* tree.h (decl_overlaps_hard_reg_set_p) Don't declare.
(tree_overlaps_hard_reg_set): Declare.
* stmt.c (decl_overlaps_hard_reg_set_p): Now static.  Change return
type and signature to match function type expected by walk_tree.
(tree_overlaps_hard_reg_set): New function.
(decl_conflicts_with_clobbers_p): Rename to:
(tree_conflicts_with_clobbers_p).  Take HARD_REG_SET * argument.
Use tree_overlaps_hard_reg_set.  Changed caller.
* doc/tm.texi (TARGET_MD_ASM_CLOBBERS): Replace
decl_overlaps_hard_reg_set_p with tree_overlaps_hard_reg_set.
* cris.c (cris_md_asm_clobbers): Likewise.

gcc/testsuite:
* gcc.dg/pr16194.c: New test.

From-SVN: r110810

18 years agoMake-lang.in (check-gnat): Run run_acats with $(SHELL).
Rainer Orth [Thu, 9 Feb 2006 17:29:28 +0000 (17:29 +0000)]
Make-lang.in (check-gnat): Run run_acats with $(SHELL).

ada:
* Make-lang.in (check-gnat): Run run_acats with $(SHELL).

testsuite:
* ada/acats/run_acats: Use portable variant of "$@".

From-SVN: r110807

18 years agoreload1.c (emit_input_reload_insns): Delete code that tries to inherit using find_equ...
Bernd Schmidt [Thu, 9 Feb 2006 17:26:41 +0000 (17:26 +0000)]
reload1.c (emit_input_reload_insns): Delete code that tries to inherit using find_equiv_reg.

* reload1.c (emit_input_reload_insns): Delete code that tries to
inherit using find_equiv_reg.

From-SVN: r110806

18 years agoc-common.h (flag_const_strings): Don't declare.
Gabriel Dos Reis [Thu, 9 Feb 2006 16:28:26 +0000 (16:28 +0000)]
c-common.h (flag_const_strings): Don't declare.

2006-02-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * c-common.h (flag_const_strings): Don't declare.
        * c-common.c (flag_const_strings): Remove.
        * c.opt (fconst_strings): Remove.
        * c-opts.c (c_common_handle_option): Remove
        * <OPT_fconst_strings>.
        <OPT_Wwrite_strings>: Don't set flag_const_strings.
        (c_common_init_options): Don't set flag_const_strings.
        * doc/invoke.texi (-fno-const-strings): Remove documentation.

cp/
2006-02-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * typeck.c (string_conv_p): Don't test for flag_const_strings.

testsuite/
2006-02-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * g++.old-deja/g++.benjamin/15351-2.C: Likewise.
        * g++.old-deja/g++.benjamin/15351-1.C: Remove.

From-SVN: r110804

18 years agoarm.md (tlobits_cbranch): New pattern.
Richard Earnshaw [Thu, 9 Feb 2006 15:18:10 +0000 (15:18 +0000)]
arm.md (tlobits_cbranch): New pattern.

* arm.md (tlobits_cbranch): New pattern.
* arm.h (arm_select_cc_mode): For thumb, only return CC_Nmode if
testing a single bit.

From-SVN: r110803

18 years agore PR tree-optimization/26179 (ICE while compiling mozilla in tree-ssa-pre.c)
Andrew Pinski [Thu, 9 Feb 2006 14:31:28 +0000 (14:31 +0000)]
re PR tree-optimization/26179 (ICE while compiling mozilla in tree-ssa-pre.c)

2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/26179
        * g++.dg/opt/pr26179.C: New test.
2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/26179
        * tree-ssa-pre.c (create_component_ref_by_pieces):
        Handle RETURN_DECL like VAR_DECL.

From-SVN: r110801

18 years agore PR middle-end/26134 (fold *(float*)(&complex_float_var) into REALPART_EXPR<complex...
Andrew Pinski [Thu, 9 Feb 2006 14:13:57 +0000 (14:13 +0000)]
re PR middle-end/26134 (fold *(float*)(&complex_float_var) into REALPART_EXPR<complex_float_var>)

2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/26134
        * fold-const.c (fold_indirect_ref_1): Fold
        "*(foo *)&complexfoo" to "__real__ complexfoo"
        and "((foo*)&complexfoo)[1]" to "__imag__ complexfoo".
2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/26134
        * gcc.dg/tree-ssa/complex-3.c: New test.

From-SVN: r110800

18 years agore PR java/26192 (ICE while compiling jar or class file (azureus))
Andrew Haley [Thu, 9 Feb 2006 14:05:31 +0000 (14:05 +0000)]
re PR java/26192 (ICE while compiling jar or class file (azureus))

2006-02-09  Andrew Haley  <aph@redhat.com>

        PR java/26192
        * expr.c (expand_invoke): Allow methods in arrays to be resolved
        in their superclass.

        * typeck.c (build_java_array_type): Generate TYPE_STUB_DECLs for
        array types.

From-SVN: r110799

18 years ago+2006-02-09 Andrew Pinski <pinskia@physics.uc.edu> + + * tree-flow-inline.h...
Andrew Pinski [Thu, 9 Feb 2006 13:53:40 +0000 (13:53 +0000)]
+2006-02-09 Andrew Pinski <pinskia@physics.uc.edu> + + * tree-flow-inline.h...

+2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * tree-flow-inline.h (var_can_have_subvars):
+       Volatile variables should not have subvariables.
+

+2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * gcc.c-torture/compile/volatile-1.c: New test.
+

From-SVN: r110796

18 years agore PR tree-optimization/26180 (wrong code due to VRP and unsigned multiplies with...
Diego Novillo [Thu, 9 Feb 2006 12:38:35 +0000 (12:38 +0000)]
re PR tree-optimization/26180 (wrong code due to VRP and unsigned multiplies with wraps)

PR 26180
* tree-vrp.c (vrp_int_const_binop): Detect overflow when
multiplying unsigned values.
Tidy comments.

testsuite

PR 26180
* gcc.dg/tree-ssa/pr26180.c: New test.

From-SVN: r110794

18 years agosparc.c (tls_call_delay): Fix oversight.
Eric Botcazou [Thu, 9 Feb 2006 12:22:09 +0000 (13:22 +0100)]
sparc.c (tls_call_delay): Fix oversight.

* config/sparc/sparc.c (tls_call_delay): Fix oversight.

From-SVN: r110790

18 years agore PR c++/25979 (incorrect codegen for conditional [SVO issue])
Jason Merrill [Thu, 9 Feb 2006 09:54:36 +0000 (04:54 -0500)]
re PR c++/25979 (incorrect codegen for conditional [SVO issue])

        PR c++/25979
        * tree.def: Elaborate on difference from MODIFY_EXPR.
        * doc/c-tree.texi (INIT_EXPR): Likewise.
        * gimplify.c (internal_get_tmp_var): Use INIT_EXPR.
        (gimplify_decl_expr, gimplify_init_ctor_eval): Likewise.
        (gimplify_target_expr): Likewise.
        (gimplify_cond_expr): Remove target handling.
        (gimplify_modify_expr): Don't clobber INIT_EXPR code here.
        (gimplify_expr): Clobber it here.
        (gimplify_modify_expr_rhs): Push assignment into COND_EXPR here.
        Do return slot optimization if we have an INIT_EXPR.

        PR tree-opt/24365
        * tree-inline.c (declare_return_variable): Also clear
        DECL_COMPLEX_GIMPLE_REG_P as needed in the modify_dest case.

        PR c++/16405
        * gimplify.c (gimplify_modify_expr_rhs): Re-enable *& handling.

        PR middle-end/22439
        * gimplify.c (gimplify_one_sizepos): Fix typo.

From-SVN: r110789

18 years agore PR libstdc++/26142 (global debug namespace clashes everywhere)
Benjamin Kosnik [Thu, 9 Feb 2006 05:07:09 +0000 (05:07 +0000)]
re PR libstdc++/26142 (global debug namespace clashes everywhere)

2006-02-08  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/26142
* include/debug/debug.h: Move debug alias inside namespace std,
same with namespace __gnu_cxx. Add top-level __gnu_debug
namespace.
* include/debug/hash_multimap.h: Nest within __gnu_cxx, not
std. Also, change nesting namespace name from __gnu_debug_def to
__gnu_debug.
* include/debug/hash_map.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/hash_set.h: Same.
* docs/html/debug.html: Same.
* testsuite/23_containers/vector/26412.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc:  Correct
qualifications for debug namespace change.
* testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/deque/invalidation/1.cc: Same.
* testsuite/23_containers/deque/invalidation/2.cc: Same.
* testsuite/23_containers/deque/invalidation/3.cc: Same.
* testsuite/23_containers/deque/invalidation/4.cc: Same.
* testsuite/23_containers/multiset/invalidation/1.cc: Same.
* testsuite/23_containers/multiset/invalidation/2.cc: Same.
* testsuite/23_containers/multimap/invalidation/1.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/bitset/invalidation/1.cc: Same.
* testsuite/23_containers/bitset/cons/16020.cc: Same.
* testsuite/23_containers/bitset/operations/13838.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/set/invalidation/1.cc: Same.
* testsuite/23_containers/set/invalidation/2.cc: Same.
* testsuite/23_containers/map/invalidation/1.cc: Same.
* testsuite/23_containers/map/invalidation/2.cc: Same.
* testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
* testsuite/21_strings/basic_string/2.cc: Same.

From-SVN: r110787

18 years agore PR libstdc++/26142 (global debug namespace clashes everywhere)
Benjamin Kosnik [Thu, 9 Feb 2006 04:31:38 +0000 (04:31 +0000)]
re PR libstdc++/26142 (global debug namespace clashes everywhere)

2006-02-08  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/26142
* include/debug/debug.h: Move debug alias inside namespace std,
same with namespace __gnu_cxx. Add top-level __gnu_debug
namespace.
* include/debug/hash_multimap.h: Nest within __gnu_cxx, not
std. Also, change nesting namespace name from __gnu_debug_def to
__gnu_debug.
* include/debug/hash_map.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/hash_set.h: Same.
* docs/html/debug.html: Same.
* testsuite/23_containers/vector/26412.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc:  Correct
qualifications for debug namespace change.
* testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/deque/invalidation/1.cc: Same.
* testsuite/23_containers/deque/invalidation/2.cc: Same.
* testsuite/23_containers/deque/invalidation/3.cc: Same.
* testsuite/23_containers/deque/invalidation/4.cc: Same.
* testsuite/23_containers/multiset/invalidation/1.cc: Same.
* testsuite/23_containers/multiset/invalidation/2.cc: Same.
* testsuite/23_containers/multimap/invalidation/1.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/bitset/invalidation/1.cc: Same.
* testsuite/23_containers/bitset/cons/16020.cc: Same.
* testsuite/23_containers/bitset/operations/13838.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/set/invalidation/1.cc: Same.
* testsuite/23_containers/set/invalidation/2.cc: Same.
* testsuite/23_containers/map/invalidation/1.cc: Same.
* testsuite/23_containers/map/invalidation/2.cc: Same.
* testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
* testsuite/21_strings/basic_string/2.cc: Same.

From-SVN: r110786

18 years agore PR tree-optimization/21417 (Missed jump threading opportunity on trees)
Jeff Law [Thu, 9 Feb 2006 02:36:33 +0000 (19:36 -0700)]
re PR tree-optimization/21417 (Missed jump threading opportunity on trees)

PR tree-optimization/21417
* tree-ssa-threadedge.c (thread_across_edge): Reject threading
across a backedge if the control statement at the end of the
block is data dependent on other statements in the same block.
(record_temporary_equivalences_from_stmts): Remove over-conservative
test for threading across backedges.

* gcc.dg/tree-ssa/pr21417.c: New test.

From-SVN: r110785

18 years agotree-ssa-dce.c (remove_dead_statement): When removing a dead control statement...
Jeff Law [Thu, 9 Feb 2006 02:18:59 +0000 (19:18 -0700)]
tree-ssa-dce.c (remove_dead_statement): When removing a dead control statement...

        * tree-ssa-dce.c (remove_dead_statement): When removing a dead
        control statement, handle all three special cases in the same
        manner as they all have the same desired solution.  No longer
        special case edge flag updating when the post dominator is
        the exit block.

From-SVN: r110784

18 years agore PR libgcj/25187 (dereferencing type-punned pointer warnings while building libgcj)
Bryce McKinlay [Thu, 9 Feb 2006 01:35:33 +0000 (01:35 +0000)]
re PR libgcj/25187 (dereferencing type-punned pointer warnings while building libgcj)

2006-02-08  Bryce McKinlay  <mckinlay@redhat.com>

        PR libgcj/25187:
        * gnu/gcj/io/natSimpleSHSStream.cc
        (gnu::gcj::io::SimpleSHSStream::shsFinal): Remove bogus cast.
        * interpret.cc (_Jv_InterpMethod::run): Simplify arguments to
        _Jv_InterpFrame().
        * boehm.cc: #undef some autoconf macros before including gc-config.h.
        (_Jv_MarkObject): Don't mark the class, it is reachable via the vtable.
        (_Jv_MarkArray): Likewise.
        * java/lang/ref/natReference.cc (java::lang::ref::Reference::create):
        Simplify _Jv_GCRegisterDisappearingLink() call.
        * java/lang/Class.h (getComponentType): Use element_type.
        (element_type): New field declaration, as a union with "methods".
        * java/lang/natClassLoader.cc (_Jv_NewArrayClass): Use "element_type".
        * java/net/natVMNetworkInterfacePosix.cc
        (java::net::VMNetworkInterface::getInterfaces): Add "int" cast to
        avoid sign comparison warning.
        * include/java-interp.h (_Jv_InterpFrame): Take thread as second
        argument, not parent call frame.
        * include/x86_64-signal.h (MAKE_THROW_FRAME): Use "gregs" directly,
        without a cast.
        (restore_rt): Declare with hidden visibility, not "static".
        * posix.cc (_Jv_platform_initProperties): Make "tmpdir" a string
        constant.
        * jni.cc (_Jv_JNI_DestroyJavaVM): Use a union to avoid strict alias
        warning

From-SVN: r110783

18 years agoDaily bump.
GCC Administrator [Thu, 9 Feb 2006 00:17:37 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110781

18 years agotree.def (CHAR_TYPE): Remove.
Roger Sayle [Wed, 8 Feb 2006 23:57:21 +0000 (23:57 +0000)]
tree.def (CHAR_TYPE): Remove.

* tree.def (CHAR_TYPE): Remove.
* dbxout.c (dbxout_type): Delete dead handling of CHAR_TYPE.
* dwarf2out.c (base_type_die, is_base_type): Likewise.
(gen_type_die) <ARRAY_TYPE>: Remove handling of CHAR_TYPE arrays.
(gen_string_type_die): Delete unreachable function.

* tree-pretty-print.c (dump_generic_node): Don't handle CHAR_TYPE.
* tree.c (build_int_cst_wide, type_contains_placeholder_1,
type_hash_eq, variably_modified_type_p, walk_type_fields): Likewise.
* tree.h (NUMERICAL_TYPE_CHECK, INTEGRAL_TYPE_P): Likewise.
* builtins.c (type_to_class): Likewise.
* fold-const.c (fold_convert, build_range_check,
merge_ranges): Likewise.
* expr.c (count_type_elements): Likewise.
* c-pretty-print.c (pp_c_type_specifier): Likewise.
* stor-layout.c (layout_type): Likewise.
* ipa-type-escape.c (type_to_consider): Likewise.
* gimplify.c (omp_firstprivatize_type_sizes,
gimplify_type_sizes): Likewise.
* explow.c (promote_mode): Likewise.
* tree-sra.c (is_sra_scalar_type): Likewise.
* varasm.c (output_constant): Likewise.
* tree-inline.c (remap_type_1): Likewise.
* convert.c (convert_to_pointer, convert_to_real,
convert_to_integer, convert_to_complex): Likewise.

From-SVN: r110775

18 years agoAdd PR libgcj/26113 to last entry.
Bryce McKinlay [Wed, 8 Feb 2006 23:27:50 +0000 (23:27 +0000)]
Add PR libgcj/26113 to last entry.

From-SVN: r110774

18 years ago* testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
Ulrich Weigand [Wed, 8 Feb 2006 22:36:39 +0000 (22:36 +0000)]
* testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.

From-SVN: r110773

18 years agoPR libstdc++/26133 (DR 241, [WP])
Paolo Carlini [Wed, 8 Feb 2006 21:51:55 +0000 (21:51 +0000)]
PR libstdc++/26133 (DR 241, [WP])

2006-02-08  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/26133  (DR 241, [WP])
* include/bits/stl_algo.h (__unique_copy(,,, forward_iterator_tag,
output_iterator_tag), __unique_copy(,,, input_iterator_tag,
output_iterator_tag), __unique_copy(,,, input_iterator_tag,
forward_iterator_tag), and predicated counterparts): Add.
(__unique_copy(,,, output_iterator_tag), __unique_copy(,,,
forward_iterator_tag), and predicated counterparts): Remove.
(unique_copy): Adjust, dispatch to the three helpers above.
* testsuite/25_algorithms/unique_copy/2.cc: New.
* testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
* testsuite/25_algorithms/unique_copy/3.cc: Likewise.
* docs/html/ext/howto.html: Add an entry for DR 241.

* testsuite/25_algorithms/unique_copy/1.cc: Minor cosmetic changes.

From-SVN: r110772

18 years agore PR libfortran/25425 ([4.1 only] F95 and F2003 differ on list-directed output for...
François-Xavier Coudert [Wed, 8 Feb 2006 20:54:14 +0000 (20:54 +0000)]
re PR libfortran/25425 ([4.1 only] F95 and F2003 differ on list-directed output for 0.0)

PR libfortran/25425

* trans-decl.c (gfc_generate_function_code): Add new argument,
pedantic, to set_std call.

* libgfortran.h: Add pedantic field to compile_options struct.
* io/write.c (calculate_G_format): Depending on the standard,
choose E or F format for list-directed output of 0.0.
* runtime/error.c (notify_std): Make warning and error dependent
on pedanticity.
* runtime/compile_options.c (set_std): Use new pedantic argument.

From-SVN: r110769

18 years agolink.cc (_Jv_Linker::print_class_loaded): Declare string constants as "const char *".
Bryce McKinlay [Wed, 8 Feb 2006 20:38:13 +0000 (20:38 +0000)]
link.cc (_Jv_Linker::print_class_loaded): Declare string constants as "const char *".

2006-02-08  Bryce McKinlay  <mckinlay@redhat.com>

* link.cc (_Jv_Linker::print_class_loaded): Declare string constants
as "const char *".
* verify.cc (verify_fail): Likewise.
* gnu/classpath/natSystemProperties.cc (file_encoding): Likewise.
* interpret.cc (throw_internal_error, throw_class_format_error):
Likewise.
* gcj/javaprims.h (_Jv_hashUtf8String, _Jv_Utf8Const::space_needed,
_Jv_Utf8Const::init, _Jv_makeUtf8Const): Likewise.
* java/lang/Class.h (_Jv_InitPrimClass): Likewise.
* include/jvm.h (_Jv_strLengthUtf8, _Jv_makeUtf8Const): Likewise.
* defineclass.cc (throw_internal_error, throw_no_class_def_found_error,
is_attribute_name): Likewise.
* prims.cc (_Jv_strLengthUtf8, _Jv_hashUtf8String, _Jv_Utf8Const::init,
_Jv_makeUtf8Const, _Jv_InitPrimClass): Likewise.

From-SVN: r110767

18 years agoPR libgcj/26063, PR libgcj/17978, PR libgcj/10598:
Tom Tromey [Wed, 8 Feb 2006 20:07:29 +0000 (20:07 +0000)]
PR libgcj/26063, PR libgcj/17978, PR libgcj/10598:

* defineclass.cc (parse): Use _Jv_AllocRawObj.
(read_constpool): Likewise.
(read_one_code_attribute): Use internal function name.
(handleConstantPool): Use _Jv_AllocRawObj.
(handleInterfacesBegin): Likewise.
(handleFieldsBegin): Likewise.
(handleMethodsBegin): Likewise.
(handleCodeAttribute): Likewise.
(handleMethodsEnd): Likewise.
* include/jvm.h (new_vtable): Use _Jv_AllocRawObj.
* interpret.cc (do_allocate_static_fields): Use _Jv_AllocRawObj.
Allocate reference fields separately.
* link.cc (prepare_constant_time_tables): Use _Jv_AllocRawObj.
(add_miranda_methods): Likewise.
(generate_itable): Use _Jv_AllocBytes.
(find_iindex): Likewise.
(struct method_closure): New structure.
(create_error_method): Use struct method_closure; allocate with
_Jv_AllocBytes.
(ensure_fields_laid_out): Separate reference fields from
non-reference fields.
* boehm.cc (_Jv_MarkObj): Mark vtable.  Only mark direct fields
of Class.
(_Jv_MarkArray): Mark vtable.
(_Jv_AllocRawObj): Don't allocate objects of size 0.
* include/execution.h
(_Jv_ExecutionEngine::allocate_static_fields): Added 'int'
parameter.
(struct _Jv_CompiledEngine): Updated.
(class _Jv_InterpreterEngine): Updated.

From-SVN: r110763

18 years agodf-scan.c (df_def_record_1): A set destination may be a parallel regardless of mode.
Daniel Berlin [Wed, 8 Feb 2006 18:37:01 +0000 (18:37 +0000)]
df-scan.c (df_def_record_1): A set destination may be a parallel regardless of mode.

2006-02-08  Daniel Berlin  <dberlin@dberlin.org>

* df-scan.c (df_def_record_1): A set destination may
be a parallel regardless of mode.

From-SVN: r110761

18 years agore PR target/22209 (libgfortran unresolvable symbols on irix6.5)
Roger Sayle [Wed, 8 Feb 2006 18:31:36 +0000 (18:31 +0000)]
re PR target/22209 (libgfortran unresolvable symbols on irix6.5)

PR target/22209
* config/mips/mips.h (MIN_UNITS_PER_WORD): Don't define for libgcc.
* config/mips/_tilib.c: Remove.
* config/fixtfdi.c: New libgcc source file.
* config/fixunstfdi.c: New source file.
* config/floatditf.c: New source file.
* config/floatunditf.c: New souce file.
* config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source
files above instead of config/mips/_tilib.c.
* config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise.

From-SVN: r110760

18 years agore PR java/22578 (should inline floatToIntBits et al)
Tom Tromey [Wed, 8 Feb 2006 18:06:11 +0000 (18:06 +0000)]
re PR java/22578 (should inline floatToIntBits et al)

gcc/java
PR java/22578:
* check-init.c (check_init): Handle VIEW_CONVERT_EXPR.
* builtins.c (convert_real): New function.
(java_builtins): Handle Float.intBitsToFloat,
Float.floatToRawIntBits, Double.longBitsToDouble,
Double.doubleToRawLongBits.
libjava
PR java/22578:
* gcj/javaprims.h: Updated.
* sources.am, Makefile.in: Rebuilt.
* java/lang/natDouble.cc (doubleToLongBits): Moved to VMDouble.
(doubleToRawLongBits): Likewise.
(longBitsToDouble): Likewise.
(toString): Likewise.
(parseDouble): Likewise.
* java/lang/natFloat.cc (floatToIntBits): Moved to VMFloat.
(floatToRawIntBits): Likewise.
(intBitsToFloat): Likewise.
* java/lang/VMDouble.java: New file.
* java/lang/VMFloat.java: New file.
* java/lang/Float.java, java/lang/Double.java: Removed.

From-SVN: r110759

18 years agotree-vrp.c (execute_vrp): Perform any queued SSA updates before threading jumps.
Jeff Law [Wed, 8 Feb 2006 17:31:20 +0000 (10:31 -0700)]
tree-vrp.c (execute_vrp): Perform any queued SSA updates before threading jumps.

        * tree-vrp.c (execute_vrp): Perform any queued SSA updates before
        threading jumps.

From-SVN: r110758

18 years agoscantree.exp (scan-tree-dump, [...]): Likewise.
Paolo Bonzini [Wed, 8 Feb 2006 13:08:44 +0000 (13:08 +0000)]
scantree.exp (scan-tree-dump, [...]): Likewise.

2006-02-08  Paolo Bonzini  <bonzini@gnu.org>

* lib/scantree.exp (scan-tree-dump, scan-tree-dump-times,
scan-tree-dump-not, scan-tree-dump-dem): Likewise.

From-SVN: r110755

18 years agoscanrtl.exp: New.
Paolo Bonzini [Wed, 8 Feb 2006 12:26:25 +0000 (12:26 +0000)]
scanrtl.exp: New.

2006-02-08  Paolo Bonzini  <bonzini@gnu.org>

* lib/scanrtl.exp: New.

From-SVN: r110754

18 years agore PR c++/26071 (ICE declaring destructor virtual and static)
Volker Reichelt [Wed, 8 Feb 2006 11:21:27 +0000 (11:21 +0000)]
re PR c++/26071 (ICE declaring destructor virtual and static)

PR c++/26071
* decl.c (grokdeclarator): Set dname also for destructor.

* g++.dg/other/virtual2.C: New test.

From-SVN: r110751

18 years agore PR c++/26070 (ICE declaring data member virtual and static)
Volker Reichelt [Wed, 8 Feb 2006 11:00:55 +0000 (11:00 +0000)]
re PR c++/26070 (ICE declaring data member virtual and static)

PR c++/26070
* decl.c (grokdeclarator): Clear storage_class together with staticp.

* g++.dg/other/virtual1.C: New test.

From-SVN: r110747