platform/upstream/gcc.git
18 years agotree.h (VALUE_HANDLE_VUSES): New.
Daniel Berlin [Fri, 30 Dec 2005 18:43:00 +0000 (18:43 +0000)]
tree.h (VALUE_HANDLE_VUSES): New.

2005-12-29  Daniel Berlin  <dberlin@dberlin.org>

* tree.h (VALUE_HANDLE_VUSES): New.
(struct tree_value_handle): Add vuses.

* tree-vn.c (struct val_expr_pair_d): Remove stmt, add vuses.
(vn_compute): Remove stmt argument.
Don't use vuses in hash value computation.
(val_expr_pair_eq): Compare vuse lists.
(copy_vuses_from_stmt): New function.
(shared_vuses_from_stmt): Ditto.
(vn_add): Rewrite in terms of vn_add_with_vuses.
(vn_add_with_vuses): New function.
(vn_lookup): Rewrite in terms of vn_lookup_with_vuses.
(vn_lookup_with_vuses): New function.
(vuses_compare): New function.
(print_creation_to_file): Ditto.
(vn_lookup_or_add): Rewrite to handle vuses.
(sort_vuses): New function.
(vn_lookup_or_add_with_vuses): Ditto.
(vn_init): Initialize shared_lookup_vuses.
(vn_delete): Free shared_lookup_vuses.

* tree-ssa-pre.c: Update todo list.
(bb_value_sets_t): Add rvuse_in, rvuse_out, rvuse_gen, and
rvuse_kill.
(RVUSE_IN): New macro.
(RVUSE_GEN): Ditto.
(RVUSE_KILL): Ditto.
(RVUSE_OUT): Ditto.
(modify_expr_node_pool): New function.
(pretemp): New.
(storetemp): Ditto.
(mergephitemp): Ditto.
(prephitemp): Ditto.
(struct expr_pred_trans_d): Add vuses member.
(expr_pred_trans_eq): Compare vuses.
(phi_trans_lookup): Add vuses argument.
(phi_trans_add): Ditto.
(translate_vuses_through_block): New function.
(phi_translate): Use vuses to ask about those expressions that can
have vuses.
Properly translate virtual uses through phis, and use
vn_lookup_or_add_with vuses.  Handle tcc_reference.
(phi_translate_set): Don't add pointless translations to the
cache.
(get_representative): New function.
(vuses_dies_in_block_x): Ditto.
(valid_in_set): Add block argument.  Check virtual use validity.
(clean): Add block argument. Update call to valid_in_set
(compute_antic_aux): Update call to clean.
(dump_bitmap_of_names): New function.
(compute_vuse_representatives): Ditto.
(compute_rvuse): Ditto.
(can_value_number_call): Modified to accept calls with vuses.
(can_value_number_operation): New function.
(can_PRE_operation): Ditto.
(need_creation): New vector of stores that may need creation.
(find_or_generate_expression): use can_PRE_operation.
(create_expression_by_pieces): Handle INDIRECT_REF.
Only create one temp until we have to change types.
Mark new vars for renaming.
(insert_into_preds_of_block): Ignore loopiness of loads.
Use can_PRE_operation.
Only create one temp until we have to chnge types.
(insert_aux): Use can_PRE_operation.
Don't pass name to insert_into_preds_of_block.
(insert_extra_phis): Only use one temp until we have to change
types.
(poolify_tree): New function.
(modify_expr_template): New var.
(poolify_modify_expr): New function.
(insert_fake_stores): Ditto.
(realify_fake_stores): Ditto.
(compute_avail): Use can_value_number_operation.
(mark_operand_necessary): Return NULL for non-SSA names.
(remove_dead_inserted_code): Update comment.
(init_pre): Initialize pretemp, need_creation, storetemp,
mergephitemp, prephitemp.
Create modify_expr_node_pool.
(fini_pre): Free modify_expr_node_pool and need_creation array.
(execute_pre): Call insert_fake_stores, compute_rvuse, and
realify_fake_stores.
* tree-flow.h (vn_compute): Fix prototype.
(vn_add): Ditto.
(vn_lookup): Ditto.
(sort_vuses): New.
(vn_lookup_or_add_with_vuses): Ditto.
(vn_add_with_vuses): Ditto.
(vn_lookup_with_vuses): Ditto.
* passes.c (pass_may_alias): Add.

From-SVN: r109180

18 years agoc-pretty-print.h (struct c_pretty_print_info): Add new member "constant".
Gabriel Dos Reis [Fri, 30 Dec 2005 17:27:28 +0000 (17:27 +0000)]
c-pretty-print.h (struct c_pretty_print_info): Add new member "constant".

2005-12-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * c-pretty-print.h (struct c_pretty_print_info): Add new
          member
        "constant".
        (pp_constant): New macro.
        * c-pretty-print.c (pp_c_pretty_printer_init): Set
          pp->constant.

cp/
2005-12-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * cxx-pretty-print.c (pp_cxx_constant): New.  Print
        string-literal in parens if input program says so.
        (pp_cxx_primary_expression): Hand off constant printing to
        pp_cxx_constant.
        (pp_cxx_pretty_printer_init): Set pp->c_base.constant.
        (pp_cxx_expression): Use pp_cxx_constant for literals.
        * error.c (dump_expr): Use pp_constant for literals.

From-SVN: r109176

