gcc.git
16 years agoRevert:
Eric Botcazou [Sat, 6 Oct 2007 20:28:15 +0000 (20:28 +0000)]
Revert:

2007-02-12  Eric Botcazou  <ebotcazou@adacore.com>

* tree.h (DECL_IGNORED_P): Document further effect for FUNCTION_DECL.
* cgraphunit.c (cgraph_expand_function): If DECL_IGNORED_P is set on
the function, temporarily point the debug interface to the null one.

From-SVN: r129056

16 years agonamelist_15.f90: Revise test.
Jerry DeLisle [Sat, 6 Oct 2007 16:59:59 +0000 (16:59 +0000)]
namelist_15.f90: Revise test.

2007-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* gfortran.dg/namelist_15.f90: Revise test.

From-SVN: r129055

16 years agore PR libstdc++/33487 (parallel v3: more functions not in right namespace)
Benjamin Kosnik [Sat, 6 Oct 2007 15:08:58 +0000 (15:08 +0000)]
re PR libstdc++/33487 (parallel v3: more functions not in right namespace)

2007-10-06  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/33487
* include/parallel/algorithmfwd.h (for_each, generate, generate_n,
transform, replace, replace_if, max_element, min_element, count,
count_if): Consistently construct overloads.
* include/parallel/numericfwd.h (accumulate, adjacent_difference,
inner_product): Same.
* include/parallel/algobase.h: Same.
* include/parallel/algo.h: Same.
* include/parallel/numeric: Same.

* include/bits/algorithmfwd.h: Correct find_end placement.

* docs/html/parallel_mode.html: Document some of the interface
conventions.

* include/parallel/search.h (calc_borders): Only use operator ==.

* include/parallel/algorithmfwd.h: Move __gnu_sequential bits to...
* include/parallel/tags.h: ...here, and use a using directive.

* include/parallel/random_shuffle.h: Include stl_numeric. Qualify
uses of partial_num with __gnu_sequential.

* include/parallel/tree.h: Formatting.

From-SVN: r129054

16 years ago* simplify.c (gfc_simplify_size): Fix typo.
Tobias Schlüter [Sat, 6 Oct 2007 12:17:32 +0000 (14:17 +0200)]
* simplify.c (gfc_simplify_size): Fix typo.

From-SVN: r129053

16 years agore PR tree-optimization/33655 (ICE in bitfield_overlaps_p, at tree-sra.c:2901)
Alexandre Oliva [Sat, 6 Oct 2007 11:47:51 +0000 (11:47 +0000)]
re PR tree-optimization/33655 (ICE in bitfield_overlaps_p, at tree-sra.c:2901)

gcc/ChangeLog:
PR tree-optimization/33655
* tree-sra.c (bitfield_overlaps_p): Handle array and complex
elements.
gcc/testsuite/ChangeLog:
PR tree-optimization/33655
* gcc.dg/torture/pr33655.c: New.

From-SVN: r129052

16 years agore PR tree-optimization/33572 (wrong code with -O)
Alexandre Oliva [Sat, 6 Oct 2007 11:43:56 +0000 (11:43 +0000)]
re PR tree-optimization/33572 (wrong code with -O)

gcc/ChangeLog:
PR tree-optimization/33572
* tree-cfg.c (verify_stmts): Check for missing PHI defs.
* tree-inline.c (update_ssa_across_eh_edges): Renamed to...
(update_ssa_across_abnormal_edges): ... this.  Set slots in the
return PHI node.
(copy_edges_for_bb): Handle nonlocal label edges.
(make_nonlocal_label_edges): Deleted.
(optimize_inline_calls): Don't call it.
gcc/testsuite/ChangeLog:
PR tree-optimization/33572
* g++.dg/torture/pr33572.C: New.

From-SVN: r129051

16 years agore PR fortran/25076 (FORALL triplet subscript must not reference any index-name)
Tobias Schlüter [Sat, 6 Oct 2007 08:55:30 +0000 (10:55 +0200)]
re PR fortran/25076 (FORALL triplet subscript must not reference any index-name)

PR fortran/25076
fortran/
* resolve.c (gfc_find_forall_index): Move towards top,
renaming to ...
(find_forall_index): ... this.  Add check for NULL expr.
(resolve_forall_iterators): Verify additional constraint.
(resolve_forall): Remove checks obsoleted by new code in
resolve_forall_iterators.
testsuite/
* gfortran.dg/forall_11.f90: New.

From-SVN: r129050

16 years agoFixes for --disable-libstdcxx-pch.
Benjamin Kosnik [Sat, 6 Oct 2007 03:06:37 +0000 (03:06 +0000)]
Fixes for --disable-libstdcxx-pch.

2007-10-05  Benjamin Kosnik  <bkoz@redhat.com>

Fixes for --disable-libstdcxx-pch.
* include/ext/rc_string_base.h: Include stl_iterator_base_funcs.h.
* include/ext/vstring_util.h: Include stl_iterator.h and
numeric_traits.h.
* include/tr1/functional: Include new.
* testsuite/util/testsuite_api.h: Include exception.
* testsuite/lib/libstdc++.exp (libstdc++_init): Set
PCH_CXXFLAGS via cxxpchflags.

* testsuite/25_algorithms/binary_search/requirements/
explicit_instantiation/2.cc: Same.: Fix includes.
* testsuite/25_algorithms/count_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/equal_range/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_end/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_first_of/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/for_each/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/includes/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/inplace_merge/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/lexicographical_compare/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/lower_bound/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/make_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/max_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/max/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/merge/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/min_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/min/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/next_permutation/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/nth_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partial_sort_copy/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partial_sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partition/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/pop_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/prev_permutation/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/push_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/random_shuffle/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/remove_copy_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/remove_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/replace_copy_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/replace_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/search_n/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/search/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_difference/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_intersection/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_symmetric_difference/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_union/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/sort_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/stable_partition/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/stable_sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/transform/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/unique_copy/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/unique/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/upper_bound/requirements/
explicit_instantiation/2.cc: Same.

* testsuite/25_algorithms/remove/requirements/
explicit_instantiation/pod.cc: Provide a hint to the compiler.

From-SVN: r129049

16 years agomoveable.cc: Remove dg-require-rvalref.
Paolo Carlini [Sat, 6 Oct 2007 02:33:12 +0000 (02:33 +0000)]
moveable.cc: Remove dg-require-rvalref.

2007-10-05  Paolo Carlini  <pcarlini@suse.de>

* testsuite/23_containers/map/moveable.cc: Remove dg-require-rvalref.
* testsuite/23_containers/multimap/moveable.cc: Likewise.
* testsuite/23_containers/set/moveable.cc: Likewise.
* testsuite/23_containers/multiset/moveable.cc: Likewise.
* testsuite/23_containers/deque/moveable.cc: Likewise.
* testsuite/23_containers/list/moveable.cc: Likewise.
* testsuite/23_containers/vector/moveable.cc: Likewise.
* include/std/utility: Use _GLIBCXX_BEGIN_NAMESPACE.

2007-10-05  Paolo Carlini  <pcarlini@suse.de>
    Chris Jefferson  <chris@bubblescope.net>

* include/bits/stl_iterator.h (class move_iterator,
make_move_iterator): Add.

Co-Authored-By: Chris Jefferson <chris@bubblescope.net>
From-SVN: r129048

