platform/upstream/gcc.git
18 years agoDaily bump.
GCC Administrator [Tue, 24 Jan 2006 00:17:24 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110157

18 years agofix-header.c (read_scan_file): Add new parameter imultilib when calling register_incl...
Adam Nemet [Tue, 24 Jan 2006 00:02:18 +0000 (00:02 +0000)]
fix-header.c (read_scan_file): Add new parameter imultilib when calling register_include_chains.

        * fix-header.c (read_scan_file): Add new parameter imultilib when
calling register_include_chains.

From-SVN: r110150

18 years agore PR testsuite/25891 (gomp tests run on non-libgomp (non-thread) ports, failing...
Hans-Peter Nilsson [Mon, 23 Jan 2006 23:44:16 +0000 (23:44 +0000)]
re PR testsuite/25891 (gomp tests run on non-libgomp (non-thread) ports, failing all)

PR testsuite/25891
* lib/target-supports.exp (check_effective_target_fopenmp): New proc.
* gcc.dg/gomp/gomp.exp: Return without testing anything if
check_effective_target_fopenmp returns 0.

From-SVN: r110148

18 years agore PR preprocessor/25717 (-dD does not list all defined macros (in particular, __STDC__))
Jakub Jelinek [Mon, 23 Jan 2006 21:50:15 +0000 (22:50 +0100)]
re PR preprocessor/25717 (-dD does not list all defined macros (in particular, __STDC__))

PR preprocessor/25717
* init.c (cpp_init_builtins): If __STDC__ will not change value
between system headers and other sources, define it as a normal
macro rather than a builtin.
* macro.c (_cpp_builtin_macro_text) <case BT_STDC>: Only check
cpp_in_system_header condition.

From-SVN: r110144

18 years agoomp-low.c: Update documentation.
Diego Novillo [Mon, 23 Jan 2006 20:03:24 +0000 (15:03 -0500)]
omp-low.c: Update documentation.

* omp-low.c: Update documentation.

From-SVN: r110143

18 years agoClass.h (_Jv_FindInterpreterMethod): Add new declaration.
Keith Seitz [Mon, 23 Jan 2006 18:44:43 +0000 (18:44 +0000)]
Class.h (_Jv_FindInterpreterMethod): Add new declaration.

        * java/lang/Class.h (_Jv_FindInterpreterMethod): Add new declaration.
        * java/lang/natClass.cc (_Jv_FindInterpreterMethod): New function.

From-SVN: r110142

18 years agoproc.c: Conditional include of sys/loadavg.h for Solaris.
Andreas Tobler [Mon, 23 Jan 2006 18:28:51 +0000 (19:28 +0100)]
proc.c: Conditional include of sys/loadavg.h for Solaris.

2006-01-23  Andreas Tobler  <a.tobler@schweiz.ch>

* config/posix/proc.c: Conditional include of sys/loadavg.h for
Solaris.
* configure.ac: Add check for loadavg.h.
(link_gomp): Adjust comment.
* configure: Regenerate.
* config.h.in: Regenerate.

From-SVN: r110141

18 years agocp-tree.h (do_poplevel): Remove prototype.
Volker Reichelt [Mon, 23 Jan 2006 18:26:01 +0000 (18:26 +0000)]
cp-tree.h (do_poplevel): Remove prototype.

* cp-tree.h (do_poplevel): Remove prototype.
* semantics.c (do_poplevel): Add prototype.  Make static.

* cp-tree.h (original_type): Remove prototype.
* typeck.c (original_type): Make static.

* cp-tree.h (declare_global_var): Remove prototype.
* decl.c (declare_global_var): Make static.

* cp-tree.h (implicitly_declare_fn): Remove prototype.
* method.c (implicitly_declare_fn): Make static.

* cp-tree.h (fold_decl_constant_value): Remove prototype.
* pt.c (fold_decl_constant_value): Make static.

From-SVN: r110140

18 years agoFixed Changelog from last commit. to be:
David Daney [Mon, 23 Jan 2006 18:23:16 +0000 (18:23 +0000)]
Fixed Changelog from last commit. to be:

* configure.host (disable_dladdr): Remove variable and its
documentation.
* configure.ac: Do not test for disable_dladdr.
* configure: Regenerate.
* include/config.h.in: Regenerate.

From-SVN: r110139

18 years agocp-tree.h (build_x_delete): Remove prototype.
Volker Reichelt [Mon, 23 Jan 2006 18:22:29 +0000 (18:22 +0000)]
cp-tree.h (build_x_delete): Remove prototype.

* cp-tree.h (build_x_delete): Remove prototype.
* init.c (build_vec_delete_1): Call build_op_delete_call directly
and not via build_x_delete.
(build_x_delete): Remove.

From-SVN: r110138

18 years agoconfigure.host (disable_dladdr): Remove variable and its documentation.
David Daney [Mon, 23 Jan 2006 18:21:07 +0000 (18:21 +0000)]
configure.host (disable_dladdr): Remove variable and its documentation.

* configure.host (disable_dladdr): Remove variable and its
documentation.
* configure.ac: Do not test for disable_dladdr.
* configure: Regenerate.

From-SVN: r110137

18 years agocp-tree.h (get_vtt_name): Remove prototype.
Volker Reichelt [Mon, 23 Jan 2006 18:20:17 +0000 (18:20 +0000)]
cp-tree.h (get_vtt_name): Remove prototype.

* cp-tree.h (get_vtt_name): Remove prototype.
* class.c (get_vtt_name): Remove.
(build_vtt): Call mangle_vtt_for_type instead of get_vtt_name.

From-SVN: r110136

18 years agore PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
Eric Botcazou [Mon, 23 Jan 2006 17:21:18 +0000 (17:21 +0000)]
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)

PR ada/20548
* ada/acats/norun.lst: Add c52103x, c52104x and c52104y.
* ada/acats/stackcheck.lst: New file, add c52103x, c52104x and c52104y.
* ada/acats/run_all.sh: Pass -fstack-check for tests in stackcheck.lst.

From-SVN: r110131

18 years agore PR tree-optimization/25315 (testsuite failure:27_io/basic_ostream/inserters_charac...
Andrew Pinski [Mon, 23 Jan 2006 15:19:29 +0000 (15:19 +0000)]
re PR tree-optimization/25315 (testsuite failure:27_io/basic_ostream/inserters_character/char/9555-oc.cc wchar_t/9555-oc.cc exec)

2006-01-23  Andrew Pinski  <pinskia@physics.uc.edu>
            Daniel Berlin  <dberlin@dberlin.org>

        PR tree-opt/25315
        PR tree-opt/25857
        * tree-ssa-pre.c (insert_extra_phis): If an incomming edge is abnormal
        return from the function.

2006-01-23  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25857
        * g++.dg/opt/pr25857.C: New test.

Co-Authored-By: Daniel Berlin <dberlin@dberlin.org>
From-SVN: r110127

18 years agor110130@banpei: zack | 2006-01-22 14:52:43 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:16:19 +0000 (15:16 +0000)]
r110130@banpei: zack | 2006-01-22 14:52:43 -0800

 r110130@banpei:  zack | 2006-01-22 14:52:43 -0800
  * rtl.def (match_code): Add second argument.
  * genpreds.c (write_extract_subexp): New function.
  (write_match_code): Add path argument.  Use write_extract_subexp.
  (write_predicate_expr): Pass path to write_match_code.
  (mark_mode_tests): MATCH_CODE applied to a subexpression does
  not perform a mode test.
  * genrecog.c (compute_predicate_codes): MATCH_CODE applied to
  a subexpression does not constrain the top-level code set.
  * read-rtl.c (read_rtx_variadic): New function.
  (read_rtx_1): Use it; allow AND and IOR to be variadic.
  * doc/md.texi: Document new notation.
  * config/i386/predicates.md (cmpsi_operand_1): Fold into ...
  (cmpsi_operand): ... here, using new notation.

From-SVN: r110126

18 years agor110129@banpei: zack | 2006-01-22 14:51:57 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:16:10 +0000 (15:16 +0000)]
r110129@banpei: zack | 2006-01-22 14:51:57 -0800

 r110129@banpei:  zack | 2006-01-22 14:51:57 -0800
  * varray.c: Remove GENERATOR_FILE #ifdefs.

From-SVN: r110125

18 years agor110128@banpei: zack | 2006-01-22 14:50:42 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:16:00 +0000 (15:16 +0000)]
r110128@banpei: zack | 2006-01-22 14:50:42 -0800

 r110128@banpei:  zack | 2006-01-22 14:50:42 -0800
  * genautomata.c (output_reserved_units_table): Emit nothing if
  description->query_units_num is zero.  Remove extra blank line.
  (output_cpu_unit_reservation_p): Short circuit
  if description->query_units_num is zero.

From-SVN: r110124