18 years agore PR fortran/22607 (Elemental character functions don't work)
Erik Edelmann [Fri, 30 Dec 2005 15:02:44 +0000 (15:02 +0000)]
re PR fortran/22607 (Elemental character functions don't work)

fortran/
2005-12-30  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/22607
        * trans-decl.c(gfc_get_extern_function_decl): Don't set
        DECL_IS_PURE (fndecl) = 1 for return-by-reference
        functions.

        fortran/PR 25396
        * interface.c (gfc_extend_expr): Initialize
        e->value.function.name to NULL.

testsuite/
2005-12-30  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/22607
        * gfortran-dg/pure_byref_3.f90: New.

        fortran/PR 25396
        * gfortran.dg/userdef_operator_1.f90: New.

From-SVN: r109171

18 years agore PR middle-end/25586 (FAIL: gfortran.dg/cray_pointers_2.f90 at -O2 and above)
John David Anglin [Fri, 30 Dec 2005 05:44:16 +0000 (05:44 +0000)]
re PR middle-end/25586 (FAIL: gfortran.dg/cray_pointers_2.f90  at -O2 and above)

PR fortran/25586
* pa.md: Remove REG_POINTER check from REG+REG peephole2 floating-point
store patterns.

From-SVN: r109166

18 years agoDaily bump.
GCC Administrator [Fri, 30 Dec 2005 00:17:40 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109160

18 years agobitmap.c (bitmap_element_free, [...]): Added code to properly maintain the variants...
Kenneth Zadeck [Thu, 29 Dec 2005 19:41:21 +0000 (19:41 +0000)]
bitmap.c (bitmap_element_free, [...]): Added code to properly maintain the variants associated with the CURRENT and...

2005-12-29 Kenneth Zadeck <zadeck@naturalbridge.com>

* bitmap.c (bitmap_element_free, bitmap_element_link,
bitmap_elt_insert_after, bitmap_and, bitmap_and_compl,
bitmap_and_compl, bitmap_ior, bitmap_ior_into, bitmap_xor,
bitmap_xor_into): Added code to properly maintain the variants
associated with the CURRENT and HEAD fields.
(bitmap_popcount, bitmap_clear_range, bitmap_compl_and_into): New
functions. * bitmap.h: Added defs for bitmap_popcount,
bitmap_clear_range, and bitmap_compl_and_into.

From-SVN: r109153

18 years agoinvoke.texi (Objective-C and Objective-C++ Dialect Options -fobjc-exceptions): Don...
Mike Stump [Thu, 29 Dec 2005 19:39:29 +0000 (19:39 +0000)]
invoke.texi (Objective-C and Objective-C++ Dialect Options -fobjc-exceptions): Don't imply this doesn't work with the GNU runtime.

        * doc/invoke.texi (Objective-C and Objective-C++ Dialect Options
        -fobjc-exceptions): Don't imply this doesn't work with the GNU
        runtime.

From-SVN: r109151

18 years agos-osinte-linux-hppa.ads: Correct alignment of atomic_lock_t.
John David Anglin [Thu, 29 Dec 2005 19:37:51 +0000 (19:37 +0000)]
s-osinte-linux-hppa.ads: Correct alignment of atomic_lock_t.

* s-osinte-linux-hppa.ads: Correct alignment of atomic_lock_t.

From-SVN: r109150

18 years agovarasm.c (get_section): Use gcc_assert.
Nathan Sidwell [Thu, 29 Dec 2005 16:38:26 +0000 (16:38 +0000)]
varasm.c (get_section): Use gcc_assert.

* varasm.c (get_section): Use gcc_assert.
cp:
* method.c (make_thunk): Don't set comdat_linkage here.
(use_thunk): Make thunk one only here, if thunk target is
DECL_ONE_ONLY.
testsuite:
* g++.dg/abi/thunk3.C: New.
* g++.dg/abi/thunk4.C: New.

From-SVN: r109149

18 years agom68k.h (RETURN_ADDR_RTX): Define.
Paul Brook [Thu, 29 Dec 2005 15:23:23 +0000 (15:23 +0000)]
m68k.h (RETURN_ADDR_RTX): Define.

2005-12-29  Paul Brook  <paul@codesourcery.com>

* config/m68k/m68k.h (RETURN_ADDR_RTX): Define.
* config/m68k/m68k.c (m68k_initial_elimination_offset): Remove FIXME.
Include offset due to FIRST_PARM_OFFSET.

From-SVN: r109147

18 years agolb1sf68.asm (__cmpdf2): Fix typo in immediate mask.
Paul Brook [Thu, 29 Dec 2005 15:16:50 +0000 (15:16 +0000)]
lb1sf68.asm (__cmpdf2): Fix typo in immediate mask.

2005-12-29  Paul Brook  <paul@codesourcery.com>

* config/m68k/lb1sf68.asm (__cmpdf2): Fix typo in immediate mask.
Create wrapper and rename body...
(__cmpdf2_internal): ... to this.  Return correct value for unordered
result.
(__cmpsf2): Create wrapper and rename body...
(__cmpsf2_internal): ... to this.  Return corerct value for unordered
result.
(__eqdf2, __nedf2, __gtdf2, __gedf2, __ltdf2, __ledf2): Use
__cmpdf2_internal.
(__eqsf2, __nesf2, __gtsf2, __gesf2, __ltsf2, __lesf2): Use
__cmpsf2_internal.

From-SVN: r109145

18 years agofpgnulib.c (__extendsfdf2): Handle negative zero.
Paul Brook [Thu, 29 Dec 2005 15:14:12 +0000 (15:14 +0000)]
fpgnulib.c (__extendsfdf2): Handle negative zero.

2005-12-29  Paul Brook  <paul@codesourcery.com>

* config/m68k/fpgnulib.c (__extendsfdf2): Handle negative zero.
(__truncdfsf2): Ditto.
(__extenddfxf2): Ditto.
(__truncxfdf2): Ditto.
* config/m68k/lb1sf68.asm (__addsf3): Return -0.0 for -0.0 + -0.0.
(__adddf3): Ditto.

From-SVN: r109143

18 years agom68k.c (m68k_output_pic_call): Don't use bsr.l for !TARGET_68020.
Paul Brook [Thu, 29 Dec 2005 15:08:43 +0000 (15:08 +0000)]
m68k.c (m68k_output_pic_call): Don't use bsr.l for !TARGET_68020.

2005-12-29  Daniel Jacobowitz  <dan@codesourcery.com>
Paul Brook  <paul@codesourcery.com>

* config/m68k/m68k.c (m68k_output_pic_call): Don't use bsr.l for
!TARGET_68020.
* config/m68k/t-m68kelf (EXTRA_PARTS): Remove.
(EXTRA_MULTILIB_PARTS): Set.
* config/m68k/t-uclinux (EXTRA_PARTS): Remove.
(EXTRA_MULTILIB_PARTS): Set.

From-SVN: r109141

18 years agore PR fortran/25532 (ICE in gfc_conv_component_ref, at fortran/trans-expr.c:269)
Paul Thomas [Thu, 29 Dec 2005 06:11:21 +0000 (06:11 +0000)]
re PR fortran/25532 (ICE in gfc_conv_component_ref, at fortran/trans-expr.c:269)

2005-12-29  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25532
* trans-types.c (copy_dt_decls_ifequal): Copy declarations for
components of derived type components by recursing into
gfc_get_derived_type.

2005-12-29  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25532
*gfortran.dg/host_used_types_1.f90: Check that host associated
derived type components of derived types are properly declared
in contained procedures.

From-SVN: r109138

18 years agore PR target/25572 (ppc64 -mminimal-toc trashes r30)
Alan Modra [Thu, 29 Dec 2005 01:10:05 +0000 (01:10 +0000)]
re PR target/25572 (ppc64 -mminimal-toc trashes r30)

PR target/25572
* config/rs6000/rs6000.c (create_TOC_reference): Set regs_ever_live.

From-SVN: r109133

18 years agoDaily bump.
GCC Administrator [Thu, 29 Dec 2005 00:17:43 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109130

18 years agoconfig.gcc (mt-*-*): Add --with-arch support.
Nathan Sidwell [Wed, 28 Dec 2005 22:37:42 +0000 (22:37 +0000)]
config.gcc (mt-*-*): Add --with-arch support.

* config.gcc (mt-*-*): Add --with-arch support.
(--with): Print accepted options on error.
* config/mt/mt.h (OPTION_DEFAULT_SPECS): Define.

* config/mt/mt.c (DEF_VEC_P(basic_block),
DEF_VEC_ALLOC_P(basic_bloc,heap)): Remove from here.

From-SVN: r109124

18 years agore PR libfortran/25139 ("Invalid argument" error on I/O)
Jerry DeLisle [Wed, 28 Dec 2005 21:12:52 +0000 (21:12 +0000)]
re PR libfortran/25139 ("Invalid argument" error on I/O)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25139
* gfortran.dg/backspace_2.f: New test.

From-SVN: r109123

18 years agore PR libfortran/25139 ("Invalid argument" error on I/O)
Jerry DeLisle [Wed, 28 Dec 2005 20:58:08 +0000 (20:58 +0000)]
re PR libfortran/25139 ("Invalid argument" error on I/O)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25139
* io/unix.c (fd_truncate): Set s->active to zero.
PR libgfortran/25510
* libgfortran.h: Add ERROR_INTERNAL and ERROR_INTERNAL_UNIT.
* runtime/error.c (translate_error): Add messages for new errors.
* io/list_read.c (next_char): Use new errors.
* io/transfer.c (next_record_r) (next_record_w): Use new errors.

From-SVN: r109122

18 years agore PR fortran/25587 (Garbage in output of -fdump-tree-original)
Andrew Pinski [Wed, 28 Dec 2005 19:21:55 +0000 (19:21 +0000)]
re PR fortran/25587 (Garbage in output of -fdump-tree-original)

2005-12-28  Andrew Pinski  <pinskia@physics.uc.edu>

        PR fortran/25587
        * trans-io.c (gfc_build_st_parameter): Correct off by one error.

From-SVN: r109120

18 years agonatPlainSocketImplWin32.cc (connect): Same as previous patch, but for win32.
Anthony Green [Wed, 28 Dec 2005 18:47:18 +0000 (18:47 +0000)]
natPlainSocketImplWin32.cc (connect): Same as previous patch, but for win32.

2005-12-28  Anthony Green  <green@redhat.com>

* gnu/java/net/natPlainSocketImplWin32.cc (connect): Same
as previous patch, but for win32.

From-SVN: r109119

18 years agonatPlainSocketImplPosix.cc (connect): Record address and port before attempting anything.
Anthony Green [Wed, 28 Dec 2005 18:29:10 +0000 (18:29 +0000)]
natPlainSocketImplPosix.cc (connect): Record address and port before attempting anything.

2005-12-28  Anthony Green  <green@redhat.com>

* gnu/java/net/natPlainSocketImplPosix.cc (connect): Record
address and port before attempting anything.

From-SVN: r109116

18 years ago[multiple changes]
Anthony Green [Wed, 28 Dec 2005 17:46:21 +0000 (17:46 +0000)]
[multiple changes]

2005-12-27  Tom Tromey  <tromey@redhat.com>

* gnu/java/nio/SelectorImpl.java: Added import.

2005-12-26  Anthony Green  <green@redhat.com>

        * java/net/Socket.java (connect): Don't close the socket on
        exceptions.

        * gnu/java/nio/SocketChannelImpl.java (read): Compute the right amount
        of data to read (dst.remaining()).
        * gnu/java/nio/DatagramChannelImpl.java (receive): Ditto.

        * gnu/java/nio/SelectorImpl.java (select): Handle OP_CONNECT
        properly.

From-SVN: r109114

18 years agolocks.h (compare_and_swap): Add ldcw semaphore to make operation atomic.
John David Anglin [Wed, 28 Dec 2005 17:13:56 +0000 (17:13 +0000)]
locks.h (compare_and_swap): Add ldcw semaphore to make operation atomic.

* sysdep/pa/locks.h (compare_and_swap): Add ldcw semaphore to make
operation atomic.

From-SVN: r109110

18 years agore PR tree-optimization/25394 (libgcc2.c:2033: ICE: tree check: expected tree that...
Daniel Berlin [Wed, 28 Dec 2005 14:09:28 +0000 (14:09 +0000)]
re PR tree-optimization/25394 (libgcc2.c:2033: ICE: tree check: expected tree that contains 'decl common' structure, have 'name_memory_tag')

2005-12-28  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/25394
* fold-const.c (fold_checksum_tree): Guard
portions of checksumming with correct structure checks.

From-SVN: r109109

18 years agolwg-active.html, [...]: Import Revision 40.
Paolo Carlini [Wed, 28 Dec 2005 14:08:07 +0000 (14:08 +0000)]
lwg-active.html, [...]: Import Revision 40.

2005-12-28  Paolo Carlini  <pcarlini@suse.de>

* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 40.

From-SVN: r109108

18 years agoMake-lang.in: Remove distdir from comment.
Rafael Ávila de Espíndola [Wed, 28 Dec 2005 13:25:46 +0000 (14:25 +0100)]
Make-lang.in: Remove distdir from comment.

2005-12-28  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

        * Make-lang.in: Remove distdir from comment.

From-SVN: r109107

18 years agoMake-lang.in (treelang.distdir): Remove.
Rafael Ávila de Espíndola [Wed, 28 Dec 2005 13:25:26 +0000 (14:25 +0100)]
Make-lang.in (treelang.distdir): Remove.

2005-12-28  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

        * Make-lang.in (treelang.distdir): Remove.

From-SVN: r109106

18 years agotestsuite_allocator.h (check_deallocate_null): Return true.
Chris Jefferson [Wed, 28 Dec 2005 11:47:56 +0000 (11:47 +0000)]
testsuite_allocator.h (check_deallocate_null): Return true.

2005-12-28  Chris Jefferson  <chris@bubblescope.net>

* testsuite/testsuite_allocator.h (check_deallocate_null): Return true.

From-SVN: r109104

18 years ago[multiple changes]
Paolo Carlini [Wed, 28 Dec 2005 09:57:57 +0000 (09:57 +0000)]
[multiple changes]

2005-12-28  Paolo Carlini  <pcarlini@suse.de>

* include/std/std_bitset.h (bitset<>::_M_copy_from_string,
bitset<>::_M_copy_to_string, bitset<>::operator>>): Reverse loop.

* testsuite/25_algorithms/heap/heap.cc (test01): Always enable
complexity checks.
* testsuite/18_support/numeric_limits/specialization.cc: Avoid
unused parameter warning.
* testsuite/18_support/numeric_limits/traps.cc: Acoid unused variable
warning.
* testsuite/ext/malloc_allocator/deallocate_global.cc: Fix format
string.
* testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
* testsuite/ext/array_allocator/2.cc: Remove unused variable.
* testsuite/tr1/3_function_objects/mem_fn.cc: Avoid unused variable
warnings.
* testsuite/tr1/6_containers/unordered/instantiate/set.cc: Just
instantiate.
* testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Likewise.
* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
Likewise.
* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
Likewise.
* testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
Avoid unused variable warnings.
* testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
Likewise.
* testsuite/thread/18185.cc: Likewise.
* testsuite/27_io/ios_base/storage/11584.cc: Likewise; avoid comparison
between signed and unsigned warning.
* testsuite/27_io/types/1.cc: Avoid unused variable warnings.
* testsuite/testsuite_allocator.h (check_new): Likewise.
(check_deallocate_null): Adjust return type.
* testsuite/testsuite_hooks.h (bitmask_operators): Avoid unused
variable warnings.
* testsuite/21_strings/c_strings/wchar_t/24559.cc: Avoid unused
variable warning.

2005-12-28  Chris Jefferson  <chris@bubblescope.net>

* include/std/std_bitset.h (bitset<0>::set, bitset<0>::reset,
bitset<0>::flip, bitset<0>::test): Add inline specializations for
bitset<0>.

* testsuite/tr1/6_containers/unordered/insert/multiset_range.cc
(test01): Add static cast.
* testsuite/tr1/6_containers/unordered/insert/set_range.cc
(test01): Likewise.
* testsuite/testsuite_hooks.h (operator==(NonDefaultConstructible,
NonDefaultConstructible), operator<(NonDefaultConstructible,
NonDefaultConstrictible)): Avoid unused parameter warning.

From-SVN: r109103

18 years agore PR libfortran/25550 (file data corrupted after reading end of file)
Jerry DeLisle [Wed, 28 Dec 2005 07:21:20 +0000 (07:21 +0000)]
re PR libfortran/25550 (file data corrupted after reading end of file)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25550
* gfortran.dg/endfile.f: New test.

From-SVN: r109102

18 years agore PR libfortran/25550 (file data corrupted after reading end of file)
Jerry DeLisle [Wed, 28 Dec 2005 07:20:19 +0000 (07:20 +0000)]
re PR libfortran/25550 (file data corrupted after reading end of file)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25550
* io/file_pos.c (st_rewind): Reset bytes left so no error occurs in
next_record_r.

From-SVN: r109101

18 years agore PR libfortran/25419 (gfortran read does not take comma for default on one entry)
Jerry DeLisle [Wed, 28 Dec 2005 07:00:47 +0000 (07:00 +0000)]
re PR libfortran/25419 (gfortran read does not take comma for default on one entry)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25419
* gfortran.dg/comma.f: New test.

From-SVN: r109100

18 years agore PR libfortran/25419 (gfortran read does not take comma for default on one entry)
Jerry DeLisle [Wed, 28 Dec 2005 06:59:35 +0000 (06:59 +0000)]
re PR libfortran/25419 (gfortran read does not take comma for default on one entry)

2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25419
* io/list_read.c (list_formatted_read_scalar): Allow comma to return a
null value (default).

From-SVN: r109099

18 years agogfortran-dg.exp: Remove trailing whitespace.
Tobias Schlüter [Wed, 28 Dec 2005 01:28:35 +0000 (02:28 +0100)]
gfortran-dg.exp: Remove trailing whitespace.

* lib/gfortran-dg.exp: Remove trailing whitespace. ChangeLog lib/gfortran-dg.exp lib/fortran-torture.exp
* lib/fortran-torture.exp: Test with -fbounds-check instead of
-funroll-all-loops.

From-SVN: r109098

18 years agoglobal.c, [...]: Move DEF_VEC_P(basic_block) and DEF_VEC_ALLOC_P(basic_block,{gc...
Kazu Hirata [Wed, 28 Dec 2005 01:13:19 +0000 (01:13 +0000)]
global.c, [...]: Move DEF_VEC_P(basic_block) and DEF_VEC_ALLOC_P(basic_block,{gc,heap}) to ...

* global.c, tree-ssa-pre.c: Move DEF_VEC_P(basic_block) and
DEF_VEC_ALLOC_P(basic_block,{gc,heap}) to ...
* basic-block.h: ... here.

From-SVN: r109097

18 years agoDaily bump.
GCC Administrator [Wed, 28 Dec 2005 00:17:38 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109094

18 years agofold-const.c (int_const_binop): Return NULL_TREE when an expression can't be evaluate...
Roger Sayle [Tue, 27 Dec 2005 23:27:34 +0000 (23:27 +0000)]
fold-const.c (int_const_binop): Return NULL_TREE when an expression can't be evaluated at compile-time (instead...

* fold-const.c (int_const_binop): Return NULL_TREE when an expression
can't be evaluated at compile-time (instead of calling abort).
Return NULL_TREE for division (and modulus) by zero.
(const_binop):  Return NULL_TREE for floating point operators that
aren't handled by real_arithmetic.
(fold_binary):  Eliminate "wins" variable, and "binary" label, by
folding operators with constant operands early.  Assert that
operands are non-NULL.

From-SVN: r109088

18 years agofp-int-convert-timode.c: Don't test IBM Extended Double long doubles or repeat tests...
Alan Modra [Tue, 27 Dec 2005 22:50:06 +0000 (22:50 +0000)]
fp-int-convert-timode.c: Don't test IBM Extended Double long doubles or repeat tests when...

* gcc.dg/torture/fp-int-convert-timode.c: Don't test IBM
Extended Double long doubles or repeat tests when long double is
the same size as double.

From-SVN: r109087

18 years agore PR testsuite/25442 (-fpic/-fPIC failures in gcc.dg/ipa/ipa-1.c ipa-2.c ipa-3.c...
Kaveh R. Ghazi [Tue, 27 Dec 2005 19:58:28 +0000 (19:58 +0000)]
re PR testsuite/25442 (-fpic/-fPIC failures in gcc.dg/ipa/ipa-1.c ipa-2.c ipa-3.c ipa-4.c ipa-5.c)

* g++.dg/rtti/tinfo1.C: Scan for ".global" also.

PR testsuite/25442
* gcc.dg/ipa/ipa-1.c, gcc.dg/ipa/ipa-2.c, gcc.dg/ipa/ipa-3.c,
gcc.dg/ipa/ipa-4.c, gcc.dg/ipa/ipa-5.c: Skip if -fpic/-fPIC.

PR testsuite/25441
* gcc.dg/pr23911.c: Make test variable static.

PR testsuite/25444
* gcc.dg/tree-ssa/pr14841.c: Likewise.

From-SVN: r109083

18 years agore PR c++/25439 ("template<> int A<0>" accepted)
Mark Mitchell [Tue, 27 Dec 2005 09:05:17 +0000 (09:05 +0000)]
re PR c++/25439 ("template<> int A<0>" accepted)

PR c++/25439
* decl.c (grokdeclarator): Remove dead code.
* ptree.c (cxx_print_xnode): Handle BASELINK.
* parser.c (make_id_declarator): Add sfk parameter.
(cp_parser_direct_declarator): Do not pass TYPE_DECLs to
make_id_declarator.
(cp_parser_declarator_id): Simplify BASELINKs here.
(cp_parser_member_declaration): Adjust calls to
make_id_declarator.
PR c++/25439
* g++.dg/parse/crash17.C: Adjust error markers.
* g++.dg/template/error20.C: New test.

From-SVN: r109079

18 years agotree-vrp.c (extract_range_from_binary_expr): Use build_int_cst instead of fold_convert.
Kazu Hirata [Tue, 27 Dec 2005 08:16:12 +0000 (08:16 +0000)]
tree-vrp.c (extract_range_from_binary_expr): Use build_int_cst instead of fold_convert.

* tree-vrp.c (extract_range_from_binary_expr): Use
build_int_cst instead of fold_convert.

From-SVN: r109078

18 years agoPR c++/23171, c++/23172, c++/25417.
Mark Mitchell [Tue, 27 Dec 2005 06:09:13 +0000 (06:09 +0000)]
PR c++/23171, c++/23172, c++/25417.

* c-decl.c (compound_literal_number): Remove.
(build_compound_literal): Use set_compound_literal_name.
* c-common.c (compound_literal_number): New variable.
(set_compound_literal_name): New function.
* c-common.h (set_compound_literal_name): Declare.

PR c++/23171, c++/23172, c++/25417.
* typeck.c (build_unary_op): Create temporary variables for
compound literals whose addresses are taken.
* init.c (expand_aggr_init_1): Use COMPOUND_LITERAL_P.
* decl.c (reshape_init_vector): Likewise.
(reshape_init): Give it external linkage.
(check_initializer): Use COMPOUND_LITERAL_P.
(initialize_artificial_var): Allow the initializer to be a
CONSTRUCTOR.
* call.c (make_temporary_var_for_ref_to_temp): Use
create_temporary_var.
* cp-tree.h (COMPOUND_LITERAL_P): New macro.
(rehape_init): Declare.
* typeck2.c (digest_init): Use COMPOUND_LITERAL_P.
* semantics.c (finish_compound_literal): Use reshape_init.

PR c++/23172
* g++.dg/ext/complit4.C: New test.

PR c++/25417
* g++.dg/ext/complit5.C: Likewise.

From-SVN: r109075

18 years ago* MAINTAINERS: Update my email address.
Steven Bosscher [Tue, 27 Dec 2005 02:00:26 +0000 (02:00 +0000)]
* MAINTAINERS: Update my email address.

From-SVN: r109074

18 years agoDaily bump.
GCC Administrator [Tue, 27 Dec 2005 00:17:30 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109071

18 years agore PR middle-end/25125 ((short) ((int)(unsigned short) + (int)) is done in the wrong...
Kazu Hirata [Mon, 26 Dec 2005 23:00:18 +0000 (23:00 +0000)]
re PR middle-end/25125 ((short) ((int)(unsigned short) + (int)) is done in the wrong type)

gcc/
PR tree-optimization/25125
* convert.c (convert_to_integer): Don't narrow the type of a
PLUX_EXPR or MINUS_EXPR if !flag_wrapv and the unwidened type
is signed.

gcc/testsuite/
PR tree-optimization/25125
* gcc.dg/vect/vect-7.c, gcc.dg/vect/vect-reduc-2char.c,
gcc.dg/vect/vect-reduc-2short.c: XFAIL.
* gcc.c-torture/execute/pr25125.c: New.

From-SVN: r109065

18 years agore PR middle-end/25568 (RTL checking bootstrap failure on i686-unknown-linux-gnu)
Graham Stott [Mon, 26 Dec 2005 18:58:56 +0000 (18:58 +0000)]
re PR middle-end/25568 (RTL checking bootstrap failure on i686-unknown-linux-gnu)

       PR middle-end/25568
       * combine.c (simplify_shift_const_1 <case PLUS>):Fix enable-checking
       rtl bootstrap failure.

From-SVN: r109064

18 years agomt_allocator.h (__mt_alloc::__mt_alloc): Remove name of unused parameter.
Chris Jefferson [Mon, 26 Dec 2005 10:53:42 +0000 (10:53 +0000)]
mt_allocator.h (__mt_alloc::__mt_alloc): Remove name of unused parameter.

2005-12-26  Chris Jefferson  <chris@bubblescope.net>

* include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
name of unused parameter.
* include/bits/stream_iterator.h (istream_iterator::istream_iterator):
Construct _M_value.
* include/debug/functions.h (__check_valid_range): Add
__attribute__((unused)).
* include/tr1/hashtable (hashtable::end): Remove name of unused
parameter.
* include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
(tuple::operator=): Add __attribute__((unused)).
* include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
(Fnv_hash<8>::hash): Likewise.

* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
unused parameter.
* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
Likewise.
* testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
* testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is,
Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
Likewise.
* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
Likewise.
* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
Likewise.
* testsuite/25_algorithms/find/17441.cc (find): Likewise.
* testsuite/23_containers/vector/cons/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/vector/bool/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/list/cons/clear_allocator.cc
(clear_alloc::clear_alloc): Likewise.
* testsuite/23_containers/set/modifiers/16728.cc (test_container):
Likewise.
* testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
to_int_type): Likewise.
* testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
do_unshift, do_length): Likewise.
* testsuite/21_strings/basic_string/capacity/1.cc
(operator==(A<T>,A<T>), operator<(A<T>,A<T>),
char_traits::to_char_type, char_traits::to_int_type): Likewise
* testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
ctype::do_scan_not, do_toupper, do_tolower): Likewise.
* testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
Add missing return statement.
* testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
Likewise.
* testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
random_access_iterator_wrapper::operator==): Likewise.
* testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
* testsuite/27_io/types/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
* testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
cast.
* testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
* testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
* testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
* testsuite/testsuite_allocator.h (check_new): Likewise.
(check_deallocate_null): Add missing return value.
* testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
Make variable unsigned.
* testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
N5,test01): Likewise.
* testsuite/26_numerics/valarray/valarray_subset_assignment.cc
(check_array): Likewise.
(main): Removed unused variable.
* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
Removed unused variable.
* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
* testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/
assign/shared_ptr.cc (test01): Correct return type.
* testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
Add default value to close_num.

From-SVN: r109062

18 years agoDaily bump.
GCC Administrator [Mon, 26 Dec 2005 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109058

18 years agofinal.c (compute_alignments): Make it static.
Kazu Hirata [Sun, 25 Dec 2005 16:59:51 +0000 (16:59 +0000)]
final.c (compute_alignments): Make it static.

* final.c (compute_alignments): Make it static.
* gcse.c (gcse_main, bypass_jumps): Likewise.
* web.c (web_main): Likewise.
* output.h: Remove the prototype for compute_alignments.
* rtl.h: Remove the prototypes for web_main, gcse_main, and
bypass_jumps.

From-SVN: r109051

18 years agoDaily bump.
GCC Administrator [Sun, 25 Dec 2005 00:17:18 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109048

18 years agoexpr.c (force_operand): Use expand_fix and expand_float to implement integer <->...
Roger Sayle [Sat, 24 Dec 2005 18:35:02 +0000 (18:35 +0000)]
expr.c (force_operand): Use expand_fix and expand_float to implement integer <-> FP conversions instead...

* expr.c (force_operand): Use expand_fix and expand_float to
implement integer <-> FP conversions instead of convert_to_mode.

From-SVN: r109041

18 years agore PR fortran/25029 (Assumed size array can be associated with array pointer without...
Paul Thomas [Sat, 24 Dec 2005 12:05:36 +0000 (12:05 +0000)]
re PR fortran/25029 (Assumed size array can be associated with array pointer without upper bound of last dimension)

2005-12-24  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25029
PR fortran/21256
* resolve.c (check_assumed_size_reference, resolve_assumed_size_actual):
Remove because of regressions caused by patch.
(resolve_function, resolve_call, resolve_variable): Remove assumed size
checks because of regressionscaused by patch.

PR fortran/25029
PR fortran/21256
* gfortran.dg/initialization_1.f90: Remove tests of intrinsic functions
with incorrect assumed size references.

From-SVN: r109039

18 years agostl_algobase.h (fill(const _Deque_iterator&, const _Deque_iterator&, const _Tp&)...
Paolo Carlini [Sat, 24 Dec 2005 10:01:45 +0000 (10:01 +0000)]
stl_algobase.h (fill(const _Deque_iterator&, const _Deque_iterator&, const _Tp&)): Deal, correctly, only with iterators (leave const_iterators alone).

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

* include/bits/stl_algobase.h (fill(const _Deque_iterator&,
const _Deque_iterator&, const _Tp&)): Deal, correctly, only
with iterators (leave const_iterators alone).

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
const _Deque_iterator<>&, const _Tp&)): Add.

* testsuite/23_containers/deque/cons/assign/1.cc: New.

From-SVN: r109038

18 years agore PR c++/23171 (ICE on pointer initialization with C99 initializer)
Mark Mitchell [Sat, 24 Dec 2005 08:51:05 +0000 (08:51 +0000)]
re PR c++/23171 (ICE on pointer initialization with C99 initializer)

PR c++/23171
* varasm.c (initializer_constant_valid_p): An ADDR_EXPR of a
CONSTRUCTOR is invalid.

PR c++/23171
* g++.dg/opt/init1.C: New test.

From-SVN: r109035

18 years agotree-pass.h (pass_eliminate_useless_stores): Remove.
Daniel Berlin [Sat, 24 Dec 2005 04:42:48 +0000 (04:42 +0000)]
tree-pass.h (pass_eliminate_useless_stores): Remove.

2005-12-23  Daniel Berlin  <dberlin@dberlin.org>

* tree-pass.h (pass_eliminate_useless_stores): Remove.
* tree-ssa-pre.c (is_copy_stmt): Ditto.
(follow_copies_till_vuse): Ditto.
(do_eustore): Ditto.
(gate_eustores): Ditto.
(pass_eliminate_useless_stores): Ditto.
* passes.c (init_optimization_passes): Ditto.

From-SVN: r109034

18 years agoDaily bump.
GCC Administrator [Sat, 24 Dec 2005 00:17:23 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r109031

18 years agore PR c++/24671 (ICE with zero-sized arrays)
Mark Mitchell [Fri, 23 Dec 2005 23:16:12 +0000 (23:16 +0000)]
re PR c++/24671 (ICE with zero-sized arrays)

PR c++/24671
* pt.c (instantiate_template): Handle SFINAE.
PR c++/24671
* g++.dg/template/sfinae3.C: New test.

From-SVN: r109022

18 years agodecl.c (grokdeclarator): Improve diagnostic for friend declarations of class members.
Volker Reichelt [Fri, 23 Dec 2005 17:10:37 +0000 (17:10 +0000)]
decl.c (grokdeclarator): Improve diagnostic for friend declarations of class members.

* decl.c (grokdeclarator): Improve diagnostic for friend
declarations of class members.

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

From-SVN: r109017

18 years agocombine.c (simplify_shift_const): Fix typo.
Paolo Bonzini [Fri, 23 Dec 2005 16:07:53 +0000 (16:07 +0000)]
combine.c (simplify_shift_const): Fix typo.

2005-12-23  Paolo Bonzini  <bonzini@gnu.org>

        * combine.c (simplify_shift_const): Fix typo.  Use, whenever
applicable, simplify_const_binary_operation.

        (simplify_shift_const): Leave only the fallback
        case when no simplification is possible.  Extract to...
        (simplify_shift_const_1): ... here.  Always create a new
        RTX instead of substituting.  Remove the signed_count variable.
        Return NULL_RTX if no substitution is possible.

        (simplify_and_const_int): Leave only the fallback
        case when no simplification is possible.  Extract to...
        (simplify_and_const_int_1): ... here.  Always create a new
        RTX instead of substituting.  Return NULL_RTX if no substitution
        is possible.

        (force_to_mode, simplify_comparison): Don't pass a non-NULL first
        parameter to simplify_and_const_int and simplify_shift_const,
        unless it is equal to the expected non-simplified result.

From-SVN: r109016

18 years agore PR target/25005 (ICE in extract_constrain_insn_cached, at recog.c:2002)
Jakub Jelinek [Fri, 23 Dec 2005 09:43:36 +0000 (10:43 +0100)]
re PR target/25005 (ICE in extract_constrain_insn_cached, at recog.c:2002)

PR target/25005
* regrename.c (replace_oldest_value_reg): Use validate_change with
IN_GROUP set to 1 instead of doing direct modifications.
(copyprop_hardreg_forward_1): Likewise.  If any replace_oldest_*
replacements have been performed on an instruction, use
apply_change_group ().

* g++.dg/opt/pr25005.C: New test.

From-SVN: r109013

18 years agore PR c++/25369 (use of inline function in template class leads to undefined reference)
Mark Mitchell [Fri, 23 Dec 2005 07:40:04 +0000 (07:40 +0000)]
re PR c++/25369 (use of inline function in template class leads to undefined reference)

PR c++/25369
* g++.dg/template/ptrmem16.C: New test.
PR c++/25369
* tree.c (really_overloaded_fn): Tweak comment.
* pt.c (tsubst_call_declarator_parms): Remove.
(tsubst_copy): Call mark_used on the member referenced by an
OFFSET_REF.
* semantics.c (finish_qualified_id_expr): Simplify.
* decl2.c (mark_used): Accept BASELINKs.

From-SVN: r109010

18 years agore PR fortran/25029 (Assumed size array can be associated with array pointer without...
Paul Thomas [Fri, 23 Dec 2005 06:41:52 +0000 (06:41 +0000)]
re PR fortran/25029 (Assumed size array can be associated with array pointer without upper bound of last dimension)

2005-12-23  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25029
PR fortran/21256
*resolve.c(resolve_function): Remove assumed size checking for SIZE
and UBOUND and rely on their built-in checking.

2005-12-23  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25029
PR fortran/21256
*gfortran.dg/initialization_1.f90: Add test of SIZE.

From-SVN: r109009

18 years agoarit.c (do_31div): Clarify what "31" refers to.
Hans-Peter Nilsson [Fri, 23 Dec 2005 03:02:30 +0000 (03:02 +0000)]
arit.c (do_31div): Clarify what "31" refers to.

* config/cris/arit.c (do_31div): Clarify what "31" refers to.
[L_divsi3] (__Udiv): Don't use as inline function.
[L_modsi3] (__Umod): Ditto.
(__Div): Rearrange to call do_31div directly instead of __Udiv.
(__Mod): Similarly regarding __Umod.

From-SVN: r109007

18 years agore PR libfortran/25307 (internal read with end=label aborts)
Jerry DeLisle [Fri, 23 Dec 2005 02:56:34 +0000 (02:56 +0000)]
re PR libfortran/25307 (internal read with end=label aborts)

2005-12-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25307
* gfortran.dg/list_read_5.f90: New test.

From-SVN: r109003

18 years agore PR target/24342 (testsuite failure:gfortran.fortran-torture/execute/in-pack.f90...
Hans-Peter Nilsson [Fri, 23 Dec 2005 00:45:36 +0000 (00:45 +0000)]
re PR target/24342 (testsuite failure:gfortran.fortran-torture/execute/in-pack.f90 exe)

PR target/24342
* config/cris/cris.c (cris_split_movdx): Add REG_INC notes for
emitted insns with post-increments.
(cris_expand_epilogue): Ditto.

From-SVN: r108998

18 years agobackport: builtins.def: Move all DEF_SYNC_BUILTIN to ...
Jakub Jelinek [Fri, 23 Dec 2005 00:43:34 +0000 (16:43 -0800)]
backport: builtins.def: Move all DEF_SYNC_BUILTIN to ...

        Merge from gomp-branch.
        * builtins.def: Move all DEF_SYNC_BUILTIN to ...
        * sync-builtins.def: ... new file.
        (BUILT_IN_FETCH_AND_ADD_16,
        BUILT_IN_FETCH_AND_SUB_16, BUILT_IN_FETCH_AND_OR_16,
        BUILT_IN_FETCH_AND_AND_16, BUILT_IN_FETCH_AND_XOR_16,
        BUILT_IN_FETCH_AND_NAND_16, BUILT_IN_ADD_AND_FETCH_16,
        BUILT_IN_SUB_AND_FETCH_16, BUILT_IN_OR_AND_FETCH_16,
        BUILT_IN_AND_AND_FETCH_16, BUILT_IN_XOR_AND_FETCH_16,
        BUILT_IN_NAND_AND_FETCH_16, BUILT_IN_BOOL_COMPARE_AND_SWAP_16,
        BUILT_IN_VAL_COMPARE_AND_SWAP_16, BUILT_IN_LOCK_TEST_AND_SET_16,
        BUILT_IN_LOCK_RELEASE_16): New builtins.
        * builtin-types.def (BT_I16, BT_FN_I16_VPTR_I16,
        BT_FN_BOOL_VPTR_I16_I16, BT_FN_I16_VPTR_I16_I16): Add.
        * builtins.c (expand_builtin): Handle sync BUILT_IN_*_16 builtins.
        * c-common.c (enum c_builtin_type): Move to top-level from
        c_common_nodes_and_builtins enum builtin_type.
        (builtin_types): Move from c_common_nodes_and_builtins.
        (def_fn_type): New.
        (c_common_nodes_and_builtins): Use it.
        (def_builtin_1): Check for error_mark_node.
        (sync_resolve_size): Handle also 128 bit sync builtins.
        * Makefile.in (BUILTINS_DEF): New.  Use it instead of builtins.def.

        * config/i386/i386.h (x86_cmpxchg8b, x86_cmpxchg16b): New decls.
        (TARGET_CMPXCHG8B, TARGET_CMPXCHG16B): Define.
        * config/i386/i386.c (x86_cmpxchg8b, x86_cmpxchg16b): New variables.
        * config/i386/sync.md (CASMODE, DCASMODE): New mode macros.
        (doublemodesuffix, DCASHMODE): New mode attrs.
        (sync_compare_and_swap<mode>): Change into expand, use CASMODE
        instead of IMODE, if mode is wider than a word, expand into
        sync_double_compare_and_swap*.
        (*sync_compare_and_swap<mode>): New insn.
        (sync_double_compare_and_swap<mode>): Likewise.
        (*sync_double_compare_and_swapdi_pic): Likewise.
        (sync_compare_and_swap_cc<mode>): Use CASMODE instead of IMODE, if
        mode is wider than a word, expand into
        sync_double_compare_and_swap_cc*.
        (sync_double_compare_and_swap_cc<mode>): New insn.
        (*sync_double_compare_and_swap_ccdi_pic): Likewise.

From-SVN: r108997

18 years agommintrin.h (_mm_add_si64): Only define for SSE2.
Richard Henderson [Fri, 23 Dec 2005 00:31:44 +0000 (16:31 -0800)]
mmintrin.h (_mm_add_si64): Only define for SSE2.

        * config/i386/mmintrin.h (_mm_add_si64): Only define for SSE2.
        (_mm_sub_si64): Likewise.
        * config/i386/xmmintrin.h (_mm_shuffle_pi16, _m_pshufw): Likewise.

        * gcc.target/i386/sse-7.c: Use -msse2.

From-SVN: r108996

18 years agoDaily bump.
GCC Administrator [Fri, 23 Dec 2005 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r108993

18 years agore PR rtl-optimization/25432 (Reload ICE in gen_add2_insn)
Alan Modra [Thu, 22 Dec 2005 23:19:49 +0000 (00:19 +0100)]
re PR rtl-optimization/25432 (Reload ICE in gen_add2_insn)

PR rtl-optimization/25432
* reload1.c (eliminate_regs_in_insn): Update insn code on
successfully re-recognizing modified insn.

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

From-SVN: r108985

18 years agore PR objc/25328 (ICE in get_indirect_ref_operands, at tree-ssa-operands.c:1453)
Jakub Jelinek [Thu, 22 Dec 2005 23:09:48 +0000 (00:09 +0100)]
re PR objc/25328 (ICE in get_indirect_ref_operands, at tree-ssa-operands.c:1453)

PR objc/25328
* objc/execute/pr25328.m: New test.

From-SVN: r108984

18 years agore PR c++/25364 (ICE with function pointer as template parameter)
Mark Mitchell [Thu, 22 Dec 2005 20:08:39 +0000 (20:08 +0000)]
re PR c++/25364 (ICE with function pointer as template parameter)

PR c++/25364
* typeck.c (build_unary_op): Pass DECLs not names to
build_offset_refs.
* init.c (build_offset_ref): Do not do name lookup.  Do not call
mark_used.
* call.c (build_call): Simplify and tidy.
* semantics.c (finish_qualified_id_expr): Call mark_used.
PR c++/25364
* g++.dg/template/call4.C: New test.

From-SVN: r108973

18 years agotree.c (tree_fold_gcd): Use build_int_cst where appropriate.
Richard Guenther [Thu, 22 Dec 2005 19:40:27 +0000 (19:40 +0000)]
tree.c (tree_fold_gcd): Use build_int_cst where appropriate.

2005-12-22  Richard Guenther  <rguenther@suse.de>

* tree.c (tree_fold_gcd): Use build_int_cst where appropriate.
* tree-ssa-loop-ivcanon.c (create_canonical_iv): Likewise.
* varasm.c (array_size_for_constructor): Likewise.
* fold-const.c (size_diffop, invert_truthvalue,
optimize_bit_field_compare, make_range, build_range_check,
fold_cond_expr_with_comparison, fold_truthop,
fold_single_bit_test_into_sign_test, fold_binary): Likewise.

From-SVN: r108970

18 years agosse.md (sse_movhlps): Reverse operands for 2nd and 3rd alternatives.
Dale Johannesen [Thu, 22 Dec 2005 19:06:09 +0000 (19:06 +0000)]
sse.md (sse_movhlps): Reverse operands for 2nd and 3rd alternatives.

2005-12-22  Dale Johannesen  <dalej@apple.com>

* config/i386/sse.md (sse_movhlps):  Reverse operands for
2nd and 3rd alternatives.

2005-12-22  Dale Johannesen  <dalej@apple.com>

* gcc.target/i386/sse-17.c:  New.

From-SVN: r108966

18 years agoloop-1.c: Look for jump/branch on m68k.
Paul Brook [Thu, 22 Dec 2005 18:43:21 +0000 (18:43 +0000)]
loop-1.c: Look for jump/branch on m68k.

2005-12-22  Paul Brook  <paul@codesourcery.com>

* gcc.dg/tree-ssa/loop-1.c: Look for jump/branch on m68k.

From-SVN: r108963

18 years agore PR java/25535 (gcj broken on 64-bit big-endian systems)
Andrew Haley [Thu, 22 Dec 2005 18:34:01 +0000 (18:34 +0000)]
re PR java/25535 (gcj broken on 64-bit big-endian systems)

2005-12-22  Andrew Haley  <aph@redhat.com>

PR java/25535
* testsuite/libjava.lang/PR25535.java: New test.

From-SVN: r108961

18 years ago[multiple changes]
Andrew Pinski [Thu, 22 Dec 2005 18:06:35 +0000 (18:06 +0000)]
[multiple changes]

2005-12-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * gcc.c-torture/compile/pr25513.c: New test.
2005-12-22  Andrew Pinski <pinskia@physics.uc.edu>

        PR tree-opt/25513
        * tree-dfa.c (make_rename_temp): Set DECL_COMPLEX_GIMPLE_REG_P complex
        variables.

From-SVN: r108958

18 years agonatClassLoader.cc (_Jv_NewArrayClass): Don't reference NUM_OBJECT_METHODS.
Tom Tromey [Thu, 22 Dec 2005 17:33:05 +0000 (17:33 +0000)]
natClassLoader.cc (_Jv_NewArrayClass): Don't reference NUM_OBJECT_METHODS.

* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Don't
reference NUM_OBJECT_METHODS.
* include/jvm.h (NUM_OBJECT_METHODS): Removed.

From-SVN: r108956

18 years agoipa-reference.c (get_reference_vars_info_from_cgraph): Use function_ann.
Daniel Berlin [Thu, 22 Dec 2005 15:01:02 +0000 (15:01 +0000)]
ipa-reference.c (get_reference_vars_info_from_cgraph): Use function_ann.

2005-12-22  Daniel Berlin  <dberlin@dberlin.org>

* ipa-reference.c (get_reference_vars_info_from_cgraph): Use
function_ann.
(get_local_reference_vars_info): Ditto.
(get_global_reference_vars_info): Ditto.
(analyze_function): Ditto.
(clean_function): Ditto.
* tree-dfa.c (create_function_ann): New function.
* tree-flow-inline.h (var_ann): FUNCTION_DECL's don't have
var_ann.
(function_ann): New.
(get_function_ann): Ditto.
* tree-flow.h (tree_ann_type): Add FUNCTION_ANN.
(struct var_ann_d): Move reference_vars_info to function annotation.
(struct function_ann_d): New.
(union tree_ann_d): Add function_ann.

From-SVN: r108950

18 years agodf.c (df_bitmaps_free): Only work for bbs for that structures are allocated.
Zdenek Dvorak [Thu, 22 Dec 2005 14:23:40 +0000 (15:23 +0100)]
df.c (df_bitmaps_free): Only work for bbs for that structures are allocated.

* df.c (df_bitmaps_free): Only work for bbs for that structures are
allocated.
(df_bb_modify): Realloc tables to the new index.
(df_find_use): New function.
(df_find_def, df_reg_used): Handle subregs.
* df.h (df_find_use): Declare.

* loop-invariant.c: Include hashtab.h.
(struct invariant): Remove processed field, add eqto and reg fields.
(struct invariant_expr_entry): New.
(invariant_for_use, hash_invariant_expr_1, invariant_expr_equal_p,
hash_invariant_expr, eq_invariant_expr, find_or_insert_inv,
find_identical_invariants, merge_identical_invariants): New functions.
(create_new_invariant): Return the new invariant.  Initialize new
fields.
(find_invariants): Call merge_identical_invariants.
(get_inv_cost, best_gain_for_invariant, set_move_mark,
move_invariant_reg): Handle equivalent invariants.
* Makefile.in (loop-invariant.o): Add HASHTAB_H dependency.

Co-Authored-By: Steven Bosscher <stevenb@suse.de>
From-SVN: r108949

18 years agore PR c++/23333 (accepts invalid pure specifier)
Volker Reichelt [Thu, 22 Dec 2005 12:01:44 +0000 (12:01 +0000)]
re PR c++/23333 (accepts invalid pure specifier)

2005-12-22  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>

PR c++/23333
* include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure.

* c-lex.c (c_lex_with_flags): Add PURE_ZERO to cpp_flags if
number is a single digit '0'.

* parser.c (cp_parser_pure_specifier): Check for PURE_ZERO to
identify a single '0'.

* g++.dg/parse/error25.C: Add more tests.

From-SVN: r108947

18 years agore PR fortran/18990 (ICE in gfc_get_derived_type, at fortran/trans-types.c)
Tobias Schlüter [Thu, 22 Dec 2005 11:37:03 +0000 (12:37 +0100)]
re PR fortran/18990 (ICE in gfc_get_derived_type, at fortran/trans-types.c)

fortran/
PR fortran/18990
* gfortran.h (gfc_charlen): Add resolved field.
* expr.c (gfc_specification_expr): Accept NULL argument.
* resolve.c (gfc_resolve_charlen, gfc_resolve_derived): New.
(gfc_resolve_symbol): Resolve derived type definitions.  Use
resolve_charlen to resolve character lengths.
testsuite/
PR fortran/18990
* gfortran.dg/der_charlen_1.f90: New.

From-SVN: r108946

18 years agore PR fortran/20889 (type in a structure-constructor differs from type in derived...
Paul Thomas [Thu, 22 Dec 2005 07:05:22 +0000 (07:05 +0000)]
re PR fortran/20889 (type in a structure-constructor differs from type in derived-type-def)

2005-12-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20889
*resolve.c(resolve_structure_cons): Do not attempt to convert
the type of mismatched pointer type components, except when
the constructor component is BT_UNKNOWN; emit error instead.

PR fortran/25029
PR fortran/21256
*resolve.c(check_assumed_size_reference): New function to check for upper
bound in assumed size array references.
(resolve_assumed_size_actual): New function to do a very restricted scan
of actual argument expressions of those procedures for which incomplete
assumed size array references are not allowed.
(resolve_function, resolve_call): Switch off assumed size checking of
actual arguments, except for elemental procedures and array valued
intrinsics; excepting LBOUND.
(resolve_variable): Call check_assumed_size_reference.

PR fortran/19362
PR fortran/20244
PR fortran/20864
PR fortran/25391
*interface.c(gfc_compare_types): Broken into two.
(gfc_compare_derived_types): Second half of gfc_compare_types with
corrections for a missing check that module name is non-NULL and
a check for private components.
*symbol.c(gfc_free_dt_list): New function.
(gfc_free_namespace): Call gfc_free_dt_list.
*resolve.c(resolve_symbol): Build the list of derived types in the
symbols namespace.
*gfortran.h: Define the structure type gfc_dt_list.  Add a new field,
derived_types to gfc_namespace.  Provide a prototye for the new
function gfc_compare_derived_types.
*trans_types.c(gfc_get_derived_type): Test for the derived type being
available in the host namespace. In this case, the host backend
declaration is used for the structure and its components.  If an
unbuilt, equal structure that is not use associated is found in the
host namespace, build it there and then.  On exit,traverse the
namespace of the derived type to see if there are equal but unbuilt.
If so, copy the structure and its component declarations.
(copy_dt_decls_ifequal): New functions to copy declarations to other
equal structure types.

PR fortran/20862
* io.c (gfc_match_format): Make the appearance of a format statement
in a module specification block an error.

PR fortran/23152
* match.c (gfc_match_namelist): Set assumed shape arrays in
namelists as std=GFC_STD_GNU and assumed size arrays as an
unconditional error.

PR fortran/25069
* match.c (gfc_match_namelist): Set the respecification of a USE
associated namelist group as std=GFC_STD_GNU.  Permit the concatenation
on no error.

PR fortran/25053
PR fortran/25063
PR fortran/25064
PR fortran/25066
PR fortran/25067
PR fortran/25068
PR fortran/25307
* io.c (resolve_tag): Change std on IOSTAT != default integer to
GFC_STD_GNU and change message accordingly.  Add same error for
SIZE.
(match_dt_element, gfortran.h): Add field err_where to gfc_dt and
set it when tags are being matched.
(gfc_resolve_dt): Remove tests that can be done before resolution
and add some of the new ones here.
(check_io_constraints): New function that checks for most of the
data transfer constraints. Some of these were previously done in
match_io, from where this function is called, and some were done
in gfc_resolve_dt.
(match_io): Remove most of the tests of constraints and add the
call to check_io_constraints.

2005-12-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20889
*gfortran.dg/pointer_component_type_1.f90: New test.

PR fortran/25029
PR fortran/21256
*gfortran.dg/assumed_size_refs.f90: New test for the conditions that
should give an error with assumed size array refernces and checks those
that should not.
*gfortran.dg/gfortran.dg/pr15140.f90: Give the assumed size array
reference an upper bound so that it does not generate an error.

PR fortran/19362
PR fortran/20244
PR fortran/20864
PR fortran/25391
*gfortran.dg/used_dummy_types_1.f90: New test.
*gfortran.dg/used_dummy_types_2.f90: New test.
*gfortran.dg/used_dummy_types_3.f90: New test.
*gfortran.dg/used_dummy_types_4.f90: New test.
*gfortran.dg/used_dummy_types_5.f90: New test.

PR fortran/23152
*gfortran.dg/namelist_use.f90: Add trap for warning on NAMELIST
group already being USE associated.
*gfortran.dg/assumed_shape_nml.f90: New test.
*gfortran.dg/assumed_size_nml.f90: New test.

PR fortran/20862
PR fortran/25053
PR fortran/25063
PR fortran/25064
PR fortran/25066
PR fortran/25067
PR fortran/25068
PR fortran/25307
* gfortran.dg/io_constraints_1.f90: New test.
* gfortran.dg/io_constraints_1.f90: New test.
* gfortran.dg/iostat_3.f90: Change wording of warning.
 * gfortran.dg/g77/19981216-0.f:  the same.

From-SVN: r108943

18 years agore PR middle-end/23518 (some gcc optimizations do not take overflow into account...
Kazu Hirata [Thu, 22 Dec 2005 04:03:32 +0000 (04:03 +0000)]
re PR middle-end/23518 (some gcc optimizations do not take overflow into account with -fwrapv)

gcc/
PR tree-optimization/23518
* fold-const.c (make_range): Don't move a constant to the
other side of the comparison if the type is signed and -fwrapv
is given.

gcc/testsuite/
PR tree-optimization/23518
* testsuite/gcc.dg/pr23518.c: New.

From-SVN: r108940

18 years agore PR libfortran/25307 (internal read with end=label aborts)
Jerry DeLisle [Thu, 22 Dec 2005 02:32:29 +0000 (02:32 +0000)]
re PR libfortran/25307 (internal read with end=label aborts)

2005-12-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/25307
* io/list_read.c (next_char): Handle end-of-file conditions for
internal units and add support for internal character array units.

From-SVN: r108938

18 years agotree-vrp.c (extract_range_from_binary_expr): Clean up uses of vr0.type.
Kazu Hirata [Thu, 22 Dec 2005 01:16:57 +0000 (01:16 +0000)]
tree-vrp.c (extract_range_from_binary_expr): Clean up uses of vr0.type.

* tree-vrp.c (extract_range_from_binary_expr): Clean up uses
of vr0.type.

From-SVN: r108935

18 years ago* gcc.dg/attr-weakref-1.c: Really skip on darwin.
Mike Stump [Thu, 22 Dec 2005 01:02:55 +0000 (01:02 +0000)]
* gcc.dg/attr-weakref-1.c: Really skip on darwin.

From-SVN: r108934

18 years ago* gcc.dg/attr-weakref-1.c: Really skip on darwin.
Mike Stump [Thu, 22 Dec 2005 01:02:29 +0000 (01:02 +0000)]
* gcc.dg/attr-weakref-1.c: Really skip on darwin.

From-SVN: r108933

18 years agoDaily bump.
GCC Administrator [Thu, 22 Dec 2005 00:17:25 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r108930

18 years agore PR target/24998 (Build failure: undefined symbol __floatunsitf)
Joseph Myers [Wed, 21 Dec 2005 17:48:07 +0000 (17:48 +0000)]
re PR target/24998 (Build failure: undefined symbol __floatunsitf)

PR middle-end/24998
* config/arm/t-arm-elf (LIB1ASMFUNCS): Add _floatundidf and
_floatundisf.

From-SVN: r108918

18 years agopr19340.c: Skip on m68k targets.
Paul Brook [Wed, 21 Dec 2005 17:18:53 +0000 (17:18 +0000)]
pr19340.c: Skip on m68k targets.

2005-12-21  Paul Brook  <paul@codesourcery.com>

* gcc.dg/pr19340.c: Skip on m68k targets.

From-SVN: r108916

18 years agore PR middle-end/25121 (libgcj misscompilation?)
Andrew Haley [Wed, 21 Dec 2005 16:52:13 +0000 (16:52 +0000)]
re PR middle-end/25121 (libgcj misscompilation?)

2005-12-21  Andrew Haley  <aph@redhat.com>

        PR middle-end/25121
        * recog.c (peephole2_optimize): Don't peephole any
        RTX_FRAME_RELATED_P insns.

From-SVN: r108914

18 years agotree-data-ref.c (estimate_niter_from_size_of_data): Replace fold_build2 with fold_binary.
Kazu Hirata [Wed, 21 Dec 2005 16:48:59 +0000 (16:48 +0000)]
tree-data-ref.c (estimate_niter_from_size_of_data): Replace fold_build2 with fold_binary.

* tree-data-ref.c (estimate_niter_from_size_of_data): Replace
fold_build2 with fold_binary.
* tree-ssa-ccp.c (visit_assignment, maybe_fold_stmt_addition):
Replace fold_build1 with fold_unary.
* tree-ssa-reassoc.c (optimize_ops_list): Replace fold_build2
with fold_binary.

From-SVN: r108913

18 years agofixup PR number mixup
Steven Bosscher [Wed, 21 Dec 2005 15:43:38 +0000 (15:43 +0000)]
fixup PR number mixup

From-SVN: r108909

18 years agopatch for PR rtl-optimization/25130
Steven Bosscher [Wed, 21 Dec 2005 15:28:16 +0000 (15:28 +0000)]
patch for PR rtl-optimization/25130

gcc/
        * postreload-gcse.c (record_last_set_info): Notice stack pointer
        changes in push insns without REG_INC notes.

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

From-SVN: r108906

18 years agore PR fortran/25423 (Error with nested where statements)
Erik Edelmann [Wed, 21 Dec 2005 11:58:09 +0000 (11:58 +0000)]
re PR fortran/25423 (Error with nested where statements)

fortran/
2005-12-21  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/25423
        * parse.c (parse_where_block): break instead of "fall
         through" after parsing nested WHERE construct.

testsuite/
2005-12-21  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/25423
        gfortran.dg/where_nested_1.f90: New.

From-SVN: r108902

18 years agore PR tree-optimization/25382 (VRP does not get a range from BIT_AND_EXPR if the...
Kazu Hirata [Wed, 21 Dec 2005 05:58:02 +0000 (05:58 +0000)]
re PR tree-optimization/25382 (VRP does not get a range from BIT_AND_EXPR if the second operand is constant)

gcc/
PR tree-optimization/25382.
* tree-vrp.c (extract_range_from_binary_expr): Extract a range
from BIT_AND_EXPR.

gcc/testsuite/
PR tree-optimization/25382.
* gcc.dg/tree-ssa/pr25382.c: New.

From-SVN: r108898

18 years agoconfigure.ac: Enable C extension for decimal float if invoked with --enable-decimal...
Ben Elliston [Wed, 21 Dec 2005 00:43:21 +0000 (11:43 +1100)]
configure.ac: Enable C extension for decimal float if invoked with --enable-decimal-float.

* configure.ac: Enable C extension for decimal float if invoked
with --enable-decimal-float.
* doc/install.texi (Configuration): Document it.
* configure, config.in: Regenerate.

From-SVN: r108887

18 years agoDaily bump.
GCC Administrator [Wed, 21 Dec 2005 00:17:34 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r108884

18 years agodarwin.h (TARGET_OPTION_TRANSLATE_TABLE): Handle the ambiguity between -seg_addr_tabl...
Mike Stump [Tue, 20 Dec 2005 23:46:18 +0000 (23:46 +0000)]
darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Handle the ambiguity between -seg_addr_table and -seg_addr_table_filename.

        * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Handle the
        ambiguity between -seg_addr_table and -seg_addr_table_filename.
        (WORD_SWITCH_TAKES_ARG): Likewise.
        (LINK_SPEC): Likewise.
Radar 3941990

From-SVN: r108876