16 years agoDaily bump.
GCC Administrator [Sat, 6 Oct 2007 00:17:36 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r129045

16 years ago* gthr-single.h: Revert last change.
Hans-Peter Nilsson [Fri, 5 Oct 2007 22:02:19 +0000 (22:02 +0000)]
* gthr-single.h: Revert last change.

From-SVN: r129040

16 years agore PR middle-end/33667 (RTL sharing with divmod)
Michael Matz [Fri, 5 Oct 2007 17:56:52 +0000 (17:56 +0000)]
re PR middle-end/33667 (RTL sharing with divmod)

gcc/
 PR middle-end/33667
 * lower-subreg.c (decompose_multiword_subregs): Use
 validate_unshare_change().

testsuite/
 * gcc.dg/pr33667.c: New testcase.

From-SVN: r129038

16 years agora-conflict.c: Include "sparseset.h".
Peter Bergner [Fri, 5 Oct 2007 17:55:18 +0000 (12:55 -0500)]
ra-conflict.c: Include "sparseset.h".

* ra-conflict.c: Include "sparseset.h".
(conflicts): Change to HOST_WIDEST_FAST_INT.
(allocnos_live): Redefine variable as a sparseset.
(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE): Delete macros.
(allocno_row_words): Removed global variable.
(partial_bitnum, max_bitnum, adjacency_pool, adjacency): New variables.
(CONFLICT_BITNUM, CONFLICT_BITNUM_FAST): New defines.
(conflict_p, set_conflict_p, set_conflicts_p): New functions.
(record_one_conflict_between_regnos): Cache allocno values and reuse.
Use set_conflict_p.
(record_one_conflict): Update uses of allocnos_live to use
the sparseset routines.  Use set_conflicts_p.
(mark_reg_store): Likewise.
(set_reg_in_live): Likewise.
(global_conflicts): Update uses of allocnos_live.
Use the new adjacency list to visit an allocno's neighbors
rather than iterating over all possible allocnos.
Call set_conflicts_p to setup conflicts rather than adding
them manually.
* global.c: Comments updated.
(CONFLICTP): Delete define.
(regno_compare): New function.  Add prototype.
(global_alloc): Sort the allocno to regno mapping according to
which basic blocks the regnos are referenced in.  Modify the
conflict bit matrix to a compressed triangular bitmatrix.
Only allocate the conflict bit matrix and adjacency lists if
we are actually going to allocate something.
(expand_preferences): Use conflict_p.  Update uses of allocnos_live.
(prune_preferences): Use the FOR_EACH_CONFLICT macro to visit an
allocno's neighbors rather than iterating over all possible allocnos.
(mirror_conflicts): Removed function.
(dump_conflicts): Iterate over regnos rather than allocnos so
that all dump output will be sorted by regno number.
Use the FOR_EACH_CONFLICT macro.
* ra.h: Comments updated.
(conflicts): Update prototype to HOST_WIDEST_FAST_INT.
(partial_bitnum, max_bitnum, adjacency, adjacency_pool): Add prototypes.
(ADJACENCY_VEC_LENGTH, FOR_EACH_CONFLICT): New defines.
(adjacency_list_d, adjacency_iterator_d): New types.
(add_neighbor, adjacency_iter_init, adjacency_iter_done,
adjacency_iter_next, regno_basic_block): New static inline functions.
(EXECUTE_IF_SET_IN_ALLOCNO_SET): Removed define.
(conflict_p): Add function prototype.
* sparseset.h, sparseset.c: New files.
* Makefile.in (OBJS-common): Add sparseset.o.
(sparseset.o): New rule.

From-SVN: r129037

16 years agore PR middle-end/33666 (Type verification failure with pointer to long long conversion)
Richard Guenther [Fri, 5 Oct 2007 16:33:25 +0000 (16:33 +0000)]
re PR middle-end/33666 (Type verification failure with pointer to long long conversion)

2007-10-05  Richard Guenther  <rguenther@suse.de>

PR middle-end/33666
* fold-const.c (fold_unary): Do not fold (long long)(int)ptr
to (long long)ptr.

* gcc.dg/pr33666.c: New testcase.

From-SVN: r129036

16 years agore PR inline-asm/33600 (Breakage caused by the fix to PR33552)
Michael Matz [Fri, 5 Oct 2007 15:36:16 +0000 (15:36 +0000)]
re PR inline-asm/33600 (Breakage caused by the fix to PR33552)

gcc/
 PR inline-asm/33600
 * function.c (match_asm_constraints_1): Check for input
 being used in the outputs.

testsuite/
 * gcc.target/i386/pr33600.c: New testcase.

From-SVN: r129035

16 years agogfortran.h (gfc_get_data_variable, [...]): Move to decl.c.
Francois-Xavier Coudert [Fri, 5 Oct 2007 12:33:07 +0000 (12:33 +0000)]
gfortran.h (gfc_get_data_variable, [...]): Move to decl.c.

* gfortran.h (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move to decl.c.
(global_used): Rename into gfc_global_used.
(gfc_formalize_init_value, gfc_get_section_index,
gfc_assign_data_value, gfc_assign_data_value_range,
gfc_advance_section): Move to data.h.
(gfc_set_in_match_data): Remove.
* decl.c (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move here.
(gfc_set_in_match_data): Rename into set_in_match_data.
(gfc_match_data): Likewise.
(add_global_entry): Rename global_used into gfc_global_used.
* data.c: Include data.h.
* trans.h (gfc_todo_error): Remove.
* trans-array.c (gfc_trans_array_constructor,
gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
gfc_todo_error into assertions.
* resolve.c (resolve_global_procedure): Rename global_used into
gfc_global_used.
* parse.c (gfc_global_used, parse_module, add_global_procedure,
add_global_program): Likewise.
* trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
global_used into gfc_global_used.
* Make-lang.in: Add dependencies on fortran/data.h.
* data.h: New file.

From-SVN: r129034

16 years agotree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.
Richard Guenther [Fri, 5 Oct 2007 12:20:18 +0000 (12:20 +0000)]
tree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.

2007-10-05  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.

* g++.dg/tree-ssa/obj-type-ref.C: New testcase.

From-SVN: r129033

16 years agoAdd NOMIPS16 to last commit (will be in gcc-patches@ message).
Richard Sandiford [Fri, 5 Oct 2007 08:39:58 +0000 (08:39 +0000)]
Add NOMIPS16 to last commit (will be in gcc-patches@ message).

From-SVN: r129032

16 years agore PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)
Richard Sandiford [Fri, 5 Oct 2007 08:34:01 +0000 (08:34 +0000)]
re PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)

gcc/
PR target/33635
* config/mips/mips.c (mips_register_move_cost): Rewrite to use
subset checks.  Make the cost of FPR -> FPR moves depend on
mips_mode_ok_for_mov_fmt_p.

gcc/testsuite/
PR target/33635
* gcc.target/mips/pr33635-1.c: New test.

From-SVN: r129031

16 years agogthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX...
Doug Kwan [Fri, 5 Oct 2007 05:35:46 +0000 (05:35 +0000)]
gthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX conditional variables.

2007-09-13  Doug Kwan  <dougkwan@google.com>

        * gcc/gthr-posix.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
        support of conditional variables.
        * gcc/gthr-posix95.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
        support of conditional variables.
        * gcc/gthr-single.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables.
        * gcc/gthr.h: Update comments to document new interface.
        * libstdc++-v3/include/ext/concurrent.h (class __mutex,
        class __recursive_mutex): Add new method gthread_mutex to access
        inner gthread mutex.
        [__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
        class __concurrence_wait_error, class __cond): Add.
        * guard.cc (recursive_push, recursive_pop): Delete.
        (init_in_progress_flag, set_init_in_progress_flag): Add to
        replace recursive_push and recursive_pop.
        (throw_recursive_init_exception): Add.
        (acquire, __cxa_guard_acquire, __cxa_guard_abort and
        __cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
        for synchronization of static variable initialization.
        The global mutex is only held briefly when guards are
        accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
        which deadlocks.
        * testsuite/thread/guard.cc: Add new test. It deadlocks with the
        old locking code in libstdc++-v3/libsup++/guard.cc.

From-SVN: r129030

16 years agoDaily bump.
GCC Administrator [Fri, 5 Oct 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r129028

16 years agocgraphunit.c (cgraph_build_static_cdtor): Don't set DECL_IGNORED_P.
Geoffrey Keating [Thu, 4 Oct 2007 21:24:03 +0000 (21:24 +0000)]
cgraphunit.c (cgraph_build_static_cdtor): Don't set DECL_IGNORED_P.

* cgraphunit.c (cgraph_build_static_cdtor): Don't set
DECL_IGNORED_P.

From-SVN: r129024

16 years ago* config/avr/avr.c (expand_epilogue): Don't set RTX_FRAME_RELATED_P.
Anatoly Sokolov [Thu, 4 Oct 2007 21:18:12 +0000 (01:18 +0400)]
* config/avr/avr.c (expand_epilogue): Don't set RTX_FRAME_RELATED_P.

From-SVN: r129023

16 years agore PR fortran/33539 (Too much noise for zero-length character strings)
Thomas Koenig [Thu, 4 Oct 2007 20:26:24 +0000 (20:26 +0000)]
re PR fortran/33539 (Too much noise for zero-length character strings)

2007-10-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/33539
* resolve.c: Only warn if the string length is
less than zero.

2007-10-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/33539
* zero_length_2.f90:  Omit warning for zero-length string.
* repeat_2.f90:  Likewise.
* repeat_4.f90:  Likewise.
* char_length_2.f90:  Likewise.

From-SVN: r129022

16 years agoMAINTAINERS (Register allocation reviewer): Add myself.
Seongbae Park [Thu, 4 Oct 2007 18:58:49 +0000 (18:58 +0000)]
MAINTAINERS (Register allocation reviewer): Add myself.

2006-10-04  Seongbae Park <seongbae.park@gmail.com>

* MAINTAINERS (Register allocation reviewer): Add myself.

From-SVN: r129021

16 years agore PR c++/20416 (Incorrect lifetime for temporary with static const reference)
Jason Merrill [Thu, 4 Oct 2007 17:58:07 +0000 (13:58 -0400)]
re PR c++/20416 (Incorrect lifetime for temporary with static const reference)

        PR c++/20416
        * call.c (initialize_reference): Handle local static reference
        temps properly.

From-SVN: r129020

16 years agore PR libfortran/33253 (namelist: reading back a string with apostrophe)
Jerry DeLisle [Thu, 4 Oct 2007 16:02:42 +0000 (16:02 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)

2007-10-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33253
* gfortran.dg/namelist_39.f90: Revise to use long names.

From-SVN: r129018

16 years agoFix ChangeLog.
Jerry DeLisle [Thu, 4 Oct 2007 15:59:54 +0000 (15:59 +0000)]
Fix ChangeLog.

From-SVN: r129017

16 years agore PR libfortran/33253 (namelist: reading back a string with apostrophe)
Jerry DeLisle [Thu, 4 Oct 2007 15:57:28 +0000 (15:57 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)

2007-10-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33253
* io/list_read.c (read_character): Use line_buffer to scan ahead for
object name or string when no delimiter is found.

From-SVN: r129016

16 years agore PR fortran/33646 (Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006)
H.J. Lu [Thu, 4 Oct 2007 15:39:11 +0000 (15:39 +0000)]
re PR fortran/33646 (Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006)

2007-10-04  H.J. Lu  <hongjiu.lu@intel.com>

PR fortran/33646
* gfortran.dg/pr33646.f90: New file.

From-SVN: r129015

16 years agore PR fortran/32021 (Fix,document,remove GFORTRAN_* environment variables)
François-Xavier Coudert [Thu, 4 Oct 2007 15:18:48 +0000 (15:18 +0000)]
re PR fortran/32021 (Fix,document,remove GFORTRAN_* environment variables)

PR libfortran/32021

* runtime/environ.c (init_mem, show_mem, init_round, show_round,
init_precision, show_precision, init_signal, show_signal): Remove.
(variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
GFORTRAN_FPU_PRECISION.
* libgfortran.h (options_t): Remove mem_check, fpu_round,
fpu_precision, sighup, sigint, allocate_init_flag and
allocate_init_value.

From-SVN: r129014

16 years ago[multiple changes]
Paolo Carlini [Thu, 4 Oct 2007 15:12:34 +0000 (15:12 +0000)]
[multiple changes]

2007-10-04  Paolo Carlini  <pcarlini@suse.de>

* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.

2007-10-04  Chris Jefferson  <chris@bubblescope.net>
    Paolo Carlini  <pcarlini@suse.de>

* include/bits/stl_list.h (list<>::list(list&&),
list<>::operator=(list&&)): Add.
(list<>::swap): Adjust.
(swap(list&&, list& __y), swap(list&, list&& __y)): Add.
* include/bits/stl_vector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
(swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
* include/bits/stl_bvector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
* include/bits/stl_deque.h (deque<>::deque(deque&&),
deque<>::operator=(deque&&)): Add.
(deque<>::swap): Adjust.
(swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
* include/bits/stl_set.h (set<>::set(set&&),
set<>::operator=(set&&)): Add.
(set<>::swap): Adjust.
(swap(set&&, set& __y), swap(set&, set&& __y)): Add.
* include/bits/stl_map.h (map<>::map(map&&),
map<>::operator=(map&&)): Add.
(map<>::swap): Adjust.
(swap(map&&, map& __y), swap(map&, map&& __y)): Add.
* include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
multiset<>::operator=(multiset&&)): Add.
(smultiet<>::swap): Adjust.
(swap(multiset&&, multiset& __y),
swap(multiset&, multiset&& __y)): Add.
* include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
multimap<>::operator=(multimap&&)): Add.
(multimap<>::swap): Adjust.
(swap(multimap&&, multimap& __y),
swap(multimap&, multimap&& __y)): Add.

2007-10-04  Paolo Carlini  <pcarlini@suse.de>

Avoid copying some allocator objects.
* include/bits/stl_list.h (_List_impl::_List_impl(),
_List_base::_List_base(), list<>::list()): Add.
* include/bits/stl_vector.h  (_Vector_impl::_Vector_impl(),
_Vector_base::_Vector_base(), vector<>::vector()): Add.
* include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
_Bvector_base::_Bvector_base(), vector<>::vector()): Add.
* include/bits/stl_deque.h  (_Deque_impl::_Deque_impl(),
_Deque_base::_Deque_base(), deque<>::deque()): Add.
* include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
_Rb_tree_impl<>::_M_initialize): Add.
(_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
_Rb_tree(const _Rb_tree&)): Adjust.
* include/bits/stl_set.h (set<>::set(),
set(_InputIterator, _InputIterator)): Use _M_t default constructor.
* include/bits/stl_map.h (map<>::map(), set(_InputIterator,
_InputIterator)): Use _M_t default constructor.
* include/bits/stl_multiset.h (multiset<>::multiset(),
multiset(_InputIterator, _InputIterator)): Use _M_t default
constructor.
* include/bits/stl_multimap.h (multimap<>::multimap(),
multimap(_InputIterator, _InputIterator)): Use _M_t default
constructor.

From-SVN: r129013

16 years agore PR fortran/33529 (Non-litteral CHARACTER kind values matching is wrong)
Francois-Xavier Coudert [Thu, 4 Oct 2007 15:08:14 +0000 (15:08 +0000)]
re PR fortran/33529 (Non-litteral CHARACTER kind values matching is wrong)

PR fortran/33529

* decl.c (match_char_kind): New function.
(match_char_spec): Use match_char_kind.

* gfortran.dg/char_type_len_2.f90: Adjust error message.
* gfortran.dg/char_decl_2.f90: New test.

From-SVN: r129012

16 years agore PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor...
Francois-Xavier Coudert [Thu, 4 Oct 2007 15:04:09 +0000 (15:04 +0000)]
re PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor syntax)

PR fortran/33502
* scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
and debug_hooks->start_source_file when appropriate, and set
dbg_emitted.
(gfc_define_undef_line): New function.
(load_file): Don't error out on #define and #undef lines.
* parse.c (next_statement): Call gfc_define_undef_line.
(gfc_parse_file): Call debug_hooks->start_source_file and
debug_hooks->end_source_file for the main source file if
required.
* gfortran.h (gfc_linebuf): Add dbg_emitted field.
(gfc_define_undef_line): New prototype.

From-SVN: r129011

16 years agore PR middle-end/33641 (perlbmk gets type mismatch in pointer plus expression)
Richard Guenther [Thu, 4 Oct 2007 14:35:32 +0000 (14:35 +0000)]
re PR middle-end/33641 (perlbmk gets type mismatch in pointer plus expression)

2007-10-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/33641
* tree-cfg.c (verify_gimple_expr): Operand one of POINTER_PLUS_EXPR
does not need to be of INTEGER_TYPE.
(verify_gimple_2): New function split out from ...
(verify_gimple_1): ... here.  ICE if there was an error during
verification.

* gcc.c-torture/compile/pr33641.c: New testcase.

From-SVN: r129010

16 years agoMention PR fortran/33646 in revision 129000.
H.J. Lu [Thu, 4 Oct 2007 13:42:48 +0000 (06:42 -0700)]
Mention PR fortran/33646 in revision 129000.

From-SVN: r129008

16 years agore PR rtl-optimization/33653 (volatile memory access optimized away)
Michael Matz [Thu, 4 Oct 2007 13:35:06 +0000 (13:35 +0000)]
re PR rtl-optimization/33653 (volatile memory access optimized away)

        PR rtl-optimization/33653
        * gcc.dg/pr33653.c: New.

From-SVN: r129007

16 years agore PR rtl-optimization/33653 (volatile memory access optimized away)
Michael Matz [Thu, 4 Oct 2007 13:34:09 +0000 (13:34 +0000)]
re PR rtl-optimization/33653 (volatile memory access optimized away)

        PR rtl-optimization/33653
        * dce.c (deletable_insn_p_1): Use volatile_refs_p().
        * dse.c (scan_insn): Same.

From-SVN: r129006

16 years ago* config.gcc: Remove USE_GAS for m68k targets.
Kazu Hirata [Thu, 4 Oct 2007 12:59:49 +0000 (12:59 +0000)]
* config.gcc: Remove USE_GAS for m68k targets.

From-SVN: r129005

16 years agore PR tree-optimization/33627 (ICE in verify_stmts compiling abiword)
Richard Guenther [Thu, 4 Oct 2007 09:37:04 +0000 (09:37 +0000)]
re PR tree-optimization/33627 (ICE in verify_stmts compiling abiword)

2007-10-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/33627
* tree-gimple.h (canonicalize_cond_expr_cond): Declare.
* tree-gimple.c (canonicalize_cond_expr_cond): New function,
split out from ...
* tree-ssa-forwprop.c (combine_cond_expr_cond): ... here.
* tree-ssa-ifcombine.c (ifcombine_iforif): Use it.

* g++.dg/torture/pr33627.C: New testcase.

From-SVN: r129004

16 years agore PR c++/32470 (fvisibility=hidden without effect in some cases)
Jason Merrill [Thu, 4 Oct 2007 08:48:23 +0000 (04:48 -0400)]
re PR c++/32470 (fvisibility=hidden without effect in some cases)

        PR c++/32470
        * name-lookup.c (push_namespace_with_attrs): Fold back into...
        (push_namespace): Here.
        (handle_namespace_attrs): New fn for the attr code.
        (leave_scope): Don't pop_visibility.
        * name-lookup.h (struct cp_binding_level): Remove has_visibility.
        * parser.c (cp_parser_namespace_definition): Call
        handle_namespace_attrs and pop_visibility as appropriate.

From-SVN: r129003

16 years agore PR fortran/33626 (Parentheses get wrong kind during matching)
Tobias Schlüter [Thu, 4 Oct 2007 07:34:38 +0000 (09:34 +0200)]
re PR fortran/33626 (Parentheses get wrong kind during matching)

PR fortran/33626
fortran/
* resolve.c (resolve_operator): Always copy the type for
expressions in parentheses.
testsuite/
* gfortran.dg/parens_6.f90: New.

From-SVN: r129002

16 years agoavr.c (commands_in_file, [...]): Remove variables.
Anatoly Sokolov [Thu, 4 Oct 2007 06:51:38 +0000 (10:51 +0400)]
avr.c (commands_in_file, [...]): Remove variables.

  * config/avr/avr.c (commands_in_file, commands_in_prologues,
commands_in_epilogues): Remove variables.
(avr_file_start): Remove unneded initializations of commands_in_file,
commands_in_prologues and commands_in_epilogues variables.
(avr_file_end): Remove dead code.

From-SVN: r129001

16 years agore PR fortran/33542 (gfortran does not detect ambigious specific names if they are...
Paul Thomas [Thu, 4 Oct 2007 04:45:41 +0000 (04:45 +0000)]
re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)

2007-10-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33542
* interface.c (check_interface1): Revert patch of 2007-10-02.

2007-10-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: Remove.

From-SVN: r129000

16 years agore PR c++/11756 (ICE's when using typeof in template function parameter type declarat...
Jason Merrill [Thu, 4 Oct 2007 01:01:00 +0000 (21:01 -0400)]
re PR c++/11756 (ICE's when using typeof in template function parameter type declarations)

        PR c++/11756
        * mangle.c (write_type) [TYPEOF_TYPE]: Just sorry.

From-SVN: r128999

16 years agoDaily bump.
GCC Administrator [Thu, 4 Oct 2007 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128997

16 years agom68k.c (m68k_output_movem): Use the MOTOROLA if MOTOROLA is to true.
Kazu Hirata [Wed, 3 Oct 2007 23:42:32 +0000 (23:42 +0000)]
m68k.c (m68k_output_movem): Use the MOTOROLA if MOTOROLA is to true.

* config/m68k/m68k.c (m68k_output_movem): Use the MOTOROLA if
MOTOROLA is to true.

From-SVN: r128994

16 years agore PR fortran/26682 (gfortran fails with -fwhole-program optimization)
Francois-Xavier Coudert [Wed, 3 Oct 2007 21:27:39 +0000 (21:27 +0000)]
re PR fortran/26682 (gfortran fails with -fwhole-program optimization)

PR fortran/26682
* trans-decl.c (build_function_decl): Set "externally_visible"
attribute on the MAIN program decl.

From-SVN: r128993

16 years agodecl.c (duplicate_decls): Preserve linkage flags for mere redeclarations of gnu_inlin...
Alexandre Oliva [Wed, 3 Oct 2007 19:38:01 +0000 (19:38 +0000)]
decl.c (duplicate_decls): Preserve linkage flags for mere redeclarations of gnu_inline definitions.

2007-10-01  Alexandre Oliva  <aoliva@redhat.com>

* decl.c (duplicate_decls): Preserve linkage flags for mere
redeclarations of gnu_inline definitions.

* g++.dg/ext/gnu-inline-global-redecl.C: New.

From-SVN: r128992

16 years agore PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)
Richard Sandiford [Wed, 3 Oct 2007 18:39:30 +0000 (18:39 +0000)]
re PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)

gcc/
PR target/33635
* config/mips/mips-protos.h (mips_split_64bit_move): Rename to...
(mips_split_doubleword_move): ...this.
* config/mips/mips.c (mips_subword): Extend to handle 64-bit words;
use natural endianness for multi-format FPR values.
(mips_split_64bit_move): Rename to...
(mips_split_doubleword_move): ...this and extend to 64-bit words.
Use move_doubleword_fpr* patterns for moves involving FPRs.
(mips_save_reg): Update the call to mips_split_64bit_move.
(mips_secondary_reload_class): Return NO_REGS for any reload of a
nonzero constant into an FPR if the constant can be forced to memory.
* config/mips/mips.md: Update the splitter calls to
mips_split_64bit_move.
(UNSPEC_LOAD_DF_LOW): Rename to...
(UNSPEC_LOAD_LOW): ...this.
(UNSPEC_LOAD_DF_HIGH): Rename to...
(UNSPEC_LOAD_HIGH): ...this.
(UNSPEC_STORE_DF_HIGH): Rename to...
(UNSPEC_STORE_WORD): ...this.
(SPLITF): New mode iterator.
(HALFMODE): New mode attribute.
(movtf): New expander.
(*movtf_internal): New define_insn_and_split.
(move_doubleword_fpr<mode>): New expander.
(load_df_low, load_df_high, store_df_high, mthc1, mfhc1): Replace
with...
(load_low<mode>, load_high<mode>, store_word<mode>, mthc1<mode>)
(mfhc1<mode>): ...these more general patterns.

gcc/testsuite/
PR target/33635
* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_isa_rev
and mips_forced_be.
(dg-mips-options): Handle -EL and -mel.  Make -mfp64 imply
-mhard-float and a suitable ISA.  Improve handling of -mipsXrY
options.
* gcc.target/mips/fpr-moves-1.c: New test.
* gcc.target/mips/fpr-moves-2.c: Likewise.
* gcc.target/mips/fpr-moves-3.c: Likewise.
* gcc.target/mips/fpr-moves-4.c: Likewise.
* gcc.target/mips/fpr-moves-5.c: Likewise.
* gcc.target/mips/fpr-moves-6.c: Likewise.
* gcc.target/mips/mips32r2-mxhc1.c: Remove -march=mips32r2

From-SVN: r128991

16 years agomoveable.cc: New.
Chris Jefferson [Wed, 3 Oct 2007 17:27:18 +0000 (17:27 +0000)]
moveable.cc: New.

2007-10-03  Chris Jefferson  <chris@bubblescope.net>
    Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/20_util/pair/moveable.cc: New. Merge from
libstdcxx_so_7-branch.
* testsuite/23_containers/deque/capacity/moveable.cc: Same.
* testsuite/23_containers/deque/cons/moveable.cc: Same.
* testsuite/23_containers/deque/modifiers/moveable.cc: Same.
* testsuite/23_containers/deque/moveable.cc: Same.
* testsuite/23_containers/list/moveable.cc: Same.
* testsuite/23_containers/map/moveable.cc: Same.
* testsuite/23_containers/multimap/moveable.cc: Same.
* testsuite/23_containers/multiset/moveable.cc: Same.
* testsuite/23_containers/set/moveable.cc: Same.
* testsuite/23_containers/vector/cons/moveable.cc: Same.
* testsuite/23_containers/vector/modifiers/moveable.cc: Same.
* testsuite/23_containers/vector/moveable.cc: Same.
* testsuite/23_containers/vector/resize/moveable.cc: Same.
* testsuite/25_algorithms/heap/moveable.cc: Same.
* testsuite/25_algorithms/nth_element/moveable.cc: Same.
* testsuite/25_algorithms/partial_sort/moveable.cc: Same.
* testsuite/25_algorithms/partition/moveable.cc: Same.
* testsuite/25_algorithms/remove_if/moveable.cc: Same.
* testsuite/25_algorithms/remove/moveable.cc: Same.
* testsuite/25_algorithms/reverse/moveable.cc: Same.
* testsuite/25_algorithms/rotate/moveable.cc: Same.
* testsuite/25_algorithms/sort/moveable.cc: Same.
* testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
* testsuite/25_algorithms/unique/moveable.cc: Same.
* testsuite/util/testsuite_rvalref.h: New.

* testsuite/25_algorithms/equal/equal.cc: Move to...
* testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
* testsuite/25_algorithms/heap/heap.cc: Move to...
* testsuite/25_algorithms/heap/1.cc: ...this.
* testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
* testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
* testsuite/25_algorithms/partition/partition.cc: Move to...
* testsuite/25_algorithms/partition/1.cc: ...this.
* testsuite/25_algorithms/stable_partition/1.cc: ... and this.

* testsuite/25_algorithms/search/1.cc: Update from merge.
* testsuite/25_algorithms/search/check_type.cc: Same.

* testsuite/lib/dg-options.exp (dg-require-rvalref): New.
* testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r128990

16 years ago* gfortran.dg/default_format_1.f90: XFAIL on all darwin targets.
Francois-Xavier Coudert [Wed, 3 Oct 2007 17:08:19 +0000 (17:08 +0000)]
* gfortran.dg/default_format_1.f90: XFAIL on all darwin targets.

From-SVN: r128989

16 years ago* cfgrtl.c (rtl_block_ends_with_call_p): Skip notes at the end.
Alexandre Oliva [Wed, 3 Oct 2007 16:58:25 +0000 (16:58 +0000)]
* cfgrtl.c (rtl_block_ends_with_call_p): Skip notes at the end.

From-SVN: r128988

16 years agogcse.c (hash_scan_set): Insert set in insn before note at the end of basic block.
Alexandre Oliva [Wed, 3 Oct 2007 16:57:21 +0000 (16:57 +0000)]
gcse.c (hash_scan_set): Insert set in insn before note at the end of basic block.

* gcse.c (hash_scan_set): Insert set in insn before note at
the end of basic block.

From-SVN: r128987

16 years agore PR tree-optimization/33576 (segfault in extract_muldiv for cpu2006 benchmark)
Sebastian Pop [Wed, 3 Oct 2007 15:45:10 +0000 (15:45 +0000)]
re PR tree-optimization/33576 (segfault in extract_muldiv for cpu2006 benchmark)

2007-10-03  Sebastian Pop  <sebastian.pop@amd.com>

        PR tree-optimization/33576
        * testsuite/gcc.dg/tree-ssa/pr33576.c: New.
        * tree-loop-linear.c (linear_transform_loops): Call remove_iv.
        * lambda.h (lambda_loopnest_to_gcc_loopnest): New parameter.
        (remove_iv): Declared.
        * lambda-code.c (remove_iv): Not static.
        (lambda_loopnest_to_gcc_loopnest): New parameter remove_ivs.
        Don't remove ivs there, save ivs in the buffer.

From-SVN: r128986

16 years ago* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
Kazu Hirata [Wed, 3 Oct 2007 15:27:46 +0000 (15:27 +0000)]
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

From-SVN: r128985

16 years agoFix date on ChangeLog entry.
Tobias Schlüter [Wed, 3 Oct 2007 15:00:49 +0000 (17:00 +0200)]
Fix date on ChangeLog entry.

From-SVN: r128984

16 years agodefault_format_1.f90: XFAIL on ppc-darwin.
François-Xavier Coudert [Wed, 3 Oct 2007 14:57:39 +0000 (14:57 +0000)]
default_format_1.f90: XFAIL on ppc-darwin.

* gfortran.dg/default_format_1.f90: XFAIL on ppc-darwin.
* gfortran.dg/default_format_2.f90: XFAIL on ppc-darwin.

From-SVN: r128983

16 years agono-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
Richard Sandiford [Wed, 3 Oct 2007 14:16:57 +0000 (14:16 +0000)]
no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

config/
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
libstdc++-v3/

libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables.  Use -lm
for link tests in GCC_TRY_COMPILE_OR_LINK.  Fall back to
compile-only tests if -lm is not available.
* configure: Regenerate.

From-SVN: r128982

16 years agore PR java/33639 (gcj generates assembler errors)
Andrew Haley [Wed, 3 Oct 2007 12:59:57 +0000 (12:59 +0000)]
re PR java/33639 (gcj generates assembler errors)

2007-10-03  Andrew Haley  <aph@redhat.com>

        PR java/33639
        * class.c (mangled_classname): Detect and replace illegal
        characters in assembly language symbols.
        (gen_indirect_dispatch_tables): Call mangled_classname() on
        the type.

From-SVN: r128981

16 years agore PR fortran/33198 (Derived type in common: Default initializer not rejected)
Tobias Schlüter [Wed, 3 Oct 2007 11:37:44 +0000 (13:37 +0200)]
re PR fortran/33198 (Derived type in common: Default initializer not rejected)

PR fortran/33198
fortran/
* resolve.c (has_default_initializer): Move to top.  Make bool.
(resolve_common_blocks): Simplify logic.  Add case for derived
type initialization.
(resolve_fl_variable_derived): Split out from ...
(resolve_fl_variable): ... from here, while adapting to new h_d_i
interface.
testsuite/
* gfortran.dg/common_errors_1.f90: New.

From-SVN: r128980

16 years agore PR c++/15764 (no cleanup if temporary's dtor terminates with an exception)
Jason Merrill [Wed, 3 Oct 2007 10:43:42 +0000 (06:43 -0400)]
re PR c++/15764 (no cleanup if temporary's dtor terminates with an exception)

        PR c++/15764
        * cp/decl.c (wrap_cleanups_r): New fn.
        (wrap_temporary_cleanups): New fn.
        (initialize_local_var): Call it.
        * tree-eh.c (same_handler_p): New fn.
        (optimize_double_finally): New fn.
        (refactor_eh_r): New fn.
        (refactor_eh): New fn.
        (pass_refactor_eh): New pass.
        * tree-pass.h: Declare it.
        * passes.c (init_optimization_passes): Add it.

From-SVN: r128979

16 years agore PR debug/31899 (-g and using declaration causing ICE in reference_to_unused)
Doug Kwan [Wed, 3 Oct 2007 10:01:43 +0000 (10:01 +0000)]
re PR debug/31899 (-g and using declaration causing ICE in reference_to_unused)

2007-10-03  Doug Kwan  <dougkwan@google.com>
Richard Guenther  <rguenther@suse.de>

PR debug/31899
* dwarf2out.c (reference_to_unused): Disable sanity checking,
be conservative instead.

* g++.dg/debug/using3.C: New testcase.

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

16 years agore PR fortran/26682 (gfortran fails with -fwhole-program optimization)
Francois-Xavier Coudert [Wed, 3 Oct 2007 09:46:46 +0000 (09:46 +0000)]
re PR fortran/26682 (gfortran fails with -fwhole-program optimization)

PR fortran/26682

* options.c (gfc_post_options): Issue an error when
-fwhole-program is used.

* doc/invoke.texi (-fwhole-program): Document that Fortran
doesn't support this option.

From-SVN: r128977

16 years agorevert accidential change in revision 128957.
Kenneth Zadeck [Wed, 3 Oct 2007 01:31:47 +0000 (01:31 +0000)]
revert accidential change in revision 128957.

From-SVN: r128976

16 years agore PR libfortran/33253 (namelist: reading back a string with apostrophe)
Jerry DeLisle [Wed, 3 Oct 2007 00:39:58 +0000 (00:39 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)

2007-10-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33253
* gfortran.dg/namelist_38.f90: New test.
* gfortran.dg/namelist_39.f90: New test.

From-SVN: r128975

16 years agore PR libstdc++/33613 (compilation inconsistency upper_bound vs lower_bound with...
Paolo Carlini [Wed, 3 Oct 2007 00:34:40 +0000 (00:34 +0000)]
re PR libstdc++/33613 (compilation inconsistency upper_bound vs lower_bound with -D_GLIBCXX_DEBUG)

2007-10-03  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/33613
* include/debug/functions.h (__check_partitioned): Rename to...
(__check_partioned_lower): ... this.
(__check_partioned_upper): Add.
* include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
(__glibcxx_check_partitioned_lower): ... this, adjust.
(__glibcxx_check_partitioned_upper): Add.
* include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
(__glibcxx_requires_partitioned_lower): ... this, adjust.
(__glibcxx_requires_partitioned_upper): Add.
* include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
binary search): Use the above.
* testsuite/25_algorithms/lower_bound/33613.cc: New.
* testsuite/25_algorithms/upper_bound/33613.cc: Likewise.

From-SVN: r128974

16 years agore PR libfortran/33253 (namelist: reading back a string with apostrophe)
Jerry DeLisle [Wed, 3 Oct 2007 00:33:09 +0000 (00:33 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)

2007-10-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33253
* io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
        and quote value in check of first character in string.

From-SVN: r128973

16 years agorevert: no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
Kazu Hirata [Wed, 3 Oct 2007 00:25:22 +0000 (00:25 +0000)]
revert: no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

config/
Revert:
2007-10-02  Richard Sandiford  <richard@codesourcery.com>
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

libstdc++/
Revert:
2007-10-02  Richard Sandiford  <richard@codesourcery.com>
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables.
* configure: Regenerate.

From-SVN: r128972

16 years agoDaily bump.
GCC Administrator [Wed, 3 Oct 2007 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128970

16 years agore PR libfortran/33469 (Default formats for real input are not precise enough)
Francois-Xavier Coudert [Tue, 2 Oct 2007 23:27:51 +0000 (23:27 +0000)]
re PR libfortran/33469 (Default formats for real input are not precise enough)

PR libfortran/33469

* io/write.c (write_real): Widen the default formats.

* gfortran.dg/default_format_1.f90: New test.
* gfortran.dg/default_format_2.f90: New test.
* gfortran.dg/namelist_print_1.f: Adjust expected output.
* gfortran.dg/real_const_3.f90: Adjust expected output.

From-SVN: r128967

16 years agomips.exp (setup_mips_tests): Set mips_abi to the default ABI.
Richard Sandiford [Tue, 2 Oct 2007 20:56:47 +0000 (20:56 +0000)]
mips.exp (setup_mips_tests): Set mips_abi to the default ABI.

gcc/testsuite/
* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_abi to the
default ABI.  Split mips_forced_abi into mips_forced_abi and
mips_forced_regs.
(is_gp32_flag): Return true for -mabi=32.
(is_gp64_flag): New function.  Handle 64-bit -mabi options.
(dg-mips-options): Use is_gp64_flag instead of checking specifically
for -mgp64.  Update after the mips_forced_abi split.  Handle -mabi=*.
Don't force an ABI for -mgp32 or -mfp32 if the flags contain -mabi=*.
* gcc.target/mips/pr33256.c: Remove -mips3 requirement.
* gcc.target/mips/save-restore-1.c: Use -mabi=32 instead of -mgp32.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.

From-SVN: r128966

16 years agore PR middle-end/33617 (ICE for nonconstant callee-copied constructor arguments)
Richard Sandiford [Tue, 2 Oct 2007 20:50:46 +0000 (20:50 +0000)]
re PR middle-end/33617 (ICE for nonconstant callee-copied constructor arguments)

gcc/
PR middle-end/33617
* expr.c (expand_expr_addr_expr_1): Pass CONSTRUCTORs to
expand_expr.

gcc/testsuite/
PR middle-end/33617
* gcc.c-torture/compile/pr33617.c: New test.

From-SVN: r128965

16 years agomips.md (sync_compare_and_swap<mode>): Handle compare against constant zero.
David Daney [Tue, 2 Oct 2007 20:15:34 +0000 (20:15 +0000)]
mips.md (sync_compare_and_swap<mode>): Handle compare against constant zero.

* config/mips/mips.md (sync_compare_and_swap<mode>): Handle compare
against constant zero.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP):  Handle constant zero
operand.

From-SVN: r128963

16 years agostabs-attrib-vect-darwin.c: Change options to use -gstabs+ for extended options.
Andreas Tobler [Tue, 2 Oct 2007 19:56:50 +0000 (19:56 +0000)]
stabs-attrib-vect-darwin.c: Change options to use -gstabs+ for extended options.

2007-10-02  Andreas Tobler  <a.tobler@schweiz.org>

* gcc.target/powerpc/stabs-attrib-vect-darwin.c: Change options to use
-gstabs+ for extended options.

From-SVN: r128962

16 years agono-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
Richard Sandiford [Tue, 2 Oct 2007 17:25:18 +0000 (17:25 +0000)]
no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

config/
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables.
* configure: Regenerate.

From-SVN: r128959

16 years ago2.cc: Split into...
Benjamin Kosnik [Tue, 2 Oct 2007 16:07:01 +0000 (16:07 +0000)]
2.cc: Split into...

2007-10-02  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/25_algorithms/binary_search/2.cc: Split into...
* testsuite/25_algorithms/upper_bound/2.cc: ... this.
* testsuite/25_algorithms/lower_bound/2.cc: ... this.
* testsuite/25_algorithms/equal_range/2.cc: ... and this.
* testsuite/25_algorithms/sort/vectorbool.cc: Add from
libstdcxx_so_7-branch.

From-SVN: r128958

16 years agora-conflict.c: New file.
Kenneth Zadeck [Tue, 2 Oct 2007 13:10:07 +0000 (13:10 +0000)]
ra-conflict.c: New file.

2007-09-02  Kenneth Zadeck <zadeck@naturalbridge.com>

* ra-conflict.c: New file.
* ra.h: New file.
* reload.c (push_reload, find_dummy_reload): Change DF_RA_LIVE
usage to DF_LIVE usage.
* rtlanal.c (subreg_nregs_with_regno): New function.
* df-scan.c (df_def_record_1, df_uses_record): Add code to set
DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, and DF_REF_SUBREG flags.
(df_has_eh_preds): Removed.
(df_bb_refs_collect, df_bb_refs_collect, df_bb_refs_collect,
df_exit_block_uses_collect): Changed call from df_has_eh_preds to
bb_has_eh_pred.
* global.c (allocno, max_allocno, conflicts, allocno_row_words,
reg_allocno, EXECUTE_IF_SET_IN_ALLOCNO_SET): Moved to ra.h
(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Moved to ra-conflicts.c.
(regs_set, record_one_conflict, record_conflicts, mark_reg_store,
mark_reg_clobber, mark_reg_conflicts, mark_reg_death): Deleted.
(global_alloc): Turn off rescanning insns after call to
global_conflicts and added call to set_preferences.
(global_conflicts): Moved to ra-alloc.c.
(set_preferences_1, set_preferences): New function.
(mirror_conflicts): Changed types for various variables.
(mark_elimination): Change DF_RA_LIVE
usage to DF_LIVE usage.
(build_insn_chain): Rewritten from scratch and made local.
(print_insn_chain, print_insn_chains): New functions.
(dump_conflicts): Do not print conflicts for fixed_regs.
(rest_of_handle_global_alloc): Turn off insn rescanning.
* hard-reg-set.h: Fixed comment.
* local-alloc.c (update_equiv_regs): Change DF_RA_LIVE
usage to DF_LIVE usage and delete refs to TOP sets.
(block_alloc): Mark regs as live if they are in the artificial
defs at top of block.
(find_stack_regs): New function.
(rest_of_handle_local_alloc): Changed urec problem to live
problem and do not turn off df rescanning.
* df.h (DF_UREC, DF_UREC_BB_INFO, DF_LIVE_TOP, DF_RA_LIVE_IN,
DF_RA_LIVE_TOP, DF_RA_LIVE_OUT, df_urec_bb_info, df_urec,
df_urec_add_problem, df_urec_get_bb_info, df_has_eh_preds): Removed.
(DF_CHAIN, DF_NOTE, DF_CHAIN): Renumbered.
(DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, DF_REF_SUBREG): New
fields in df_ref_flags.  The rest have been renumbered.
* init-regs.c (initialize_uninitialized_regs): Enhanced debugging
at -O1.
* rtl.h (subreg_nregs_with_regno): New function.
* df-problems.c: (df_get_live_out, df_get_live_in,
df_get_live_top): Removed reference to DF_RA_LIVE.
(df_lr_reset, df_lr_transfer_function, df_live_free_bb_info,
df_live_alloc, df_live_reset, df_live_local_finalize,
df_live_free): Make top set only if different from in set.
(df_lr_top_dump, df_live_top_dump): Only print top set if
different from in set.
(df_lr_bb_local_compute): Removed unnecessary check.
(df_urec_problem_data, df_urec_set_bb_info, df_urec_free_bb_info,
df_urec_alloc, df_urec_mark_reg_change, earlyclobber_regclass,
df_urec_check_earlyclobber, df_urec_mark_reg_use_for_earlyclobber,
df_urec_mark_reg_use_for_earlyclobber_1, df_urec_bb_local_compute,
df_urec_local_compute, df_urec_init, df_urec_local_finalize,
df_urec_confluence_n, df_urec_transfer_function, df_urec_free,
df_urec_top_dump, df_urec_bottom_dump, problem_UREC,
df_urec_add_problem): Removed.
(df_simulate_fixup_sets): Changed call from df_has_eh_preds to
bb_has_eh_pred.
* Makefile.in (ra-conflict.o, ra.h): New dependencies.
* basic_block.h (bb_has_abnormal_pred): New function.
* reload1.c (compute_use_by_pseudos): Change DF_RA_LIVE
usage to DF_LIVE usage.

From-SVN: r128957

16 years agoFix committed Changelog
Revital Eres [Tue, 2 Oct 2007 12:47:13 +0000 (12:47 +0000)]
Fix committed Changelog

From-SVN: r128956

16 years agore PR fortran/33542 (gfortran does not detect ambigious specific names if they are...
Paul Thomas [Tue, 2 Oct 2007 11:45:11 +0000 (11:45 +0000)]
re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33542
* interface.c (check_interface1): Specific procedures are
always ambiguous if they have the same name.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: New test.

From-SVN: r128954

16 years agoAdd vec_init support for 750CL paired vectors and fix movv2sf_paired
Revital Eres [Tue, 2 Oct 2007 09:22:17 +0000 (09:22 +0000)]
Add vec_init support for 750CL paired vectors and fix movv2sf_paired

From-SVN: r128952

16 years agore PR fortran/33566 (fortran : wrong rank of derived type parameters array components)
Paul Thomas [Tue, 2 Oct 2007 08:12:11 +0000 (08:12 +0000)]
re PR fortran/33566 (fortran : wrong rank of derived type parameters array components)

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33566
* primary.c (gfc_match_rvalue): Make all expressions with array
references to structure parameters into variable expressions.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33566
* gfortran.dg/derived_comp_array_ref_5.f90: New test.

From-SVN: r128951

16 years agore PR fortran/33554 (Seg.fault: Default initialization of derived type uses uninitial...
Paul Thomas [Tue, 2 Oct 2007 08:03:07 +0000 (08:03 +0000)]
re PR fortran/33554 (Seg.fault: Default initialization of derived type uses uninitialized values)

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33554
* trans-decl.c (init_intent_out_dt): New function.
(gfc_trans_deferred_vars): Remove the code for default
initialization of INTENT(OUT) derived types and put it
in the new function.  Call it earlier than before, so
that array offsets and lower bounds are available.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33554
* gfortran.dg/intent_out_2.f90: New test.

From-SVN: r128950

16 years agore PR fortran/33550 (ICE (segfault) when USEing ambiguous symbols)
Paul Thomas [Tue, 2 Oct 2007 07:53:05 +0000 (07:53 +0000)]
re PR fortran/33550 (ICE (segfault) when USEing ambiguous symbols)

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33550
* decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
the name is a reference to an ambiguous symbol.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33550
* gfortran.dg/ambiguous_reference_1.f90: New test.

From-SVN: r128949

16 years agore PR fortran/31154 (IMPORT fails for "<imported symbol> FUNCTION (...)" kind of...
Paul Thomas [Tue, 2 Oct 2007 07:17:01 +0000 (07:17 +0000)]
re PR fortran/31154 (IMPORT fails for  "<imported symbol> FUNCTION (...)" kind of procedures)

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31154
PR fortran/31229
PR fortran/33334
* decl.c : Declare gfc_function_kind_locs and
gfc_function_type_locus.
(gfc_match_kind_spec): Add second argument kind_expr_only.
Store locus before trying to match the expression. If the
current state corresponds to a function declaration and there
is no match to the expression, read to the parenthesis, return
kind = -1, dump the expression and return.
(gfc_match_type_spec): Renamed from match_type_spec and all
references changed.  If an interface or an external function,
store the locus, set kind = -1 and return.  Otherwise, if kind
is already = -1, use gfc_find_symbol to try to find a use
associated or imported type.
match.h : Prototype for gfc_match_type_spec.
* parse.c (match_deferred_characteristics): New function.
(parse_spec): If in a function, statement is USE or IMPORT
or DERIVED_DECL and the function kind=-1, call
match_deferred_characteristics.  If kind=-1 at the end of the
specification expressions, this is an error.
* parse.h : Declare external gfc_function_kind_locs and
gfc_function_type_locus.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31154
PR fortran/31229
PR fortran/33334
* gfortran.dg/function_kinds_1.f90: New test.
* gfortran.dg/function_kinds_2.f90: New test.
* gfortran.dg/derived_function_interface_1.f90: Correct illegal
use association into interfaces.

From-SVN: r128948

16 years agore PR testsuite/31828 (FAIL: gcc.dg/float-range-[3-5].c (test for excess errors))
John David Anglin [Tue, 2 Oct 2007 02:17:50 +0000 (02:17 +0000)]
re PR testsuite/31828 (FAIL: gcc.dg/float-range-[3-5].c (test for excess errors))

PR testsuite/31828
gcc.dg/float-range-3.c (INFINITY): Define if not defined.
(overflow): Use INFINITY, not FP_INFINITE.
gcc.dg/float-range-4.c: Likewise.
gcc.dg/float-range-5.c: Likewise.

From-SVN: r128947

16 years agoRevert patches that should have been installed in the vta branch only.
Alexandre Oliva [Tue, 2 Oct 2007 01:28:06 +0000 (01:28 +0000)]
Revert patches that should have been installed in the vta branch only.

From-SVN: r128933

16 years agotree-ssa-live.c (remove_unused_scope_block_p): Don't change generated code depending...
Alexandre Oliva [Tue, 2 Oct 2007 01:12:19 +0000 (01:12 +0000)]
tree-ssa-live.c (remove_unused_scope_block_p): Don't change generated code depending on -g.

* tree-ssa-live.c (remove_unused_scope_block_p): Don't change
generated code depending on -g.  Reverts part of 2007-07-26's
patch.

From-SVN: r128932

16 years ago* ChangeLog.vta: New.
Alexandre Oliva [Tue, 2 Oct 2007 01:10:18 +0000 (01:10 +0000)]
* ChangeLog.vta: New.

From-SVN: r128931

16 years agoDaily bump.
GCC Administrator [Tue, 2 Oct 2007 00:17:00 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128929

16 years agovalarray-inst.cc, [...]: Fix comment typos.
Jonathan Wakely [Mon, 1 Oct 2007 20:49:39 +0000 (20:49 +0000)]
valarray-inst.cc, [...]: Fix comment typos.

* src/valarray-inst.cc, include/ext/atomicity.h,
include/ext/concurrence.h, include/bits/basic_string.h,
include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.

From-SVN: r128915

16 years agotest.html, [...]: Update docs to refer to Subversion not CVS.
Jonathan Wakely [Mon, 1 Oct 2007 20:39:08 +0000 (20:39 +0000)]
test.html, [...]: Update docs to refer to Subversion not CVS.

* docs/html/test.html, docs/html/ext/mt_allocator.html,
docs/html/ext/tr1.html, docs/html/17_intro/contribute.html,
docs/html/documentation.html, docs/html/20_util/allocator.html:
Update docs to refer to Subversion not CVS. Fix markup.

From-SVN: r128914

16 years agotree-ssa-sink.c (sink_code_in_bb): Don't stop sinking after sinking the last stmt...
Alexandre Oliva [Mon, 1 Oct 2007 20:39:03 +0000 (20:39 +0000)]
tree-ssa-sink.c (sink_code_in_bb): Don't stop sinking after sinking the last stmt in a BB.

* tree-ssa-sink.c (sink_code_in_bb): Don't stop sinking after
sinking the last stmt in a BB.

From-SVN: r128913

16 years agocompare-debug: Avoid spurious errors when .stripped files exist.
Alexandre Oliva [Mon, 1 Oct 2007 20:27:22 +0000 (20:27 +0000)]
compare-debug: Avoid spurious errors when .stripped files exist.

* compare-debug: Avoid spurious errors when .stripped files
exist.

From-SVN: r128911

16 years agocheck_jni_methods.sh: Don't depend on diff -b ignoring a single trailing whitespace.
Alexandre Oliva [Mon, 1 Oct 2007 19:56:46 +0000 (19:56 +0000)]
check_jni_methods.sh: Don't depend on diff -b ignoring a single trailing whitespace.

* scripts/check_jni_methods.sh: Don't depend on diff -b ignoring
a single trailing whitespace.

From-SVN: r128910

16 years ago* docs/html/Makefile: Follow up to libstdc++/14991, remove target.
Jonathan Wakely [Mon, 1 Oct 2007 19:55:41 +0000 (19:55 +0000)]
* docs/html/Makefile: Follow up to libstdc++/14991, remove target.

From-SVN: r128909

16 years agore PR middle-end/22156 (bit-field copying regressed)
Alexandre Oliva [Mon, 1 Oct 2007 16:35:55 +0000 (16:35 +0000)]
re PR middle-end/22156 (bit-field copying regressed)

PR middle-end/22156
* tree-sra.c (struct sra_elt): Add in_bitfld_block.
(sra_hash_tree): Handle BIT_FIELD_REFs.
(sra_elt_hash): Don't hash bitfld blocks.
(sra_elt_eq): Skip them in parent compares as well.  Handle
BIT_FIELD_REFs.
(build_element_name_1): Handle BIT_FIELD_REFs.
(instantiate_element): Propagate nowarn from parents.  Create
BIT_FIELD_REF for variables that are widened by scalarization.
Gimple-zero-initialize all bit-field variables that are not
part of parameters that are going to be scalarized on entry.
(instantiate_missing_elements_1): Return the sra_elt.
(canon_type_for_field): New.
(try_instantiate_multiple_fields): New.  Infer widest possible
access mode from decl or member type, but clip it at word
size, and only widen it if a field crosses an alignment
boundary.
(instantiate_missing_elements): Use them.
(generate_one_element_ref): Handle BIT_FIELD_REFs.
(scalar_bitfield_p): New.
(sra_build_assignment): Optimize assignments from scalarizable
BIT_FIELD_REFs.  Use BITS_BIG_ENDIAN to determine shift
counts.
(REPLDUP): New.
(sra_build_bf_assignment): New.  Optimize assignments to
scalarizable BIT_FIELD_REFs.
(sra_build_elt_assignment): New.  Optimize BIT_FIELD_REF
assignments to full variables.
(generate_copy_inout): Use the new macros and functions.
(generate_element_copy): Likewise.  Handle bitfld differences.
(generate_element_zero): Don't recurse for blocks.  Use
sra_build_elt_assignment.
(generate_one_element_init): Take elt instead of var.  Use
sra_build_elt_assignment.
(generate_element_init_1): Adjust.
(bitfield_overlap_info): New struct.
(bitfield_overlaps_p): New.
(sra_explode_bitfield_assignment): New.  Adjust widened
variables to account for endianness.
(sra_sync_for_bitfield_assignment): New.
(scalarize_use): Re-expand assignment to/from scalarized
BIT_FIELD_REFs.  Explode or sync needed members for
BIT_FIELD_REFs accesses or assignments.  Use REPLDUP.
(scalarize_copy): Use REPLDUP.
(scalarize_ldst): Move assert before dereference.  Adjust EH
handling.
(dump_sra_elt_name): Handle BIT_FIELD_REFs.

From-SVN: r128908

16 years agosimplify-rtx.c (comparison_result, [...]): Rename CR_* constants to CMP_*.
Paolo Bonzini [Mon, 1 Oct 2007 15:14:29 +0000 (15:14 +0000)]
simplify-rtx.c (comparison_result, [...]): Rename CR_* constants to CMP_*.

2007-10-01  Paolo Bonzini  <bonzini@gnu.org>

* simplify-rtx.c (comparison_result, simplify_relational_operation_1):
Rename CR_* constants to CMP_*.  Fix spacing.

From-SVN: r128906

16 years agoFix test to work with 16-bit targets
Nick Clifton [Mon, 1 Oct 2007 09:43:41 +0000 (09:43 +0000)]
Fix test to work with 16-bit targets

From-SVN: r128903

16 years agoMakefile.tpl (AR_FOR_BUILD, [...]): Use autoconf substitutions.
Paolo Bonzini [Mon, 1 Oct 2007 07:15:42 +0000 (07:15 +0000)]
Makefile.tpl (AR_FOR_BUILD, [...]): Use autoconf substitutions.

2007-10-01  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.tpl (AR_FOR_BUILD, AS_FOR_BUILD, CXX_FOR_BUILD,
DLLTOOL_FOR_BUILD, GCJ_FOR_BUILD, GFORTRAN_FOR_BUILD,
LDFLAGS_FOR_BUILD, LD_FOR_BUILD, NM_FOR_BUILD, RANLIB_FOR_BUILD,
WINDMC_FOR_BUILD, WINDRES_FOR_BUILD): Use autoconf substitutions.
* configure.ac: Default them to host tools for $host = $build.
Subst them.

* configure: Regenerate.
* Makefile.in: Regenerate.

From-SVN: r128902