18 years agor110127@banpei: zack | 2006-01-22 14:49:27 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:15:52 +0000 (15:15 +0000)]
r110127@banpei: zack | 2006-01-22 14:49:27 -0800

 r110127@banpei:  zack | 2006-01-22 14:49:27 -0800
  * genattrtab.c: Don't include genattrtab.h.  Define ATTR_NONE
  and ATTR_SPECIAL (from genattrtab.h).  Don't define num_dfa_decls
  nor any of the random handful of variables that used to be necessary
  when this program was linked with rtlanal.o.  Prune set of forward
  function declarations.
  (struct attr_desc): Remove static_p field.
  (hash_obstack, temp_obstack, attr_hash_table, attr_printf)
  (check_attr_test, make_internal_attr, make_numeric_value): Make static.
  (attr_string): Do not read the character one past the length of
  the string.
  (write_attr_get, find_attr, make_internal_attr): Don't touch static_p.
  (struct insn_reserv, all_insn_reservs, last_insn_reserv_p)
  (n_insn_reservs, gen_insn_reserv, struct bypass_list, all_bypasses)
  (n_bypasses, gen_bypass_1, gen_bypass, process_bypasses)
  (make_automaton_attrs): New.
  (main): Do not call into genautomata.  Call local gen_bypass
  and gen_insn_reserv as appropriate.  Call make_automaton_attrs.
  Remove special case for insn_alts.
  * genautomata.c: Include gensupport.h; not genattrtab.h nor
  varray.h (leftover from previous change).  Prune set of forward
  function declarations.  Remove state_alts fields from all
  structures.  Remove state_alts_table from struct automaton.
  Make everything except main static.  Do not maintain num_dfa_decls.
  Do not maintain state_alts fields of various structures.
  (process_decls): Don't validate condexp for dm_insn_reserv decls.
  (add_arc): Remove state_alts argument.  All callers updated.
  (output_reserved_units_table): Emit #ifdef here...
  (output_tables): ...not here.  Don't generate state_alts tables.
  (expand_automata): Don't generate attributes.
  (write_automata): Don't generate state_alts functions.
  (main): New function.
  (it_is_empty_reserv_sets, output_state_alts_full_vect_name)
  (output_state_alts_comb_vect_name, output_state_alts_check_vect_name)
  (AUTOMATON_STATE_ALTS_MACRO_NAME, INTERNAL_STATE_ALTS_FUNC_NAME)
  (STATE_ALTS_FUNC_NAME, INSN_DEFAULT_LATENCY_FUNC_NAME)
  (BYPASS_P_FUNC_NAME, output_state_alts_table)
  (output_automata_list_state_alts_code, output_internal_state_alts_func)
  (output_state_alts_func, make_insn_alts_attr, make_bypass_attr)
  (make_internal_dfa_insn_code_attr, make_default_insn_latency_attr):
  Delete.
  * genattr.c: Declare internal_dfa_insn_code in insn-attr.h.
  * genattrtab.h: Delete file.
  * Makefile.in (OBJS-common): Add insn-automata.o.
  (insn-automata.o): New rule.
  (simple_generated_c): Add insn-automata.c.
  (build/genattrtab.o, build/genautomata.o): Update dependencies.
  (genprogmd): Add automata.
  (build/genattrtab): Needs no extra objects nor libraries.
  (build/genautomata): Needs build/vec.o and -lm.

From-SVN: r110123

18 years agor110126@banpei: zack | 2006-01-22 14:47:42 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:15:42 +0000 (15:15 +0000)]
r110126@banpei: zack | 2006-01-22 14:47:42 -0800

 r110126@banpei:  zack | 2006-01-22 14:47:42 -0800
  * genautomata.c (process_state_longest_path, max_dfa_issue_rate)
  (output_dfa_max_issue_rate, locked_states_num): Delete.
  (struct automaton): Add locked_states field.
  (output_dead_lock_vect): Save number of locked states in
  automaton->locked_states.  If it is zero, don't print anything.
  (output_max_insn_queue_index_def): Define max_insn_queue_index const.
  (output_internal_dead_lock_func): Only test the dead_lock_vect
  for automata that have locked states.
  (output_statistics): Always print the number of locked states for
  each automaton.  Calculate total number of locked states here.
  (write_automata): Don't call output_dfa_max_issue_rate.
  * genattrtab.c: Define length_unit_log as a const variable.
  * genattr.c: Don't emit MAX_DFA_ISSUE_RATE.  Declare
  max_insn_queue_index const.
  * final.c (length_unit_log): Declare const.
  * doc/tm.texi: Remove all references to MAX_DFA_ISSUE_RATE.

From-SVN: r110122

18 years agor110125@banpei: zack | 2006-01-22 14:46:46 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:15:34 +0000 (15:15 +0000)]
r110125@banpei: zack | 2006-01-22 14:46:46 -0800

 r110125@banpei:  zack | 2006-01-22 14:46:46 -0800
  * genautomata.c:  Include vec.h, not varray.h.
  Delete vla_ptr_t, all of the VLA_PTR_ macros, and all of the
  VLA_HWINT_ macros.  Change vla_hwint_t to a typedef for
  VEC(vect_el_t,heap) *.  Convert all uses of VLA_* macros to
  VEC_* macros operating on appropriately typed vectors, or to
  malloced arrays when the size is known in advance.  Const-ify
  many char* variables and function arguments.  No functional changes.
  * Makefile.in (build/varray.o): Delete rule.
  (build/genattrtab): Depend on build/vec.o instead of build/varray.o.
  (build/genautomata.o): Depend on vec.h instead of $(VARRAY_H).

From-SVN: r110121

18 years agor110124@banpei: zack | 2006-01-22 14:45:55 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:15:12 +0000 (15:15 +0000)]
r110124@banpei: zack | 2006-01-22 14:45:55 -0800

 r110124@banpei:  zack | 2006-01-22 14:45:55 -0800
  * gensupport.c: Define get_insn_name and record_insn_name here.
  (read_md_rtx): Call record_insn_name as appropriate.
  * genattr.c, genattrtab.c, gencodes.c, genconfig.c, genemit.c
  * genextract.c, genflags.c, genopinit.c, genoutput.c, genpeep.c
  * genpreds.c, genrecog.c: Don't define get_insn_name nor
  record_insn_name.
  * Makefile.in (BUILD_SUPPORT, BUILD_PRINT): Fold into BUILD_RTL.
  (BUILD_VARRAY): Delete.
  (genprognormal): Rename genprogmd.  Fold in all programs from
  genprognoprint; also attrtab.
  (build/genattrtab): Just mention genautomata.o and varray.o.
  Reorganize a bit, add comments to make the categories clearer.

From-SVN: r110120

18 years agor110123@banpei: zack | 2006-01-22 14:44:34 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:15:05 +0000 (15:15 +0000)]
r110123@banpei: zack | 2006-01-22 14:44:34 -0800

 r110123@banpei:  zack | 2006-01-22 14:44:34 -0800
  * genconditions.c (condition_table, add_condition): Delete.
  (write_conditions): Don't emit n_insn_conditions nor
  insn_elision_unavailable.  Issue the gcc version #ifdef here,
  inside the table, with no #else clause ...
  (write_header): ...not here.
  (write_writer): New function.
  (main): Don't initialize condition_table.  Use add_c_test.
  Call write_writer.
  * gensupport.c (init_md_reader_args_cb): Handle multiple input
  files on the command line.
  (maybe_eval_c_test): Don't check insn_elision_unavailable.
  Return -1 if there is no entry in the table, don't abort.
  (add_c_test, traverse_c_tests): New functions.
  * gensupport.h (insn_elision_unavailable, insn_conditions)
  (n_insn_conditions): Delete declarations.
  (add_c_test, traverse_c_tests): Declare.
  * read-rtl.c: Include gensupport.h.
  (read_conditions): New function.
  (read_rtx): If read_rtx_1 returns 0, treat as EOF.
  (read_rtx_1): If we get EOF when we were looking for an initial
  open paren, return 0.  Call read_conditions when appropriate.
  * Makefile.in: Kill BUILD_EARLY_SUPPORT and all references to
  dummy-conditions.o.  Eliminate references to insn-conditions.o,
  or change them to build/gencondmd.o, as appropriate.  Remove
  insn-constants.h from $(simple_generated_h) and insn-conditions.c
  from $(simple_generated_c).  For all files remaining in those
  two lists, add insn-conditions.md to the generator command line.
  Give insn-constants.h/s-constants their own rules.  Add rules
  for build/gencondmd.c, s-conditions, insn-conditions.md, s-condmd.
  (build/read-rtl.o): Depend on gensupport.h.
  (genprognormal): Include preds.
  (genprogearly): Rename genprognoprint; only difference is now that
  they don't link with $(BUILD_PRINT).
  * dummy-conditions.c: Delete.

From-SVN: r110119

18 years agor110122@banpei: zack | 2006-01-22 14:41:17 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:14:59 +0000 (15:14 +0000)]
r110122@banpei: zack | 2006-01-22 14:41:17 -0800

 r110122@banpei:  zack | 2006-01-22 14:41:17 -0800
  * genextract.c: Don't include insn-config.h.  Do include vec.h.
         Declare vectors of int, char, and locstr.
         (locstr): New typedef.
         (struct extraction): Make all array fields into bare pointers.
         (insn_name_ptr, insn_name_ptr_size): Move down by get_insn_name.
         (insn_code_number): Delete.
         (accum_extract): New struct.
         (VEC_safe_set_locstr, VEC_char_to_string): New functions.
         (gen_insn): Take insn_code_number as an argument.  Use an
         accum_extract structure instead of loading data directly into
         a struct extraction, and having to know how big it might get.
         (walk_rtx): Operate entirely on an accum_extract structure.
         (print_path): Avoid unnecessary use of printf.
         (print_header): New function, split out of main.  Distinguish
         more carefully between an unrecognizable insn and an insn that
         has the code number of a define_expand.
         (main): Pass insn_code_number to gen_insn.  Call print_header
         only after parsing.  Avoid unnecessary use of printf.
         * Makefile.in (build/vec.o): New rule.
         (build/genextract): Depend on build/vec.o.
         (build/genextract.o): Don't depend on insn-config.h.

From-SVN: r110118

18 years agor110121@banpei: zack | 2006-01-22 14:39:11 -0800
Zack Weinberg [Mon, 23 Jan 2006 15:14:53 +0000 (15:14 +0000)]
r110121@banpei:  zack | 2006-01-22 14:39:11 -0800

         * Makefile.in: Consolidate most rules that use $(CC_FOR_BUILD) and/or
         $(RUN_GEN).  Use pattern rules to factor out as much boilerplate as
         practical.  Eliminate per-generator-program link rules.

From-SVN: r110117

18 years agore PR middle-end/24437 (OBJ_TYPE_REF handling in fold_stmt should be moved to fold)
Andrew Pinski [Mon, 23 Jan 2006 14:56:45 +0000 (14:56 +0000)]
re PR middle-end/24437 (OBJ_TYPE_REF handling in fold_stmt should be moved to fold)

2006-01-23  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/24437
        * tree-ssa-ccp.c (fold_stmt): Move folding of OBJ_TYPE_REF
        with a call expr to ...
        * fold-const.c (fold_ternary) <case CALL_EXPR>: Here.

From-SVN: r110116

18 years agoChangeLog: Fix typo.
Paolo Carlini [Mon, 23 Jan 2006 10:54:23 +0000 (10:54 +0000)]
ChangeLog: Fix typo.

2006-01-23  Paolo Carlini  <pcarlini@suse.de>

* ChangeLog: Fix typo.

From-SVN: r110115

18 years agocfgloopmanip.c (lv_adjust_loop_entry_edge): Add comment before make_edge with conditi...
Richard Guenther [Mon, 23 Jan 2006 10:06:22 +0000 (10:06 +0000)]
cfgloopmanip.c (lv_adjust_loop_entry_edge): Add comment before make_edge with conditional EDGE_TRUE_VALUE.

2006-01-23  Richard Guenther  <rguenther@suse.de>

        * cfgloopmanip.c (lv_adjust_loop_entry_edge): Add comment
        before make_edge with conditional EDGE_TRUE_VALUE.

From-SVN: r110113

18 years agore PR rtl-optimization/25654 (RTL alias analysis unprepared to handle stack slot...
Steven Bosscher [Mon, 23 Jan 2006 09:47:01 +0000 (09:47 +0000)]
re PR rtl-optimization/25654 (RTL alias analysis unprepared to handle stack slot sharing)

2006-01-23  Steven Bosscher  <stevenb.gcc@gmail.com>
Jan Hubicka  <jh@suse.cz>
Richard Guenther  <rguenther@suse.de>

PR rtl-optimization/25654
* cfgexpand.c (aggregate_contains_union_type): New function.
(add_alias_set_conflicts): Call it.  Make sure to add conflicts
for structure variables that contain a union type.

* gcc.dg/torture/pr25654.c: New testcase.
* gcc.target/i386/pr25654.c: Likewise.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r110109

18 years agogengtype.c (new_structure): Return the structure.
Richard Sandiford [Mon, 23 Jan 2006 07:50:42 +0000 (07:50 +0000)]
gengtype.c (new_structure): Return the structure.

* gengtype.c (new_structure): Return the structure.
(create_option): Add an extra "next" argument.
(create_field): New function.
(adjust_field_rtx_def): Use create_option and create_field.
Remove a now-unnecessary call to find_structure.
(adjust_field_tree_def): Likewise.
(note_yacc_type): Remove an unnecessary call to find_structure.
* gengtype.h (new_structure): Return the structure.
(create_option): Add an extra argument.
* gengtype-yacc.y (type): Remove unnecessary calls to find_structure.
(option): Adjust calls to create_option.

From-SVN: r110108

18 years agore PR fortran/25901 (overloaded function is rejected)
Paul Thomas [Mon, 23 Jan 2006 05:07:52 +0000 (05:07 +0000)]
re PR fortran/25901 (overloaded function is rejected)

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

PR fortran/25901
* decl.c (get_proc_name): Replace subroutine and function
attributes in "already defined" test by the formal arglist
pointer being non-NULL.

Fix regression in testing of admissability of attributes.
* symbol.c (gfc_add_attribute): If the current_attr has
non-zero intent, do not do the check for a dummy being
used.
* decl.c (attr_decl1): Add current_attr.intent as the
third argument in the call to gfc_add_attribute.
* gfortran.h: Add the third argument to the prototype
for gfc_add_attribute.

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

PR fortran/25901
* gfortran.dg/internal references_2.f90: New test.

Fix regression in testing of admissability of attributes.
* gfortran.dg/intent_used_1.f90: New test.

From-SVN: r110106

18 years agodectest.exp (TORTURE_OPTIONS): Include -Os.
Ben Elliston [Mon, 23 Jan 2006 03:19:30 +0000 (03:19 +0000)]
dectest.exp (TORTURE_OPTIONS): Include -Os.

* gcc.misc-tests/dectest.exp (TORTURE_OPTIONS): Include -Os.
Remove target conditional torture options for i?86 and x86_64
GNU/Linux.

From-SVN: r110105

18 years agoDaily bump.
GCC Administrator [Mon, 23 Jan 2006 00:17:51 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110101

18 years ago* config/rs6000/aix.h (STACK_BOUNDARY): Define.
David Edelsohn [Sun, 22 Jan 2006 20:48:17 +0000 (15:48 -0500)]
* config/rs6000/aix.h (STACK_BOUNDARY): Define.

From-SVN: r110095

18 years agofix comment
Gabriel Dos Reis [Sun, 22 Jan 2006 20:26:42 +0000 (20:26 +0000)]
fix comment

From-SVN: r110094

18 years agore PR c++/10891 (code using dynamic_cast causes segfaults when -fno-rtti is used)
Gabriel Dos Reis [Sun, 22 Jan 2006 17:32:30 +0000 (17:32 +0000)]
re PR c++/10891 (code using dynamic_cast causes segfaults when -fno-rtti is used)

2006-01-22  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        PR c++/10891
        * rtti.c (build_dynamic_cast): Reject dynamic_cast use if
        -fno-rtti.

testsuite/
2006-01-22  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        PR c++/10891
        * g++.dg/rtti/no-rtti.C: New.

From-SVN: r110092

18 years agom68k.md: Add Coldfire FPU support.
Paul Brook [Sun, 22 Jan 2006 15:01:02 +0000 (15:01 +0000)]
m68k.md: Add Coldfire FPU support.

2006-01-22  Paul Brook  <paul@codesourcery.com>
Peter Barada  <peter@the-baradas.com>

* config/m68k/m68k.md: Add Coldfire FPU support.
Define FP mode macro and associated attributes.
Use it for float mode patterns.
* config/m68k/linux.h (FUNCTION_VALUE): Use m68k_function_value.
(LIBCALL_VALUE): Use m68k_libcall_value.
* config/m68k/m68k-protos.h (m68k_libcall_value): Add prototype.
(m68k_function_value): Ditto.
(emit_move_sequence): Ditto.
* config/m68k/m68kemb.h (LIBCALL_VALUE): Use m68k_libcall_value.
* config/m68k/m68k-none.h (ASM_SPEC): Add mcfv4e.
* config/m68k/t-m68kelf (MULTILIB_OPTIONS): Add mcfv4e.
(MULTILIB_EXCEPTIONS): Ditto.
* config/m68k/m68k.opt: Add mcfv4e.
* config/m68k/m68k.c (m68k_handle_option): Handle OPT_mcfv4e.
(m68k_compute_frame_layout): Include space for ColdFire FPU regs.
(m68k_output_function_prologue): Save ColdFire FPU registers.
(m68k_output_function_epilogue): Restore ColdFire FPU registers.
(force_mode, fp_reg_operand, emit_move_sequence): New functions.
(m68k_regno_mode_ok): Don't allow types larget than 8 bytes in
ColdFire FPU registers.
(m68k_libcall_value, m68k_function_value): New functions.
* config/m68k/netbsd-elf.h (FUNCTION_VALUE): Use m68k_function_value.
(LIBCALL_VALUE): Use m68k_libcall_value.
* config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Define __mcfv4e__.
(MASK_COLDFIRE): Add MASK_CFV4E.
(TARGET_COLDFIRE_FPU, TARGET_HARD_FLOAT, TARGET_FP_REG_SIZE): New.
(MODES_TIEABLE_P): Use TARGET_HARD_FLOAT.
(REG_CLASS_FROM_LETTER, PREFERRED_RELOAD_CLASS): Ditto.
(GO_IF_COLDFIRE_FPU_LEGITIMATE_ADDRESS): Define.
(GO_IF_LEGITIMATE_ADDRESS): Use it.
(LEGITIMIZE_ADDRESS): Handle ColdFire FPU addresses.
* doc/invoke.tex: Document -mcfv4e on m68k.

Co-Authored-By: Peter Barada <peter@the-baradas.com>
From-SVN: r110091

18 years agoMAINTAINERS (Write After Approval): Add myself.
Dirk Mueller [Sun, 22 Jan 2006 14:17:45 +0000 (14:17 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2006-01-22  Dirk Mueller  <dmueller@suse.de>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r110088

18 years ago2006-01-22 Paolo Carlini <pcarlini@suse.de>
Paolo Carlini [Sun, 22 Jan 2006 10:11:08 +0000 (10:11 +0000)]
2006-01-22  Paolo Carlini  <pcarlini@suse.de>

* ChangeLog rotation.

From-SVN: r110087

18 years agocontribute.texi: Change CVS to SVN and update the corresponding URL.
Ranjit Mathew [Sun, 22 Jan 2006 04:51:39 +0000 (04:51 +0000)]
contribute.texi: Change CVS to SVN and update the corresponding URL.

* doc/contribute.texi: Change CVS to SVN and update the corresponding
URL.

From-SVN: r110086

18 years agore PR c++/16190 (-Wnon-virtual-dtor, in -Wall, silenced only by pessimizing code)
Gabriel Dos Reis [Sun, 22 Jan 2006 02:38:03 +0000 (02:38 +0000)]
re PR c++/16190 (-Wnon-virtual-dtor, in -Wall, silenced only by pessimizing code)

        PR c++/16190
        * c-opts.c (c_common_handle_option): Don't include
        -Wnon-virtual-dtor in -Wall; enable if -Weffc++.
        * doc/invoke.texi (C++ Dialect Options): Document that
        -Wnon-virtual-dtor is no longer included in -Wall.

From-SVN: r110085

18 years agore PR c++/25895 (wrong code with ?: and derived class pointers)
Mark Mitchell [Sun, 22 Jan 2006 00:42:40 +0000 (00:42 +0000)]
re PR c++/25895 (wrong code with ?: and derived class pointers)

PR c++/25895
* class.c (build_base_path): Generate a NOP_EXPR instead of a
COMPONENT_REF if the base and derived classes are at the same
address.
PR c++/25856
* decl.c (begin_destructor_body): Robustify.
PR c++/25858
* parser.c (cp_parser_direct_declarator): Robustify.

PR c++/25895
* g++.dg/inherit/conv2.C: New test.
PR c++/25856
* g++.dg/parse/dtor7.C: New test.
PR c++/25858
* g++.dg/template/crash44.C: New test.

From-SVN: r110084

18 years agoDaily bump.
GCC Administrator [Sun, 22 Jan 2006 00:17:41 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110080

18 years agoconfigure.ac: Enable libffi for sparc64-*-freebsd*.
Andreas Tobler [Sat, 21 Jan 2006 21:25:21 +0000 (22:25 +0100)]
configure.ac: Enable libffi for sparc64-*-freebsd*.

2006-01-21  Andreas Tobler  <a.tobler@schweiz.ch>

* configure.ac: Enable libffi for sparc64-*-freebsd*.
* configure: Rebuilt.

From-SVN: r110073

18 years agogcov.c (print_version), [...]): Update copyright notice dates.
Joseph Myers [Sat, 21 Jan 2006 18:22:19 +0000 (18:22 +0000)]
gcov.c (print_version), [...]): Update copyright notice dates.

* gcov.c (print_version), gcov-dump.c (print_version),
mips-tdump.c (main), mips-tfile.c (main): Update copyright notice
dates.

fortran:
* gfortranspec.c (lang_specific_driver): Update copyright notice
date.

java: * jv-scan.c (version), jcf-dump.c (version), gjavah.c (version):
Update copyright notice dates.

treelang:
* spec.c (lang_specific_driver): Update copyright notice date.

From-SVN: r110069

18 years agore PR libgomp/25877 (team.c:269: warning: implicit declaration of function 'alloca')
Steve Ellcey [Sat, 21 Jan 2006 17:57:01 +0000 (17:57 +0000)]
re PR libgomp/25877 (team.c:269: warning: implicit declaration of function 'alloca')

PR libgomp/25877
* configure.ac: Remove check for alloca.h.
* configure: Regenerate.
* config.h.in: Regenerate.
* libgomp.h: define gomp_alloca to be __builtin_alloca.
* team.c: Remove use of alloca.h.
Call gomp_alloca instead of alloca.

From-SVN: r110068

18 years agodf-scan.c (problem_SCAN): Added NULL reset function.
Kenneth Zadeck [Sat, 21 Jan 2006 14:58:40 +0000 (14:58 +0000)]
df-scan.c (problem_SCAN): Added NULL reset function.

2005-01-21  Kenneth Zadeck <zadeck@naturalbridge.com>

* df-scan.c (problem_SCAN): Added NULL reset function.
(df_scan_reset_blocks): Added code to call reset block function
(df_bb_refs_delete) Fixed comment.
(df_insn_refs_delete): Made tolerant of deleting non existent info
for dataflow problems that need to be reset.
* df-core.c (df_set_blocks): Ditto.
* df.h (struct df_problem): Added reset_fun.
* df-problems.c (problem_RU, problem_RD, problem_LR, problem_UR,
problem_UREC, problem_CHAIN, problem_RI): Initialized reset_fun field.
(df_chain_insn_reset, df_chain_bb_reset, df_chain_reset): New
functions to clear out all references to def-use or use-def chains.

From-SVN: r110066

18 years agoPR25024, PR20881, PR23308, PR25538 and PR25710 - Procedure references
Paul Thomas [Sat, 21 Jan 2006 09:08:54 +0000 (09:08 +0000)]
PR25024, PR20881, PR23308, PR25538 and PR25710 - Procedure references

2005-01-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25124
PR fortran/25625
* decl.c (get_proc_name): If there is an existing
symbol in the encompassing namespace, call errors
if it is a procedure of the same name or the kind
field is set, indicating a type declaration.

PR fortran/20881
PR fortran/23308
PR fortran/25538
PR fortran/25710
* decl.c (add_global_entry): New function to check
for existing global symbol with this name and to
create new one if none exists.
(gfc_match_entry): Call add_global_entry before
matching argument lists for subroutine and function
entries.
* gfortran.h: Prototype for existing function,
global_used.
* resolve.c (resolve_global_procedure): New function
to check global symbols for procedures.
(resolve_call, resolve_function): Calls to this
new function for non-contained and non-module
procedures.
* match.c (match_common): Add check for existing
global symbol, creat one if none exists and emit
error if there is a clash.
* parse.c (global_used): Remove static and use the
gsymbol name rather than the new_block name, so that
the function can be called from resolve.c.
(parse_block_data, parse_module, add_global_procedure):
Improve checks for existing gsymbols.  Emit error if
already defined or if references were to another type.
Set defined flag.

PR fortran/PR24276
* trans-expr.c (gfc_conv_aliased_arg): New function called by
gfc_conv_function_call that coverts an expression for an aliased
component reference to a derived type array into a temporary array
of the same type as the component.  The temporary is passed as an
actual argument for the procedure call and is copied back to the
derived type after the call.
(is_aliased_array): New function that detects an array reference
that is followed by a component reference.
(gfc_conv_function_call): Detect an aliased actual argument with
is_aliased_array and convert it to a temporary and back again
using gfc_conv_aliased_arg.

2005-01-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25124
PR fortran/25625
* gfortran.dg/internal_references_1.f90: New test.
  PR fortran/20881
PR fortran/23308
PR fortran/25538
PR fortran/25710
* gfortran.dg/global_references_1.f90: New test.
* gfortran.dg/g77/19990905-1.f: Restore the error that
there is a clash between the common block name and
the name of a subroutine reference.

PR fortran/PR24276
* gfortran.dg/aliasing_dummy_1.f90: New test.

From-SVN: r110063

18 years agoDaily bump.
GCC Administrator [Sat, 21 Jan 2006 00:18:10 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r110056

18 years ago* varasm.c (assemble_real): Initialise data array.
Ben Elliston [Fri, 20 Jan 2006 23:25:11 +0000 (23:25 +0000)]
* varasm.c (assemble_real): Initialise data array.

From-SVN: r110049

18 years ago[multiple changes]
Paul Brook [Fri, 20 Jan 2006 23:23:03 +0000 (23:23 +0000)]
[multiple changes]

2006-01-20  Paul Brook  <paul@codesourcery.com>

Merge from csl-arm-branch.
2005-09-21  Kazu Hirata  <kazu@codesourcery.com>
* config/arm/arm.md (movdi): Force operands[1] to a register
if we have a non-register source.
(*arm_movdi, *movdf_soft_insn): Require that one of the
operands be a register.
* config/arm/iwmmxt.md (*iwmmxt_arm_movdi): Likewise.
* config/arm/vfp.md (*arm_movdi_vfp, *movdf_vfp): Likewise.

From-SVN: r110048

18 years agoMakefile.in: Add test-expandargv test.
Carlos O'Donell [Fri, 20 Jan 2006 22:55:36 +0000 (22:55 +0000)]
Makefile.in: Add test-expandargv test.

libiberty/

2006-01-20  Carlos O'Donell  <carlos@codesourcery.com>

* testsuite/Makefile.in: Add test-expandargv test.
* testsuite/test-expandargv.c: New test.
* argv.c (expandargv): Check for errors with ferror,
rather than just by looking at return value from fread.

From-SVN: r110047

18 years agoacinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version reporting.
Benjamin Kosnik [Fri, 20 Jan 2006 22:24:43 +0000 (22:24 +0000)]
acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version reporting.

2006-01-20  Benjamin Kosnik  <bkoz@redhat.com>

* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
reporting.  Disable --gc-sections for old binutils, by version.
* configure: Regenerate.

From-SVN: r110045

18 years ago1b-01.c: Warning fix.
Alan Modra [Fri, 20 Jan 2006 22:20:28 +0000 (22:20 +0000)]
1b-01.c: Warning fix.

* gcc.dg/vmx/1b-01.c: Warning fix.
* gcc.dg/vmx/1c-02.c: Likewise.
* gcc.dg/vmx/gcc-bug-4.c: Likewise.

From-SVN: r110044

18 years agovarasm.c (initialize_constant_valid_p): Allow pointers initialized from integer const...
DJ Delorie [Fri, 20 Jan 2006 21:55:41 +0000 (16:55 -0500)]
varasm.c (initialize_constant_valid_p): Allow pointers initialized from integer constants of lesser precision.

* varasm.c (initialize_constant_valid_p): Allow pointers
initialized from integer constants of lesser precision.
(output_constant): Allow non-int-sized pointer modes to be
initialized from integer constants.

From-SVN: r110041

18 years agoconfigure.ac: Use -fPIC for symbol versioning test.
Richard Guenther [Fri, 20 Jan 2006 21:33:25 +0000 (21:33 +0000)]
configure.ac: Use -fPIC for symbol versioning test.

2006-01-20  Richard Guenther  <rguenther@suse.de>

* configure.ac: Use -fPIC for symbol versioning test.
* configure: Regenerate.

From-SVN: r110040

18 years agoparser.c (cp_lexer_next_token_is_keyword): Simplify.
Volker Reichelt [Fri, 20 Jan 2006 21:08:48 +0000 (21:08 +0000)]
parser.c (cp_lexer_next_token_is_keyword): Simplify.

* parser.c (cp_lexer_next_token_is_keyword): Simplify.

* parser.c (clear_decl_specs): Remove prototype.

* parser.c (cp_parser_expression_fn): Remove.

From-SVN: r110039

18 years agore PR libstdc++/25524 (libstdc++ headers should go in multilib directories)
Joseph Myers [Fri, 20 Jan 2006 21:00:03 +0000 (21:00 +0000)]
re PR libstdc++/25524 (libstdc++ headers should go in multilib directories)

PR libstdc++/25524
* cppdefault.h (struct default_include): Add multilib flag.
* cppdefault.c (cpp_include_defaults): Set it.
* c.opt (-imultilib): New option.
* c-opts.c (imultilib): New.
(c_common_handle_option): Handle -imultilib.
(c_common_post_options): Likewise.
* c-incpath.c (add_standard_paths, register_include_chains):
Likewise.
* c-incpath.h (register_include_chains): Add extra parameter.
* gcc.c (do_spec_1): Generate -imultilib option.
(The Specs Language): Update %I description.
(process_command): Update copyright notice.
* doc/cppopts.texi (-imultilib): Document.
* doc/invoke.texi (-imultilib): Include in option summary.
(%I): Update specs documentation.

libstdc++-v3:
* include/Makefile.am: Install host-specific headers in multilib
subdirectory.
* include/Makefile.in: Regenerate.

From-SVN: r110037

18 years agore PR testsuite/24962 (gcc.target/ia64/20030811-1.c (test for excess errors) fails...
Steve Ellcey [Fri, 20 Jan 2006 18:29:44 +0000 (18:29 +0000)]
re PR testsuite/24962 (gcc.target/ia64/20030811-1.c (test for excess errors) fails with -milp32)

PR testsuite/24962
* gcc.target/ia64/20030811-1.c: Change 'long' to 'long long'.

From-SVN: r110034

18 years agore PR libgomp/25877 (team.c:269: warning: implicit declaration of function 'alloca')
Steve Ellcey [Fri, 20 Jan 2006 18:17:28 +0000 (18:17 +0000)]
re PR libgomp/25877 (team.c:269: warning: implicit declaration of function 'alloca')

PR libgomp/25877
* team.c: Add include of alloca.h.
* configure.ac: Add check for alloca.h.
* configure: Regenerate.
* config.h.in: Regenerate.

From-SVN: r110031

18 years agoloop-iv.c (iv_analysis_loop_init): Use df in more conservative way.
Zdenek Dvorak [Fri, 20 Jan 2006 17:06:34 +0000 (18:06 +0100)]
loop-iv.c (iv_analysis_loop_init): Use df in more conservative way.

* loop-iv.c (iv_analysis_loop_init): Use df in more conservative way.

From-SVN: r110030

18 years agore PR ada/24533 (FAIL: a85013b: *** glibc detected *** free(): invalid pointer...
John David Anglin [Fri, 20 Jan 2006 14:30:33 +0000 (14:30 +0000)]
re PR ada/24533 (FAIL:   a85013b: *** glibc detected *** free(): invalid pointer: 0x00062a00 ***)

PR ada/24533
* s-osinte-linux-hppa.ads: Reduce alignment of atomic_lock_t to 8.

From-SVN: r110025

18 years agoconfigure: Regenerate.
Diego Novillo [Fri, 20 Jan 2006 13:47:14 +0000 (13:47 +0000)]
configure: Regenerate.

* configure: Regenerate.

From-SVN: r110023

18 years agocall.c (add_builtin_candidates): Remove superfluous return.
Volker Reichelt [Fri, 20 Jan 2006 13:18:06 +0000 (13:18 +0000)]
call.c (add_builtin_candidates): Remove superfluous return.

* call.c (add_builtin_candidates): Remove superfluous return.
* name-lookup.c (do_toplevel_using_decl): Likewise.
* parser.c (cp_parser_type_specifier_seq): Likewise.
(cp_parser_save_default_args): Likewise.

From-SVN: r110022

18 years agostmt.c (case_bit_test_cmp): Stabilize the sort using code label numbers.
Richard Sandiford [Fri, 20 Jan 2006 12:12:24 +0000 (12:12 +0000)]
stmt.c (case_bit_test_cmp): Stabilize the sort using code label numbers.

* stmt.c (case_bit_test_cmp): Stabilize the sort using code
label numbers.

From-SVN: r110021

18 years agore PR rtl-optimization/24626 (internal compiler error: verify_flow_info failed)
Richard Guenther [Fri, 20 Jan 2006 09:38:56 +0000 (09:38 +0000)]
re PR rtl-optimization/24626 (internal compiler error: verify_flow_info failed)

2006-01-20  Richard Guenther  <rguenther@suse.de>
Steven Bosscher <stevenb.gcc@gmail.com>

PR rtl-optimization/24626
* cfgloopmanip.c (lv_adjust_loop_entry_edge): Don't set
EDGE_TRUE_VALUE if in RTL mode.

Revert
2005-03-30 Mostafa Hagog <mustafa@il.ibm.com>
* cfgrtl.c (rtl_verify_flow_info_1): Fix.

* gcc.dg/torture/pr24626-1.c: New testcase.
* gcc.dg/torture/pr24626-2.c: Likewise.
* gcc.dg/torture/pr24626-3.c: Likewise.
* gcc.dg/torture/pr24626-4.c: Likewise.

Co-Authored-By: Steven Bosscher <stevenb.gcc@gmail.com>
From-SVN: r110020

18 years agore PR c++/5520 (Add a warning to detect empty body of if statements (like in the...
Dirk Mueller [Fri, 20 Jan 2006 09:30:22 +0000 (09:30 +0000)]
re PR c++/5520 (Add a warning to detect empty body of if statements (like in the C frontend))

2006-01-20  Dirk Mueller  <dmueller@suse.com>

        PR c++/5520
        * c-parser.c (c_parser_if_body): Use build_empty_stmt()
        instead of a special NOP marker.
        * c-typeck.c (c_finish_if_stmt): Remove obsoleted special
        NOP marker handling.
        * c-common.h (empty_body_warning): Add forward declaration.
        * c-common.c (empty_body_warning): Add (from c_finish_if_stmt).
        Now uses IS_EMPTY_STMT() instead of special NOP markers.

        * semantics.c (finish_if_stmt): Call empty_body_warning.
        * parser.c (cp_parser_implicitly_scoped_statement):
        Mark empty statement with an empty stmt.

        * g++.dg/warn/empty-body.C: New.

From-SVN: r110019

18 years agore PR c++/22136 (Rejects old-style using declaration)
Mark Mitchell [Fri, 20 Jan 2006 03:07:58 +0000 (03:07 +0000)]
re PR c++/22136 (Rejects old-style using declaration)

PR c++/22136
* name-lookup.c (do_class_using_decl): Don't try to look up base
classes in templates with dependent base types.
PR c++/22136
* g++.dg/template/using10.C: New test.
* g++.dg/temlpate/using11.C: Likewise.
* g++.dg/inherit/using5.C: Tweak error messages.

From-SVN: r110017

18 years agoMakefile.in (lang_checks): Keep going if mkdir fails.
Paul Brook [Fri, 20 Jan 2006 02:41:21 +0000 (02:41 +0000)]
Makefile.in (lang_checks): Keep going if mkdir fails.

2005-01-20  Paul Brook  <paul@codesourcery.com>

* Makefile.in (lang_checks): Keep going if mkdir fails.

From-SVN: r110012

18 years agoImplement list::splice (and merge) bits of N1599
Paolo Carlini [Fri, 20 Jan 2006 02:38:54 +0000 (02:38 +0000)]
Implement list::splice (and merge) bits of N1599

2006-01-19  Paolo Carlini  <pcarlini@suse.de>

Implement list::splice (and merge) bits of N1599
* include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
(list<>::splice(iterator, list&), splice(iterator, list&, iterator),
splice(iterator, list&, iterator, iterator)): Use it.
* include/bits/stl_list.h (list<>::merge(list&), merge(list&,
_StrictWeakOrdering)): Likewise.
* testsuite/23_containers/list/operators/5.cc: New.

From-SVN: r110011

18 years agodf-scan.c (df_scan_free_bb_info): Added basic block parameter to be able to clean...
Kenneth Zadeck [Fri, 20 Jan 2006 01:55:52 +0000 (01:55 +0000)]
df-scan.c (df_scan_free_bb_info): Added basic block parameter to be able to clean out basic block when not necessary.

2005-01-19  Kenneth Zadeck <zadeck@naturalbridge.com>

* df-scan.c (df_scan_free_bb_info): Added basic block parameter to
be able to clean out basic block when not necessary.
(df_scan_free): Fixed to properly delete information if df is
unused before calling df_finish.
(df_scan_alloc, df_rescan_blocks, df_reg_chain_unlink,
df_insn_create_insn_record, df_bb_refs_record): Fixed formatting
or comment typos.
(df_bb_refs_delete): New function.
(df_refs_delete): Moved per block code to df_bb_refs_delete.
* df-core.c (df_set_blocks): Added code to properly clean out
unused blocks if they are not part of the blocks to consider.
Added additional null check.
(df_compact_blocks): Added basic block parameter to free_bb_fun to
be able to clean out basic block when not necessary
* df.h (df_free_bb_function): Ditto.
(df_bb_refs_delete): New function.
* df-problems.c (df_ru_free_bb_info, df_rd_set_bb_info,
df_lr_set_bb_info, df_ur_free_bb_info, df_urec_free_bb_info):Added
basic block parameter to be able to clean out basic block when not
necessary.
(df_ru_alloc, df_rd_alloc): Fixed dyslexic overflow test.
(df_ru_free, df_rd_free, df_lr_free, df_ur_free, df_urec_free):
Fixed to properly delete information if df is unused before
calling df_finish.

From-SVN: r110009

18 years agore PR rtl-optimization/25799 (cc1 stalled with -O1 -fmodulo-sched)
Kenneth Zadeck [Fri, 20 Jan 2006 01:28:34 +0000 (01:28 +0000)]
re PR rtl-optimization/25799 (cc1 stalled with -O1 -fmodulo-sched)

2005-01-19  Kenneth Zadeck <zadeck@naturalbridge.com>

PR rtl-optimization/25799
* df-problems.c (df_ru_confluence_n, df_rd_confluence_n):
Corrected confluence operator to remove bits from op2 before oring
with op1 rather than removing bits from op1.
        (df_ru_transfer_function): Corrected test on wrong bitmap which
caused infinite loop.  Both of these problems were introduced in
the dataflow rewrite.

From-SVN: r110008

18 years agore PR rtl-optimization/25799 (cc1 stalled with -O1 -fmodulo-sched)
Kenneth Zadeck [Fri, 20 Jan 2006 01:24:00 +0000 (01:24 +0000)]
re PR rtl-optimization/25799 (cc1 stalled with -O1 -fmodulo-sched)

2005-01-19  Kenneth Zadeck <zadeck@naturalbridge.com>

PR rtl-optimization/25799
* df-problems.c (df_ru_confluence_n, df_rd_confluence_n):
Corrected confluence operator to remove bits from op2 before oring
with op1 rather than removing bits from op1.
        * (df_ru_transfer_function): Corrected test on wrong bitmap which
caused infinite loop.  Both of these problems were introduced in
the dataflow rewrite.

From-SVN: r110007

18 years agoreload1.c (find_reload_regs): Note the details of reload failures in the dump file.
DJ Delorie [Fri, 20 Jan 2006 01:16:17 +0000 (20:16 -0500)]
reload1.c (find_reload_regs): Note the details of reload failures in the dump file.

* reload1.c (find_reload_regs): Note the details of reload
failures in the dump file.
(spill_failure): Likewise.

From-SVN: r110006

18 years agoloop-iv.c: Include df.h and hashtab.h.
Zdenek Dvorak [Fri, 20 Jan 2006 00:46:37 +0000 (01:46 +0100)]
loop-iv.c: Include df.h and hashtab.h.

* loop-iv.c: Include df.h and hashtab.h.
(enum iv_grd_result): New enum.
(DF_REF_IV, DF_REF_IV_SET): New macros.
(struct biv_entry): New.
(df, bivs): New global variables.
(struct insn_info, insn_info, last_def, bivs, max_insn_no, max_reg_no,
assign_luids, mark_sets, kill_sets, mark_single_set, simple_set_p):
Removed.
(clear_iv_info, latch_dominating_def, record_iv, iv_analyze_expr,
iv_analyze_result, iv_analyze_def, biv_hash, biv_eq,
analyzed_for_bivness_p, record_biv): New functions.
(iv_analysis_loop_init, iv_get_reaching_def, simple_reg_p,
get_biv_step_1, get_biv_step, iv_analyze_biv, iv_analyze_op,
iv_analyze, biv_p, iv_analysis_done): Work with df representation of
UD chains.
(iv_constant, iv_subreg, iv_extend, iv_mult, iv_shift): Do not set
analysed.
(iv_number_of_iterations): Use new interface to iv analysis.
* loop-unroll.c: Do not include varray.h.
(analyze_iv_to_split_insn): Use new interface to iv
analysis.
* loop-unswitch.c (may_unswitch_on): Ditto.
* 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.h (df_find_use): Declare.
* optabs.c (expand_unop): Make the mode of the REG_EQUAL node be
outmode.
* cfgloop.h (struct rtx_iv): Remove analysed field.
(iv_get_reaching_def): Removed.
(iv_analyze_result, iv_analyze_expr, iv_current_loop_df): Declare.
* Makefile.in (loop-unroll.o): Remove VARRAY_H dependency.
(loop-iv.o): Add df.h and hashtab.h dependency.
* df-problems.c (df_ru_alloc, df_rd_alloc): Fix memory reallocation.

From-SVN: r110005

18 years agolibgcc2.c (__floatdisf, [...]): Don't use IBM Extended Double TFmode.
Alan Modra [Fri, 20 Jan 2006 00:42:29 +0000 (00:42 +0000)]
libgcc2.c (__floatdisf, [...]): Don't use IBM Extended Double TFmode.

* libgcc2.c (__floatdisf, __floatdidf): Don't use IBM Extended
Double TFmode.
(__floatundisf, __floatundidf): Likewise.
* libgcc2.h (IS_IBM_EXTENDED): Define.

From-SVN: r110004

18 years ago* config/m32c/m32c.h (REG_ALLOC_ORDER): Define.
DJ Delorie [Fri, 20 Jan 2006 00:38:42 +0000 (19:38 -0500)]
* config/m32c/m32c.h (REG_ALLOC_ORDER): Define.

From-SVN: r110003

18 years agoDaily bump.
GCC Administrator [Fri, 20 Jan 2006 00:17:32 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r110001

18 years agors6000-ldouble-1.c: Tweak powerpc linux target test.
Alan Modra [Fri, 20 Jan 2006 00:16:18 +0000 (00:16 +0000)]
rs6000-ldouble-1.c: Tweak powerpc linux target test.

* gcc.target/powerpc/rs6000-ldouble-1.c: Tweak powerpc linux
target test.
* gcc.target/powerpc/rs6000-ldouble-2.c: Likewise.

From-SVN: r109995

18 years agoarm.c (arm_compute_func_type): Treat all functions as nothrow when unwinding tables...
Paul Brook [Fri, 20 Jan 2006 00:01:56 +0000 (00:01 +0000)]
arm.c (arm_compute_func_type): Treat all functions as nothrow when unwinding tables are disabled.

2006-01-19  Paul Brook  <paul@codesourcery.com>

* gcc/config/arm/arm.c (arm_compute_func_type): Treat all functions
as nothrow when unwinding tables are disabled.

From-SVN: r109994

18 years agore PR testsuite/25171 (FAIL: gfortran.dg/mixed_io_1.f90)
John David Anglin [Thu, 19 Jan 2006 23:45:49 +0000 (23:45 +0000)]
re PR testsuite/25171 (FAIL: gfortran.dg/mixed_io_1.f90)

PR testsuite/25171
* c-decl.c (check_bitfield_type_and_width): Don't issue pedwarn "type
of bit-field" when in system header.

From-SVN: r109990

18 years agom32c.c (m32c_prepare_shift): Add code to deal with the 16 bit shift limit of the...
DJ Delorie [Thu, 19 Jan 2006 23:18:57 +0000 (18:18 -0500)]
m32c.c (m32c_prepare_shift): Add code to deal with the 16 bit shift limit of the m16c.

* config/m32c/m32c.c (m32c_prepare_shift): Add code to deal with
the 16 bit shift limit of the m16c.

From-SVN: r109987

18 years agore PR libstdc++/25797 (almost all libstdc++ tests fail)
H.J. Lu [Thu, 19 Jan 2006 22:36:41 +0000 (22:36 +0000)]
re PR libstdc++/25797 (almost all libstdc++ tests fail)

2006-01-19  H.J. Lu  <hongjiu.lu@intel.com>

PR libstdc++/25797
* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Remove -Werror
from CFLAGS.  Check if linker really supports --gc-sections.
* configure: Regenerated.

From-SVN: r109985

18 years ago* gcc.target/i386/lea.c: Test pentiumpro, not i686.
Jan Hubicka [Thu, 19 Jan 2006 20:52:39 +0000 (21:52 +0100)]
* gcc.target/i386/lea.c: Test pentiumpro, not i686.

From-SVN: r109982

18 years agore PR c++/25854 (Bogus diagnostic with '<type error>')
Volker Reichelt [Thu, 19 Jan 2006 17:29:42 +0000 (17:29 +0000)]
re PR c++/25854 (Bogus diagnostic with '<type error>')

PR c++/25854
* pt.c (maybe_process_partial_specialization): Return early on
error_mark_node.

* g++.dg/template/spec28.C: New test.

From-SVN: r109975

18 years agore PR target/22099 (builtin_setjmp gives duplicate labels)
Andrew Pinski [Thu, 19 Jan 2006 17:28:53 +0000 (17:28 +0000)]
re PR target/22099 (builtin_setjmp gives duplicate labels)

2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/22099
        * config/i386/i386.md (builtin_setjmp_receiver): Don't emit the label.
        * config/i386/i386.c (output_set_got): Output the label if we have one
        for the TARGET_DEEP_BRANCH_PREDICTION case.

From-SVN: r109974

18 years agore PR target/15642 (NAN Is Not a Constant Because __APPLE_CC__ is Not Defined (OK...
Andrew Pinski [Thu, 19 Jan 2006 17:18:29 +0000 (17:18 +0000)]
re PR target/15642 (NAN Is Not a Constant Because __APPLE_CC__ is Not Defined (OK in Apple 3.3.0))

2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/15642
        * inclhack.def (AAB_darwin7_9_long_double_funcs [replace]): Define
        __APPLE_CC_ as 1345.
        (broken_nan): New.
        * fixincl.x: Regenerate.

From-SVN: r109973

18 years agoinvoke.texi (generic): Document (i686) Update.
Jan Hubicka [Thu, 19 Jan 2006 17:12:37 +0000 (17:12 +0000)]
invoke.texi (generic): Document (i686) Update.

* invoke.texi (generic): Document
(i686) Update.
* config.gcc: Make x86_64-* and i686-* default to generic tunning.
* i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC,
TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros.
(x86_use_incdec, x86_pad_returns): New variables
(TARGET_CPU_DEFAULT_generic): New constant
(TARGET_CPU_DEFAULT_NAMES): Add generic.
(enum processor_type): Add generic32 and generic64.
* i386.md (cpu attribute): Add generic32/generic64
(movhi splitter): Behave sanely when both partial_reg_dependency and
partial_reg_stall are set.
(K8 splitters): Enable for generic as well.
* predicates.md (incdec_operand): Use TARGET_INCDEC
(aligned_operand): Avoid memory mismatch stalls.
* athlon.md: Enable for generic64, new patterns for 128bit moves.
* ppro.md: Enable for generic32
* i386.c (generic64_cost, generic32_cost): New.
(m_GENERIC32, m_GENERIC64, m_GENERIC): New macros.
(x86_use_leave): Enable for generic64.  (x86_use_sahf,
x86_ext_80387_constants): Enable for generic32.  (x86_push_memory,
x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop,
x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8,
x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves,
x86_partial_reg_dependency, x86_memory_mismatch_stall,
x86_accumulate_outgoing_args, x86_prologue_using_move,
x86_epilogue_using_move, x86_arch_always_fancy_math_387,
x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule):
Enable for generic.
(x86_use_incdec, x86_pad_returns): New.
(override_options): Add generic32 and generic64, translate "generic"
to generic32/generic64 and "i686" to "generic32", refuse
"generic32"/"generic64" as arch target.
(ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon.
(ix86_reorg): Honor PAD_RETURNS.

From-SVN: r109972

18 years agoinvoke.texi (generic): Document (i686) Update.
Jan Hubicka [Thu, 19 Jan 2006 17:10:24 +0000 (18:10 +0100)]
invoke.texi (generic): Document (i686) Update.

* invoke.texi (generic): Document
(i686) Update.
* config.gcc: Make x86_64-* and i686-* default to generic tunning.
* i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC,
TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros.
(x86_use_incdec, x86_pad_returns): New variables
(TARGET_CPU_DEFAULT_generic): New constant
(TARGET_CPU_DEFAULT_NAMES): Add generic.
(enum processor_type): Add generic32 and generic64.
* i386.md (cpu attribute): Add generic32/generic64
(movhi splitter): Behave sanely when both partial_reg_dependency and
partial_reg_stall are set.
(K8 splitters): Enable for generic as well.
* predicates.md (incdec_operand): Use TARGET_INCDEC
(aligned_operand): Avoid memory mismatch stalls.
* athlon.md: Enable for generic64, new patterns for 128bit moves.
* ppro.md: Enable for generic32
* i386.c (generic64_cost, generic32_cost): New.
(m_GENERIC32, m_GENERIC64, m_GENERIC): New macros.
(x86_use_leave): Enable for generic64.  (x86_use_sahf,
x86_ext_80387_constants): Enable for generic32.  (x86_push_memory,
x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop,
x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8,
x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves,
x86_partial_reg_dependency, x86_memory_mismatch_stall,
x86_accumulate_outgoing_args, x86_prologue_using_move,
x86_epilogue_using_move, x86_arch_always_fancy_math_387,
x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule):
Enable for generic.
(x86_use_incdec, x86_pad_returns): New.
(override_options): Add generic32 and generic64, translate "generic"
to generic32/generic64 and "i686" to "generic32", refuse
"generic32"/"generic64" as arch target.
(ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon.
(ix86_reorg): Honor PAD_RETURNS.

Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com>
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r109971

18 years agostruct-layout-encoding-1_generate.c (switchfiles): Fix fprintf's by adding srcdir...
Andrew Pinski [Thu, 19 Jan 2006 16:57:43 +0000 (16:57 +0000)]
struct-layout-encoding-1_generate.c (switchfiles): Fix fprintf's by adding srcdir or removing it.

2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>

        * objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c (switchfiles):
        Fix fprintf's by adding srcdir or removing it.

From-SVN: r109970

18 years agotree-pretty-print.c (dump_generic_node): Handle OMP_PARALLEL_FN, OMP_PARALLEL_DATA_AR...
Diego Novillo [Thu, 19 Jan 2006 16:55:52 +0000 (16:55 +0000)]
tree-pretty-print.c (dump_generic_node): Handle OMP_PARALLEL_FN, OMP_PARALLEL_DATA_ARG and OMP_RETURN_EXPR.

* tree-pretty-print.c (dump_generic_node): Handle
OMP_PARALLEL_FN, OMP_PARALLEL_DATA_ARG and OMP_RETURN_EXPR.
* cgraph.c (cgraph_expand_queue): Rename from
cgraph_analyze_queue.
Update all users.
* cgraphunit.c (cgraph_assemble_pending_functions): Process
cgraph_expand_queue.
(cgraph_expand_all_functions): Likewise.
(cgraph_finalize_pending_functions): Remove.  Update callers.

* tree.h (OMP_DIRECTIVE_P): Define.
(OMP_PARALLEL_FN): Define.
(OMP_PARALLEL_DATA_ARG): Define.
(OMP_SECTIONS_SECTIONS): Define.
* tree-pass.h (pass_expand_omp): Declare.
* omp-low.c (struct omp_region): Declare.
(struct omp_context): Remove fields 'parallel_type',
'parallel_start_ix' and 'parallel_start_additional_args'.
Update all users.
(struct omp_for_data): Rename from struct expand_omp_for_data.
(omp_regions): New static variable.
(root_omp_region): New static variable.
(find_omp_clause): Make static.
(is_in_combined_parallel_ctx): Remove.
(is_combined_parallel): New.
(extract_omp_for_data): Move earlier in the file.
(workshare_safe_to_combine_p): New.
(get_ws_args_for): New.
(determine_parallel_type): Move earlier in the file.
(omp_copy_decl_2): Do not set DECL_CONTEXT of new local to the
child function.
(omp_copy_decl): Likewise.
(create_omp_child_function): Likewise.
(lookup_omp_region): New.
(dump_omp_region): New.
(debug_omp_region): New.
(debug_all_omp_regions): New.
(new_omp_region): New.
(scan_omp_parallel): If parallel_nesting_level > 1, the
directive is nested within another parallel directive.
Set OMP_PARALLEL_FN.
(scan_omp_for): Do not try to handle combined parallel+for
cases.
Remove FIXME comment.
(scan_omp_nested): Remove.
(scan_omp_1): Do not call scan_omp_nested when
parallel_nesting_level is > 1.
Do not change the DECL_CONTEXT of local variables found.
(lookup_decl_in_outer_ctx): New.
(lower_rec_input_clauses): Rename from expand_rec_input_clauses.
(lower_lastprivate_clauses): Rename from expand_lastprivate_clauses.
(lower_reduction_clauses): Rename from expand_reduction_clauses.
(lower_copyprivate_clauses): Rename from expand_copyprivate_clauses.
If CTX is nested, lookup VAR in the outer context when
building copy assignment.
(lower_send_clauses): Rename from expand_send_clauses.
If CTX is nested, lookup VAR in the outer context when
building copy assignments.
(lower_send_shared_vars): Rename from expand_send_shared_vars.
If CTX is nested, lookup VAR in the outer context when
building copy assignments.
(expand_parallel_call): Rename from build_parallel_call.
Handle combined parallel+workshare cases.
Re-implement to emit code into the CFG.
(list2chain): New.
(expand_omp_parallel): Re-implement to emit code into the CFG.
Call move_sese_region_to_fn to outline the sub-graph
containing the parallel region.
(expand_omp_for_1): Remove.
(expand_omp_for_generic): Re-implement to emit code into the
CFG.
(expand_omp_for_static_nochunk): Likewise.
(expand_omp_for_static_chunk): Likewise.
(expand_omp_for): Likewise.
(expand_omp_sections): Likewise.
(remove_exit_barriers): New.
(expand_omp_synch): New.
(expand_omp): New.
(build_omp_regions_1): New.
(build_omp_regions): New.
(execute_expand_omp): New.
(gate_expand_omp): New.
(pass_expand_omp): Define.
(lower_omp_sections): Rename from expand_omp_sections.
Set OMP_SECTIONS_SECTIONS.
(lower_omp_single_simple): Rename from expand_omp_single_simple.
(lower_omp_single_copy): Rename from expand_omp_single_copy.
(lower_omp_single): Rename from expand_omp_simple.
(lower_omp_master): Rename from expand_omp_master.
(lower_omp_ordered): Rename from expand_omp_ordered.
(lower_omp_critical): Rename from expand_omp_critical.
(lower_omp_for_lastprivate): Rename from expand_omp_for_lastprivate.
(lower_omp_for): Re-implement.
(lower_omp_parallel): Re-implement.
(lower_regimplify): Rename from expand_regimplify.
(lower_omp_1): Rename from expand_omp_1.
If there are syntax errors in the program, replace every
OpenMP directive with NOP.
Call lower_omp_* instead of expand_omp_*.
(lower_omp): Rename from expand_omp.

* tree-gimple.c (is_gimple_stmt): Handle OMP_RETURN_EXPR.
* tree-gimple.h (enum omp_parallel_type): Remove.
(gimple_boolify): Declare extern.
(find_omp_clause, determine_parallel_type): Remove.

* gimple-low.c (lower_omp_directive): New.
(lower_stmt): Call it.
(record_vars_into): Move from ...
(record_vars): ... here.
Call record_vars_into with current_function_decl.

* gimplify.c (struct gimplify_ctx): Remove fields
combined_pre_p and combined_ctxp.  Update users.
(get_formal_tmp_var): Add documentation.
(gimple_boolify): Make extern.
(gimplify_expr_in_ctx): Remove.  Update callers.
(gimplify_omp_parallel): Do not assume that OMP_PARALLEL_BODY
will always be a BIND_EXPR.
(gimplify_expr): Handle OMP_RETURN_EXPR.
* tree.def (BLOCK): Remove documentation about BLOCK_TYPE_TAGS.
(OMP_PARALLEL): Add 3 operands.
(OMP_SECTIONS): Add 1 operand.
(OMP_RETURN_EXPR): Define.

* tree-inline.c (estimate_num_insns_1): Handle OpenMP directives.
(copy_tree_r): Restore TREE_CHAIN in OMP_CLAUSE_*.
* tree-iterator.c (alloc_stmt_list): Assert that we are not
creating a circular free list.
(free_stmt_list): Assert that we are not freeing stmt_list_cache.

* tree-flow.h (move_sese_region_to_fn): Declare.
(record_vars_into): Declare.
* tree-cfg.c (make_omp_sections_edges): New.
(make_exit_edges): Handle OMP_PARALLEL, OMP_FOR, OMP_SINGLE,
OMP_MASTER, OMP_ORDERED, OMP_CRITICAL, OMP_RETURN_EXPR,
OMP_SECTIONS and OMP_SECTION.
(is_ctrl_altering_stmt): Return true for OMP_DIRECTIVE_P.
(set_bb_for_stmt): Undo change to check currently_expanding_to_rtl.
(verify_stmt): Do not handle OMP_DIRECTIVE_P.
(gather_blocks_in_sese_region): New.
(struct move_stmt_d): Declare.
(move_stmt_r): New.
(move_block_to_fn): New.
(move_sese_region_to_fn): New.

* passes.c (init_optimization_passes): Schedule
pass_expand_omp after pass_init_datastructures.

* tree-ssa-operands.c (get_expr_operands): Handle
OMP_PARALLEL, OMP_SECTIONS, OMP_FOR, OMP_RETURN_EXPR,
OMP_SINGLE, OMP_MASTER, OMP_ORDERED, OMP_CRITICAL.

testsuite/

* testsuite/gcc.dg/gomp/for-13.c: Use -fdump-tree-ompexp.
* testsuite/gcc.dg/gomp/critical-1.c: Likewise.
* testsuite/gcc.dg/gomp/critical-3.c: Likewise.
* testsuite/gcc.dg/gomp/empty.c: Likewise.
* testsuite/gcc.dg/gomp/ordered-1.c: Likewise.
* testsuite/gcc.dg/gomp/for-4.c: Likewise.
* testsuite/gcc.dg/gomp/for-6.c: Likewise.
* testsuite/gcc.dg/gomp/master-3.c: Likewise.
* testsuite/gcc.dg/gomp/for-8.c: Likewise.
* testsuite/gcc.dg/gomp/for-10.c: Likewise.
* testsuite/gcc.dg/gomp/for-18.c: Likewise.
* testsuite/gcc.dg/gomp/for-5.c: Likewise.
* testsuite/gcc.dg/gomp/for-7.c: Likewise.
* testsuite/gcc.dg/gomp/for-9.c: Likewise.

From-SVN: r109969

18 years agotree-vrp.c (extract_range_from_assert): Refine the result range if the variable refer...
Jeff Law [Thu, 19 Jan 2006 16:30:59 +0000 (09:30 -0700)]
tree-vrp.c (extract_range_from_assert): Refine the result range if the variable referenced by the ASSERT_EXPR has a...

* tree-vrp.c (extract_range_from_assert): Refine the result range
if the variable referenced by the ASSERT_EXPR has a range and
either the tentative result range or the previous range is a
VR_ANTI_RANGE.

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

From-SVN: r109968

18 years ago* gcc.dg/pr25805.c: Fix misapplied patch.
Richard Sandiford [Thu, 19 Jan 2006 16:29:44 +0000 (16:29 +0000)]
* gcc.dg/pr25805.c: Fix misapplied patch.

From-SVN: r109967

18 years ago* c-decl.c (add_flexible_array_elts_to_size): Simplify vector accesses.
Richard Sandiford [Thu, 19 Jan 2006 16:28:31 +0000 (16:28 +0000)]
* c-decl.c (add_flexible_array_elts_to_size): Simplify vector accesses.

From-SVN: r109966

18 years ago* tree-vect-patterns.c (vect_pattern_recog_1): Prevent parse error.
Jan Hubicka [Thu, 19 Jan 2006 15:04:46 +0000 (16:04 +0100)]
* tree-vect-patterns.c (vect_pattern_recog_1): Prevent parse error.

From-SVN: r109962

18 years agocombine.c (try_combine): Do not worry about MEMs wrapped by USEs.
Paolo Bonzini [Thu, 19 Jan 2006 14:54:57 +0000 (14:54 +0000)]
combine.c (try_combine): Do not worry about MEMs wrapped by USEs.

2006-01-19  Paolo Bonzini  <bonzini@gnu.org>

* combine.c (try_combine): Do not worry about MEMs wrapped by USEs.
(expand_compound_operation, expand_field_assignment): Fail if the
bit lengths of an extract operation are out of range.
(make_extraction): Compute wanted_inner_mode based on the position
and length of the extraction.  Make it extraction_mode for non-constant
positions, and do not modify offset in that case.  When generating a
new MEM, use a mode that can hold the extraction while keeping correct
alignment.  Remove code that supported MEMs wrapped by USEs.
(simplify_shift_const_1, force_to_mode) <case USE>: Remove.

From-SVN: r109961

18 years agos390.md ("Y", "y"): New mode attribute.
Andreas Krebbel [Thu, 19 Jan 2006 14:28:01 +0000 (14:28 +0000)]
s390.md ("Y", "y"): New mode attribute.

2006-01-19  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/s390.md ("Y", "y"): New mode attribute.
("*cmpdi_ccs", "*cmpsi_ccs", "*adddi3_imm_cc", "*adddi3_carry1_cc",
"*adddi3_carry1_cconly", "*adddi3_carry2_cc", "*adddi3_carry2_cconly",
"*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2", "*adddi3_64",
"*addsi3_imm_cc", "*addsi3_carry1_cc",
"*addsi3_carry1_cconly", "*addsi3_carry2_cc", "*addsi3_carr2_cconly",
"*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2",
"*subdi3_borrow_cc", "*subdi3_borrow_cconly", "*subdi3_cc",
"*subdi3_cc2", "*subdi3_cconly", "*subdi3_cconly2", "*subdi3_64",
"*subsi3_borrow_cc", "*subsi3_borrow_cconly", "*subsi3_cc",
"*subsi3_cc2", "*subsi3_cconly", "*subsi3_cconly", "*subsi3_cconly2",
"addsi3", "subsi3"): Insn patterns removed.
("*add<mode>3_carry1_cc", "*add<mode>3_carry1_cconly",
"*add<mode>3_carry2_cc", "*add<mode>3_carry2_cconly", "*add<mode>3_cc",
"*add<mode>3_cconly", "*add<mode>3_cconly2", "*add<mode>3_imm_cc",
"*sub<mode>3_borrow_cc", "*sub<mode>3_borrow_cconly",
"*sub<mode>3_cc", "*sub<mode>3_cc2", "*sub<mode>3_cconly",
"*sub<mode>3_cconly2"): New insn patterns.
("addsi3", "subsi3"): New expanders.

From-SVN: r109957

18 years agoMakefile.in (tree-vect-patterns.o): Add rule for new file.
Dorit Nuzman [Thu, 19 Jan 2006 10:24:00 +0000 (10:24 +0000)]
Makefile.in (tree-vect-patterns.o): Add rule for new file.

        * Makefile.in (tree-vect-patterns.o): Add rule for new file.
        * tree-vect-analyze.c (vect_determine_vectorization_factor): Use
        existing STMT_VINFO_VECTYPE if available.
        (vect_mark_relevant): Add special handling for stmts that are
        marked as STMT_VINFO_IN_PATTERN_P.
        (vect_analyze_loop): Call vect_pattern_recog.
        * tree-vectorizer.c (new_stmt_vec_info): Initialize new fields.
        * tree-vectorizer.h (in_pattern_p, related_stmt): New fields in
        stmt_info.
        (STMT_VINFO_IN_PATTERN_P, STMT_VINFO_RELATED_STMT): New macros.
        (vect_recog_func_ptr): New function-pointer type.
        * tree-vect-patterns.c: New file.
        (vect_recog_widen_sum_pattern, vect_recog_widen_mult_pattern):
        (vect_recog_dot_prod_pattern, vect_pattern_recog):
        (vect_pattern_recog_1): New functions.
        (vect_pattern_recog_funcs): New array of function pointers.

        * tree-vectorizer.h (ternary_op): New enum value.
        * tree-vect-transform.c (vect_create_epilog_for_reduction): Added
        declaration. Revised documentation. Removed redundant dump prints.
        Removed redundant argument. Added support for reduction patterns.
        (vectorizable_reduction): Added support for reduction patterns.
        (vect_transform_stmt): Added support for patterns.

        * expr.c (expand_expr_real_1): Added case for DOT_PROD_EXPR.
        * genopinit.c (udot_prod_optab, sdot_prod_optab): Initialize.
        * optabs.c (optab_for_tree_code): Added case for DOT_PROD_EXPR.
        (expand_widen_pattern_expr): New function.
        (init_optabs): Initialize new optabs udot_prod_optab,
        sdot_prod_optab.
        * optabs.h (OTI_sdot_prod, OTI_udot_prod): New.
        (sdot_prod_optab, udot_prod_optab): Define new optabs.
        (expand_widen_pattern_expr): New function declaration.
        * tree.def (DOT_PROD_EXPR, WIDEN_SUM_EXPR, WIDEN_MULT_EXPR): New
        tree-codes.
        * tree-inline.c (estimate_num_insns_1): Added cases for new
        tree-codes DOT_PROD_EXPR, WIDEN_SUM_EXPR, WIDEN_MULT_EXPR.
        * tree-pretty-print.c (dump_generic_node): Likewise.
        (op_prio): Likewise.
        (op_symbol): Added cases for WIDEN_SUM_EXPR, WIDEN_MULT_EXPR.
        * tree-ssa-operands.c (get_expr_operands): Added case for
        DOT_PROD_EXPR.
        * tree-vect-patterns.c (widened_name_p): New function.
        (vect_recog_dot_prod_pattern): Added function implementation.
        * tree-vect-transform.c (get_initial_def_for_reduction): Added
        cases for DOT_PROD_EXPR, WIDEN_SUM_EXPR.
        * config/rs6000/altivec.md (udot_prod<mode>, sdot_prodv8hi): New.
        * config/i386/sse.md (sdot_prodv8hi, udot_prodv4si): New.

        * expr.c (expand_expr_real_1): Added case for WIDEN_SUM_EXPR.
        * genopinit.c (widen_ssum_optab, widen_usum_optab): Initialize.
        * optabs.c (optab_for_tree_code): Added case for WIDEN_SUM_EXPR.
        (init_optabs): Initialize new optabs widen_ssum_optab,
        widen_usum_optab.
        * optabs.h (OTI_widen_ssum, OTI_widen_usum): New.
        (widen_ssum_optab, widen_usum_optab): Define new optabs.
        * tree-vect-generic.c: (expand_vector_operations_1): Check type of
        use instead of type of def.
        * tree-vect-patterns.c (vect_recog_widen_sum_pattern): Added
        function implementation.
        * config/rs6000/altivec.md (widen_usum<mode>, widen_ssumv16qi,
        widen_ssumv8hi): New.

        * doc/tm.texi (ssum_widen, usum_widen, sdot_prod, udot_prod): New
        patterns.

From-SVN: r109954

18 years agogfortranspec.c: Update copyright years.
Tobias Schlüter [Thu, 19 Jan 2006 09:53:36 +0000 (10:53 +0100)]
gfortranspec.c: Update copyright years.

* gfortranspec.c: Update copyright years.
* trans.c: Likewise.
* trans-array.c: Likewise.
* trans-array.h: Likewise.
* trans-decl.c: Likewise.
* trans-stmt.c: Likewise.
* trans-stmt.h: Likewise.
* trans-types.c: Likewise.

From-SVN: r109951

18 years agore PR c++/16829 (default parameter can be not one of the last in function)
Volker Reichelt [Thu, 19 Jan 2006 09:51:57 +0000 (09:51 +0000)]
re PR c++/16829 (default parameter can be not one of the last in function)

PR c++/16829
* decl.c (start_preparsed_function): Check default arguments
unconditionally.
* name-lookup.c (pushdecl_maybe_friend): Check default arguments
of all functions and function templates.
* parser.c (cp_parser_late_parsing_default_args): Check default
arguments.
* decl2.c (check_default_args): Set missing default arguments to
error_mark_node.

* g++.dg/other/default2.C: New test.
* g++.dg/other/default3.C: New test.

From-SVN: r109950

18 years agore PR c/25805 (Incorrect handling of zero-initialized flexible arrays)
Richard Sandiford [Thu, 19 Jan 2006 07:35:47 +0000 (07:35 +0000)]
re PR c/25805 (Incorrect handling of zero-initialized flexible arrays)

PR c/25805
* c-decl.c (add_flexible_array_elts_to_size): New function.
(finish_decl): Use it.

testsuite/
PR c/25805
* gcc.dg/pr25805.c: New file.

From-SVN: r109946