platform/upstream/gcc.git
17 years agotuple: Consistent include guards.
Benjamin Kosnik [Tue, 5 Dec 2006 10:57:09 +0000 (10:57 +0000)]
tuple: Consistent include guards.

2006-12-05  Benjamin Kosnik  <bkoz@redhat.com>

* include/tr1/tuple: Consistent include guards.
* include/tr1/type_traits: Same.
* include/tr1/array: Same.

From-SVN: r119539

17 years agobfin.c (output_file_start): Fix comment which referred to ia64_override_options.
Bernd Schmidt [Tue, 5 Dec 2006 10:35:36 +0000 (10:35 +0000)]
bfin.c (output_file_start): Fix comment which referred to ia64_override_options.

* config/bfin/bfin.c (output_file_start): Fix comment which referred to
ia64_override_options.

From-SVN: r119536

17 years agocfgexpand.c (expand_one_var): Guard expand_one_stack_var by really_expand.
Jan Hubicka [Tue, 5 Dec 2006 10:15:28 +0000 (11:15 +0100)]
cfgexpand.c (expand_one_var): Guard expand_one_stack_var by really_expand.

* cfgexpand.c (expand_one_var): Guard expand_one_stack_var by
really_expand.

From-SVN: r119535

17 years agortlanal.c (note_uses): Deal with SEQUENCEs.
Bernd Schmidt [Tue, 5 Dec 2006 08:49:56 +0000 (08:49 +0000)]
rtlanal.c (note_uses): Deal with SEQUENCEs.

* rtlanal.c (note_uses): Deal with SEQUENCEs.
* config/bfin/bfin.c: Include "timevar.h".
(bfin_flag_schedule_insns2, splitting_for_sched,
bfin_flag_var_tracking): New variables.
(print_operand): Handle '%!'.
(override_options): Disable normal sched2 pass, instead set
bfin_flag_schedule_insns2 for reorg to handle it.
(output_file_start): Likewise for var-tracking.
(bfin_optimize_loop): Take some care not to stumble over SEQUENCEs.
(gen_one_bundle, bfin_gen_bundles, type_for_anomaly, trapping_loads_p):
New functions.
(bfin_reorg): Do second scheduling pass here, and call
bfin_gen_bundles.  Use type_for_anomaly and trapping_loads_p instead
of examining insns directly.  If bfin_flag_var_tracking, call
var-tracking pass when done with everything else.
* config/bfin/bfin.h (PRINT_OPERAND_PUNCT_VALID_P): '!' is valid.
* config/bfin/bfin.md (UNSPEC_32BIT): New constant.
(movsi_insn32): New pattern, with two new splits to create it
before the final scheduling pass.
(neghi2): Not a dsp32 insn, rather alu0.
(movbi, pushsi_insn, popsi_insn, movsi_insn, movv2hi_insn, movhi_insn,
movqi_insn, movsf_insn, movsi_insv, extendhisi2, zero_extendhisi2,
extendqihi2, extendqisi2, zero_extendqihi2, zero_extendqisi2,
mulhisi3, umulhisi3, ssadsi3, sssubsi3, smaxsi3, sminsi3, abssi2,
ssnegsi2, signbitssi2, smaxhi3, sminhi3, abshi2, ssneghi2, signbitshi2,
movhi_low2high, movhi_high2high, movhi_low2low, movhi_high2low,
movhiv2hi_low, movhiv2hi_high, composev2hi, packv2hi, movv2hi_hi,
ssaddhi3, sssubhi3, addv2hi3, ssaddv2hi3, subv2hi3, sssubv2hi3,
addsubv2hi3, subaddv2hi3, ssaddsubv2hi3, sssubaddv2hi3, sublohiv2hi3,
subhilov2hi3, sssublohiv2hi3, sssubhilov2hi3, addlohiv2hi3,
addhilov2hi3, ssaddlohiv2hi3, ssaddhilov2hi3, sminv2hi3, smaxv2hi3,
flag_mulhi, flag_mulhisi, flag_mulhisi_parts, flag_machi,
flag_machi_acconly, flag_macinithi, flag_macinit1hi, mulv2hi3,
flag_mulv2hi, flag_mulv2hi_parts, flag_macv2hi_parts,
flag_macv2hi_parts_acconly, flag_macinitv2hi_parts,
flag_macinit1v2hi_parts, mulhisi_ll, mulhisi_lh, mulhisi_hl,
mulhisi_hh, ssnegv2hi2, absv2hi2, ssashiftv2hi3, ssashifthi3,
lshiftv2hi3, lshifthi3): Use '%!' to terminate all dsp32/load/store
variants instead of ';'.
(ror_one, rol_one): Likewise.  Make them dsp32 insns.
(ashlsi3_insn, ashrsi3, lshrsi3): Add dsp32 variants.
(align8, align16, align24): Now named patterns; also using '%!'.
(mnop): New insn.

From-SVN: r119534

17 years agodarwin.h, [...]: Fix comment typos.
Kazu Hirata [Tue, 5 Dec 2006 08:27:27 +0000 (08:27 +0000)]
darwin.h, [...]: Fix comment typos.

* config/i386/darwin.h, config/spu/spu.c, tree-ssa-live.c,
tree-vect-generic.c, tree-vect-transform.c: Fix comment typos.

From-SVN: r119533

17 years agospu-protos.c (spu_split_address): Add.
Trevor Smigiel [Tue, 5 Dec 2006 03:55:38 +0000 (03:55 +0000)]
spu-protos.c (spu_split_address): Add.

* config/spu/spu-protos.c (spu_split_address): Add.
* config/spu/spu.c (spu_split_address): Add.
(print_operand): Handle HIGH.
(spu_legitimate_address):  Don't test for aligned CONST.
(spu_expand_mov):  Don't split addresses here.
* config/spu/constraints.md (A): Don't test legitimate_const.
* config/spu/spu.md: Add split of movsi patterns for PIC mode.
(ceq_di): Use correct predicates.

From-SVN: r119532

17 years agodarwin.h: Update copyright notice.
Eric Christopher [Tue, 5 Dec 2006 02:23:18 +0000 (02:23 +0000)]
darwin.h: Update copyright notice.

2006-12-04  Eric Christopher  <echristo@apple.com>

        * config/darwin.h: Update copyright notice.
        * config/i386/darwin.h: Ditto.

From-SVN: r119531

17 years agore PR libfortran/30005 (Open errors (not/already exists etc.): show also the file...
Jerry DeLisle [Tue, 5 Dec 2006 00:51:26 +0000 (00:51 +0000)]
re PR libfortran/30005 (Open errors (not/already exists etc.): show also the file name)

2006-12-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/30005
* io/open.c: Add errno.h include.
(new_unit): Add new error messages with file name for file open.

From-SVN: r119530

17 years agotree-ssa-alias.c (compute_flow_sensitive_aliasing): Call set_used_smts.
Daniel Berlin [Tue, 5 Dec 2006 00:44:24 +0000 (00:44 +0000)]
tree-ssa-alias.c (compute_flow_sensitive_aliasing): Call set_used_smts.

2006-12-04  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-alias.c (compute_flow_sensitive_aliasing): Call
set_used_smts.
* tree-ssa-structalias.c (set_used_smts): Export.
(find_what_p_points_to): Don't call set_used_smts here.
* tree-ssa-structalias.h (set_used_smts): Add prototype.

From-SVN: r119528

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

From-SVN: r119524

17 years agocp-objcp-common.c (cp_expr_size): Return NULL in the case size is undefined.
Jan Hubicka [Mon, 4 Dec 2006 22:51:42 +0000 (23:51 +0100)]
cp-objcp-common.c (cp_expr_size): Return NULL in the case size is undefined.

* cp-objcp-common.c (cp_expr_size): Return NULL in the case
size is undefined.

* builtins.c (fold_builtin_memory_op): Check that expr_size match.
* explow.c (expr_size, int_expr_size): Assert that size is non_NULL.

From-SVN: r119515

17 years agoMAINTAINERS (Non-Algorithmic Maintainers): New section.
Richard Guenther [Mon, 4 Dec 2006 22:29:46 +0000 (22:29 +0000)]
MAINTAINERS (Non-Algorithmic Maintainers): New section.

2006-12-04  Richard Guenther  <rguenther@suse.de>

* MAINTAINERS (Non-Algorithmic Maintainers): New section.
(Non-Algorithmic Maintainers): Move over non-algorithmic
loop optimizer maintainers, add myself as a non-algorithmic
middle-end maintainer.

From-SVN: r119514

17 years agore PR libgomp/29949 (implement argument checking for user accessable runtime routines)
Daniel Franke [Mon, 4 Dec 2006 21:35:19 +0000 (16:35 -0500)]
re PR libgomp/29949 (implement argument checking for user accessable runtime routines)

PR libgomp/29949
* env.c (omp_set_num_threads): Set illegal thread count to 1.

From-SVN: r119511

17 years agoPR libstdc++/29989 (again)
Paolo Carlini [Mon, 4 Dec 2006 21:11:52 +0000 (21:11 +0000)]
PR libstdc++/29989 (again)

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

PR libstdc++/29989 (again)
* include/bits/c++config: #undef min and max.
* testsuite/18_support/numeric_limits/29989.cc: New.

From-SVN: r119510

17 years agoMAINTAINERS (Write After Approval): Add myself.
Daniel Franke [Mon, 4 Dec 2006 20:45:41 +0000 (15:45 -0500)]
MAINTAINERS (Write After Approval): Add myself.

2006-12-04  Daniel Franke  <franke.daniel@gmail.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r119509

17 years agore PR fortran/29962 (Initialization expressions)
Tobias Burnus [Mon, 4 Dec 2006 20:02:43 +0000 (21:02 +0100)]
re PR fortran/29962 (Initialization expressions)

fortran/
2006-12-04  Tobias Burnus  <burnus@net-b.de>

PR fortran/29962
* expr.c (check_intrinsic_op): Allow noninteger exponents for F2003.

testsuite/
2006-12-04  Tobias Burnus  <burnus@net-b.de>

PR fortran/29962
* initialization_4.f90: Test noninteger exponents (-std=f95).
* initialization_5.f90: New test for noninteger exponents with -std=f2003

From-SVN: r119505

17 years ago[multiple changes]
Paul Thomas [Mon, 4 Dec 2006 19:30:33 +0000 (19:30 +0000)]
[multiple changes]

2006-12-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29821
* resolve.c (resolve_operator): Only return result of
gfc_simplify_expr if expression is constant.

2006-12-04  Paul  Thomas <pault@gcc.gnu.org>

PR fortran/29821
* gfortran.dg/parameter_array_section_1.f90: New test.

From-SVN: r119504

17 years agotree-ssa-alias.c (compute_may_aliases): Compute flow sensitive before flow insensitive.
Daniel Berlin [Mon, 4 Dec 2006 19:07:05 +0000 (19:07 +0000)]
tree-ssa-alias.c (compute_may_aliases): Compute flow sensitive before flow insensitive.

2006-12-04  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-alias.c (compute_may_aliases):
Compute flow sensitive before flow insensitive.
(compute_flow_sensitive_aliasing): Don't try to add
a symbol memory tag to itself.

* alias.h (alias_set_subset_of): New prototype.

* alias.c (alias_set_subset_of): New function.

* tree-ssa-structalias.c: Update comments.
(struct variable_info): Add finished_solution.
(new_varinfo): Set finished solution to NULL.
(var_escaped_vars): Remove.
(escaped_vars_tree): Remove.
(escaped_vars_id): Remove.
(nonlocal_vars_id): Remove.
(constraint_expr_type): Add INCLUDES.
(graph_size): Removed.
(dump_constraint): Support INCLUDES.
(build_constraint_graph): Ditto.
(collapse_nodes): Add merge_solutions argument.
Don't merge attributes.
(process_unification_queue): Just use collapse_nodes.
(perform_var_substitution): Update call to collapse_nodes.
(get_constraint_exp_from_ssa_var): Use INCLUDES.
(process_constraint): Fix non-field sensitive handling
Handle includes.
(get_constraint_for): Use INCLUDES.
(make_constraint_from_anything): Renamed from
make_constraint_from_escaped.
(make_constraint_to_escaped): Removed.
(find_global_initializers): Removed.
(create_variable_info_for): Do not make constraints to escaped
vars anymore.
(dump_solution_for_var): Don't print out the equivalent points-to
sets, just use the name of the variable it shares it with.
(intra_create_variable_infos): Use INCLUDES.
Change nonlocal variable sets to anything sets.
(init_base_vars): Remove escaped_vars and nonlocal_var
initialization.
(find_escape_constraints): Removed.
(delete_points_to_sets): Remove dead code.
(used_smt_calculated): New variable.
(set_used_smts): New function.
(merge_smts_into): New function.
(find_what_p_points_to): Modify to use SMTs.
(create_nonlocal_var): Remove.

* tree-ssa-operands.c (access_can_touch_variable): Remove
reference to nonlocal_all.

* tree-ssa.c (verify_name_tags): Remove.

From-SVN: r119502

17 years agore PR c++/29733 (ICE on initialization of function type)
Mark Mitchell [Mon, 4 Dec 2006 18:08:11 +0000 (18:08 +0000)]
re PR c++/29733 (ICE on initialization of function type)

PR c++/29733
* pt.c (tsubst_decl): Disallow variables of function type.
PR c++/29733
* g++.dg/template/crash61.C: New test.

From-SVN: r119500

17 years agore PR c++/29632 (ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969)
Mark Mitchell [Mon, 4 Dec 2006 18:00:32 +0000 (18:00 +0000)]
re PR c++/29632 (ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969)

PR c++/29632
* call.c (add_builtin_candidate): Do not permit NULL pointer
constants to be compared with template parameters.
PR c++/29632
* g++.dg/template/error23.C: New test.

From-SVN: r119499

17 years agounwind-arm.c: Adjust __cxa_type_match declaration.
Carlos O'Donell [Mon, 4 Dec 2006 17:25:36 +0000 (17:25 +0000)]
unwind-arm.c: Adjust __cxa_type_match declaration.

gcc/

2006-12-04  Carlos O'Donell  <carlos@codesourcery.com>

* config/arm/unwind-arm.c: Adjust __cxa_type_match declaration.
(__gnu_unwind_pr_common): Pass is_reference to __cxa_type_match.

From-SVN: r119498

17 years agoSwitch live on entry to a per block basis from per variable.
Andrew MacLeod [Mon, 4 Dec 2006 14:26:37 +0000 (14:26 +0000)]
Switch live on entry to a per block basis from per variable.

* tree-outof-ssa.c (coalesce_ssa_name): Use calculate_live_ranges.
* tree-ssa-live.c (new_tree_live_info, delete_tree_live_info): Update.
(add_livein_if_notdef): Delete.
(loe_visit_block): New.  Propogate live on entry info for a block into
each predecessor.  If it changes, make sure it is visited again.
(live_worklist): Visit every block and update the live on entry info
for preds.  Iterate over any that changed.
(set_var_live_on_entry): Populate the live on entry blocks with bits
based on the immediate uses of a var.
(calculate_live_on_entry): Remove.
(calculate_live_on_exit): Calculate live on exit based on the newly
oriented live on entry bits.
(calculate_live_ranges): Build live on entry and exit vectors.
(dump_live_info): Use new orientation of live on entry bitmaps.
(verify_live_on_entry): New.  Split out verification code from old
calculate_live_on_entry routine.
* tree-ssa-live.h (struct tree_live_info_d): Add Working stack.
(live_entry_blocks): Rename to live_on_entry and return bitmap for a
basic_block instead of for a partition.
(live_merge_and_clear): Add asserts.
(make_live_on_entry): Set partition bit in basic block vector.

From-SVN: r119495

17 years agosse-18.c: Pass if CPU has no SSE2 support.
Uros Bizjak [Mon, 4 Dec 2006 12:59:11 +0000 (13:59 +0100)]
sse-18.c: Pass if CPU has no SSE2 support.

* gcc.target/i386/sse-18.c: Pass if CPU has no SSE2 support.

From-SVN: r119493

17 years agore PR fortran/29916 ([4.1 only] Dimension of a function result as host association...
Paul Thomas [Mon, 4 Dec 2006 11:16:12 +0000 (11:16 +0000)]
re PR fortran/29916 ([4.1 only] Dimension of a function result as host association does not work)

fortran/
2006-12-04  Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/29916
    * resolve.c (resolve_symbol): Allow host-associated variables
      in the specification expression of an array-valued function.
    * expr.c (check_restricted): Accept host-associated dummy
      array indices.

testsuite/
2006-12-04  Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/29916
    * gfortran.dg/host_dummy_index_1.f90: Added additional test.

From-SVN: r119489

17 years agotls.m4 (GCC_CHECK_TLS): Do not test TLS with static linking if static linking doesn...
Eric Botcazou [Mon, 4 Dec 2006 11:10:38 +0000 (12:10 +0100)]
tls.m4 (GCC_CHECK_TLS): Do not test TLS with static linking if static linking doesn't even work.

config/
        * tls.m4 (GCC_CHECK_TLS): Do not test TLS with static linking
        if static linking doesn't even work.

libgomp/
        * configure: Regenerate.

libmudflap/
        * configure: Regenerate.

libjava/
        * configure: Regenerate.

libstdc++-v3/
        * configure: Regenerate.

From-SVN: r119487

17 years agore PR middle-end/29947 (OpenMP parallel for fails for reversed loop range)
Jakub Jelinek [Mon, 4 Dec 2006 10:26:00 +0000 (11:26 +0100)]
re PR middle-end/29947 (OpenMP parallel for fails for reversed loop range)

PR libgomp/29947
* omp-low.c (expand_omp_for_static_nochunk,
expand_omp_for_static_chunk): Do all arithmetics in signed rather than
unsigned type.

* loop.c (gomp_loop_init): Make parameters signed.  Set ws->end to
start if there shouldn't be any loop iterations.
(gomp_loop_ordered_static_start): Remove start == end test.
* testsuite/libgomp.c/pr29947-1.c: New test.
* testsuite/libgomp.c/pr29947-2.c: New test.

From-SVN: r119485

17 years agore PR middle-end/29965 (OpenMP vs always throw in a loop)
Jakub Jelinek [Mon, 4 Dec 2006 10:20:51 +0000 (11:20 +0100)]
re PR middle-end/29965 (OpenMP vs always throw in a loop)

PR middle-end/29965
* omp-low.c (determine_parallel_type): Don't try to optimize combined
parallels if region->exit or region->inner->exit is NULL.
(expand_omp_parallel): Handle NULL region->exit even if cfg is already
built.
(expand_omp_for_generic): Handle NULL region->cond and region->exit.
(expand_omp_for): Use expand_omp_for_generic if either region->cond
or region->exit is NULL.
(expand_omp_sections): Handle NULL region->cond or region->exit.
(expand_omp_synch):

* gcc.dg/gomp/pr29965-1.c: New test.
* gcc.dg/gomp/pr29965-2.c: New test.
* gcc.dg/gomp/pr29965-3.c: New test.
* gcc.dg/gomp/pr29965-4.c: New test.
* gcc.dg/gomp/pr29965-5.c: New test.
* gcc.dg/gomp/pr29965-6.c: New test.
* g++.dg/gomp/pr29965-1.C: New test.
* g++.dg/gomp/pr29965-2.C: New test.
* g++.dg/gomp/pr29965-3.C: New test.
* g++.dg/gomp/pr29965-4.C: New test.
* g++.dg/gomp/pr29965-5.C: New test.
* g++.dg/gomp/pr29965-6.C: New test.
* g++.dg/gomp/pr29965-7.C: New test.
* g++.dg/gomp/pr29965-8.C: New test.
* g++.dg/gomp/pr29965-9.C: New test.
* g++.dg/gomp/pr29965-10.C: New test.

From-SVN: r119483

17 years agosp64-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Delete.
Eric Botcazou [Mon, 4 Dec 2006 09:31:48 +0000 (10:31 +0100)]
sp64-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Delete.

* config/sparc/sp64-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Delete.
* config/sparc/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.

From-SVN: r119482

17 years agotree.c (walk_type_fields): Do not handle TYPE_MIN_VALUE and TYPE_MAX_VALUE for scalar...
Eric Botcazou [Mon, 4 Dec 2006 07:47:32 +0000 (07:47 +0000)]
tree.c (walk_type_fields): Do not handle TYPE_MIN_VALUE and TYPE_MAX_VALUE for scalar types here but...

* tree.c (walk_type_fields): Do not handle TYPE_MIN_VALUE and
TYPE_MAX_VALUE for scalar types here but...
(walk_tree): ...there instead.  Return NULL_TREE if the TYPE_DECL
is attached an error mark, and the return value of the callback
if it is not NULL_TREE.

cp/
* pt.c (for_each_template_parm_r) <INTEGER_TYPE>: New case.
Call for_each_template_parm on TYPE_MIN_VALUE and TYPE_MAX_VALUE.

testsuite/
* gnat.dg/pointer_variable_bounds.adb: New test.
* gnat.dg/pointer_variable_bounds.ads: Likewise.
* gnat.dg/pointer_variable_bounds_q.ads: Likewise.

From-SVN: r119481

17 years agostack-prot-kernel.c: Skip for x86_64-*-darwin.
Eric Christopher [Mon, 4 Dec 2006 06:35:33 +0000 (06:35 +0000)]
stack-prot-kernel.c: Skip for x86_64-*-darwin.

2006-12-03  Eric Christopher  <echristo@apple.com>

        * gcc.target/i386/stack-prot-kernel.c: Skip for x86_64-*-darwin.

From-SVN: r119480

17 years ago* config/spu/spu.md (_mulv4si3): Remove unused local variables.
Ben Elliston [Mon, 4 Dec 2006 05:38:21 +0000 (05:38 +0000)]
* config/spu/spu.md (_mulv4si3): Remove unused local variables.

From-SVN: r119479

17 years agore PR c++/14329 ([4.1 only] badly formatted warnings for SRA replacements used uninit...
Richard Henderson [Mon, 4 Dec 2006 02:24:42 +0000 (18:24 -0800)]
re PR c++/14329 ([4.1 only] badly formatted warnings for SRA replacements used uninitialized)

2006-12-03  Richard Henderson  <rth@redhat.com>
            Andrew Pinski  <pinskia@gmail.com>

        PR C++/14329
        * error.c (cp_printer) <'D'>: Handle DECL_DEBUG_EXPR.

2006-12-03  Richard Henderson  <rth@redhat.com>
            Andrew Pinski  <pinskia@gmail.com>

        PR C++/14329
        * g++.dg/warn/unit-1.C: New test.

Co-Authored-By: Andrew Pinski <pinskia@gmail.com>
From-SVN: r119478

17 years agore PR target/24598 (Need to support odcctools and its ablity to use --prefix and...
Eric Christopher [Mon, 4 Dec 2006 02:10:10 +0000 (02:10 +0000)]
re PR target/24598 (Need to support odcctools and its ablity to use --prefix and libtool)

2006-12-03  Eric Christopher  <echristo@apple.com>

        PR target/24598
        * config/t-slibgcc-darwin: Pass -install_name.
        * config/darwin.h (LINK_COMMAND_SPEC): Remove use of
        libtool. Only pass through options that the linker recognizes.
        (LINK_SPEC): Update comment. Translate options.
        (STARTFILE_SPEC): Add dylib1.o for shared libraries.
        * config/darwin9.h (LINK_COMMAND_SPEC): Ditto above.

From-SVN: r119477

17 years agoDaily bump.
GCC Administrator [Mon, 4 Dec 2006 00:18:04 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r119475

17 years agovisibility-11.c: Compile with -mstringop-strategy=libcall.
Uros Bizjak [Sun, 3 Dec 2006 20:19:15 +0000 (21:19 +0100)]
visibility-11.c: Compile with -mstringop-strategy=libcall.

* gcc.dg/visibility-11.c: Compile with -mstringop-strategy=libcall.

From-SVN: r119470

17 years agovect.exp: Enable tests to run on spu.
Dorit Nuzman [Sun, 3 Dec 2006 20:05:31 +0000 (20:05 +0000)]
vect.exp: Enable tests to run on spu.

        * g++.dg/vect/vect.exp: Enable tests to run on spu.
        * gcc.dg/vect/vect.exp: Enable tests to run on spu.
        * gcc.dg/vect/no-section-anchors-vect-69.c: Reduce array size.
        * gcc.dg/vect/vect-70.c: Reduce array size.
        * gcc.dg/vect/fast-math-vect-reduc-7.c: Xfail for
        vect_no_compaer_double targets.
        * lib/target-supports.exp: Add spu to vect_no_align, no_vect_int_max,
        vect_float, vect_double, and vect_int.

* config/spu/spu.md (smaxv4sf3, sminv4sf3): New.

From-SVN: r119469

17 years agore PR target/30041 (FAIL: gcc.target/i386/sse3-movddup.c (internal compiler error))
Uros Bizjak [Sun, 3 Dec 2006 19:40:06 +0000 (20:40 +0100)]
re PR target/30041 (FAIL: gcc.target/i386/sse3-movddup.c (internal compiler error))

        PR target/30041
        * config/i386/sse.md ("*sse3_movddup"): Use operands[0] and
        operands[1] in insn constraint.  Correct type attribute to sselog1.

From-SVN: r119468

17 years agore PR libstdc++/29989 (missed #undef min/max in <limits>)
Paolo Carlini [Sun, 3 Dec 2006 17:15:46 +0000 (17:15 +0000)]
re PR libstdc++/29989 (missed #undef min/max in <limits>)

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

PR libstdc++/29989
* include/bits/stl_algobase.h: Remove min and max #undefs.

From-SVN: r119467

17 years agopr16105.c: Remove xfail on vect_no_align targets.
Dorit Nuzman [Sun, 3 Dec 2006 15:56:34 +0000 (15:56 +0000)]
pr16105.c: Remove xfail on vect_no_align targets.

        * gcc.dg/vect/pr16105.c: Remove xfail on vect_no_align targets. Add
        test for loop versioning on vect_no_align targets.
        * gcc.dg/vect/pr20122.c: Likewise.
        * gcc.dg/vect/vect-105.c: Likewise.
        * gcc.dg/vect/vect-42.c: Likewise.
        * gcc.dg/vect/vect-43.c: Likewise.
        * gcc.dg/vect/vect-74.c: Likewise.
        * gcc.dg/vect/vect-75.c: Likewise.
        * gcc.dg/vect/vect-multitypes-3.c: Likewise.
        * gcc.dg/vect/vect-multitypes-6.c: Likewise.
        * gcc.dg/vect/vect-8.c: Remove xfail on vect_no_align targets.
        * gcc.dg/vect/vect-30.c: Remove xfail on vect_no_align targets.

From-SVN: r119466

17 years agoconfigure.in: Update error message for missing GMP/MPFR.
Kaveh R. Ghazi [Sun, 3 Dec 2006 14:37:06 +0000 (14:37 +0000)]
configure.in: Update error message for missing GMP/MPFR.

* configure.in: Update error message for missing GMP/MPFR.

* configure: Regenerate.

From-SVN: r119465

17 years agore PR fortran/29642 (Fortran 2003: VALUE Attribute (call by value not call by referen...
Paul Thomas [Sun, 3 Dec 2006 07:18:22 +0000 (07:18 +0000)]
re PR fortran/29642 (Fortran 2003: VALUE Attribute (call by value not call by reference for actual arguments))

2006-12-03  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29642
* trans-expr.c (gfc_conv_variable): A character expression with
the VALUE attribute needs an address expression; otherwise all
other expressions with this attribute must not be dereferenced.
(gfc_conv_function_call): Pass expressions with the VALUE
attribute by value, using gfc_conv_expr.
* symbol.c (check_conflict): Add strings for INTENT OUT, INOUT
and VALUE.  Apply all the constraints associated with the VALUE
attribute.
(gfc_add_value): New function.
(gfc_copy_attr): Call it for VALUE attribute.
* decl.c (match_attr_spec): Include the VALUE attribute.
(gfc_match_value): New function.
* dump-parse-tree.c (gfc_show_attr): Include VALUE.
* gfortran.h : Add value to the symbol_attribute structure and
add a prototype for gfc_add_value
* module.c (mio_internal_string): Include AB_VALUE in enum.
(attr_bits): Provide the VALUE string for it.
(mio_symbol_attribute): Read or apply the VLUE attribute.
* trans-types.c (gfc_sym_type): Variables with the VLAUE
attribute are not passed by reference!
* resolve.c (was_declared): Add value to those that return 1.
(resolve_symbol): Value attribute requires dummy attribute.
* match.h : Add prototype for gfc_match_public.
* parse.c (decode_statement): Try to match a VALUE statement.

2006-12-03  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29642
* gfortran.dg/value_1.f90 : New test.
* gfortran.dg/value_2.f90 : New test.
* gfortran.dg/value_3.f90 : New test.
* gfortran.dg/value_4.f90 : New test.
* gfortran.dg/value_4.c : Called from value_4.f90.

From-SVN: r119461

17 years agoDaily bump.
GCC Administrator [Sun, 3 Dec 2006 00:17:51 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119459

17 years agore PR target/30040 (-mtune=native is wrong for Core 2 Duo and Core Duo)
H.J. Lu [Sat, 2 Dec 2006 22:18:25 +0000 (22:18 +0000)]
re PR target/30040 (-mtune=native is wrong for Core 2 Duo and Core Duo)

2006-12-02  H.J. Lu  <hongjiu.lu@intel.com>

PR target/30040
* config/i386/driver-i386.c: Include "coretypes.h" and "tm.h".
(bit_SSSE3): New.
(host_detect_local_cpu): Check -mtune= vs. -march=. Rewrite
processor detection.

* config/i386/i386.h (CC1_CPU_SPEC): Add -mtune=native for
-march=native if there is no -mtune=*.

* config/i386/x-i386 (driver-i386.o): Also depend on $(TM_H)
coretypes.h.

From-SVN: r119454

17 years agoconfigure.tgt: Force initial-exec TLS model on Linux only.
Eric Botcazou [Sat, 2 Dec 2006 20:01:34 +0000 (21:01 +0100)]
configure.tgt: Force initial-exec TLS model on Linux only.

* configure.tgt: Force initial-exec TLS model on Linux only.

From-SVN: r119452

17 years agoacinclude.m4: Allow OPTIMIZE_CXXFLAGS to be set by configure.host.
Howard Hinnant [Sat, 2 Dec 2006 17:06:57 +0000 (17:06 +0000)]
acinclude.m4: Allow OPTIMIZE_CXXFLAGS to be set by configure.host.

2006-12-02  Howard Hinnant  <hhinnant@apple.com>

* acinclude.m4: Allow OPTIMIZE_CXXFLAGS to be set by configure.host.
* configure.host: Set OPTIMIZE_CXXFLAGS to -fvisibility-inlines-hidden
for x86/darwin.
* configure: Regenerate.

From-SVN: r119450

17 years agore PR c++/30033 (ICE on valid with --std=c++0x (static_assert))
Andrew Pinski [Sat, 2 Dec 2006 17:01:04 +0000 (09:01 -0800)]
re PR c++/30033 (ICE on valid with --std=c++0x (static_assert))

2006-12-02  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR C++/30033
        * decl.c (cp_tree_node_structure): Handle STATIC_ASSERT.

2006-12-02  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR C++/30033
        *  g++.dg/cpp0x/static_assert4.C: New testcase.

From-SVN: r119449

17 years agofix testcase from previous commit
Lee Millward [Sat, 2 Dec 2006 16:54:35 +0000 (16:54 +0000)]
fix testcase from previous commit

From-SVN: r119448

17 years agoconfigure.in: Update MPFR version in error message.
Kaveh R. Ghazi [Sat, 2 Dec 2006 16:52:15 +0000 (16:52 +0000)]
configure.in: Update MPFR version in error message.

* configure.in: Update MPFR version in error message.

* configure: Regenerate.

gcc:
* doc/install.texi: Update recommended MPFR version.  Remove
obsolete reference to cumulative patch.

gcc/testsuite:
* gcc.dg/torture/builtin-sin-mpfr-1.c: Update MPFR comment.

From-SVN: r119447

17 years agore PR c/27953 (ICE with invalid function definitions)
Lee Millward [Sat, 2 Dec 2006 16:34:26 +0000 (16:34 +0000)]
re PR c/27953 (ICE with invalid function definitions)

PR c/27953
* c-decl.c (store_parm_decls_oldstyle): Robustify
        * gcc.dg/pr27953.c: New test.

From-SVN: r119446

17 years agoi386.c (pentium4_cost, [...]): Update 32bit memcpy/memset decriptors.
Jan Hubicka [Sat, 2 Dec 2006 13:16:27 +0000 (14:16 +0100)]
i386.c (pentium4_cost, [...]): Update 32bit memcpy/memset decriptors.

* config/i386/i386.c (pentium4_cost, nocona_cost): Update
32bit memcpy/memset decriptors.
(decide_alg): With -minline-all-stringops and sizes that are best
to be copied via libcall still work hard enough to pick non-libcall
strategy.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r119445

17 years ago* config/i386/i386.c: Fix a comment typo.
Kazu Hirata [Sat, 2 Dec 2006 02:47:07 +0000 (02:47 +0000)]
* config/i386/i386.c: Fix a comment typo.

From-SVN: r119443

17 years agobuiltins.c, [...]: Fix comment typos.
Kazu Hirata [Sat, 2 Dec 2006 02:26:04 +0000 (02:26 +0000)]
builtins.c, [...]: Fix comment typos.

* builtins.c, cfgloop.h, cgraph.h, config/arm/arm.c,
config/i386/i386.c, config/i386/i386.h, config/mips/mips.h,
config/rs6000/cell.md, config/rs6000/rs6000.c, config/sh/sh.c,
config/sh/sh4-300.md, config/spu/spu-builtins.def,
config/spu/spu-c.c, config/spu/spu-modes.def,
config/spu/spu.c, config/spu/spu.md,
config/spu/spu_internals.h, config/spu/vmx2spu.h,
fold-const.c, fwprop.c, predict.c, tree-data-ref.h,
tree-flow.h, tree-ssa-loop-manip.c, tree-ssa-loop-niter.c,
tree-ssa-pre.c, tree-vect-analyze.c, tree-vect-transform.c,
tree-vectorizer.c, tree-vrp.c: Fix comment typos.  Follow
spelling conventions.

From-SVN: r119442

17 years ago* doc/extend.texi, doc/invoke.texi, doc/md.texi: Fix typos.
Kazu Hirata [Sat, 2 Dec 2006 02:06:52 +0000 (02:06 +0000)]
* doc/extend.texi, doc/invoke.texi, doc/md.texi: Fix typos.

From-SVN: r119441

17 years ago* name-lookup.c: Follow spelling conventions.
Kazu Hirata [Sat, 2 Dec 2006 01:44:17 +0000 (01:44 +0000)]
* name-lookup.c: Follow spelling conventions.

From-SVN: r119440

17 years agoMakefile.in, [...]: Fix comment typos.
Kazu Hirata [Sat, 2 Dec 2006 01:03:11 +0000 (01:03 +0000)]
Makefile.in, [...]: Fix comment typos.

* Makefile.in, mingw32.h, trans.c: Fix comment typos.
* gnat_rm.texi, gnat_ugn.texi: Follow spelling conventions.
Fix typos.

From-SVN: r119437

17 years agomt_allocator.h (__pool_base::_M_get_align): Remove redundant const qualifier on the...
Paolo Carlini [Sat, 2 Dec 2006 00:31:34 +0000 (00:31 +0000)]
mt_allocator.h (__pool_base::_M_get_align): Remove redundant const qualifier on the return type.

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

* include/ext/mt_allocator.h (__pool_base::_M_get_align): Remove
redundant const qualifier on the return type.

From-SVN: r119435

17 years agoDaily bump.
GCC Administrator [Sat, 2 Dec 2006 00:17:43 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119433

17 years agodecl.c (poplevel): Check DECL_INITIAL invariant.
Geoffrey Keating [Fri, 1 Dec 2006 23:01:05 +0000 (23:01 +0000)]
decl.c (poplevel): Check DECL_INITIAL invariant.

* decl.c (poplevel): Check DECL_INITIAL invariant.
(duplicate_decls): Preserve DECL_INITIAL when eliminating
a new definition in favour of an old declaration.
(start_preparsed_function): Define and document value of
DECL_INITIAL before and after routine.
(finish_function): Check DECL_INITIAL invariant.
* parser.c
(cp_parser_function_definition_from_specifiers_and_declarator):
Skip duplicate function definitions.

From-SVN: r119427

17 years agospu.c (spu_immediate): Remove trailing comma.
Trevor Smigiel [Fri, 1 Dec 2006 22:51:06 +0000 (22:51 +0000)]
spu.c (spu_immediate): Remove trailing comma.

* config/spu/spu.c (spu_immediate): Remove trailing comma.
(reloc_diagnostic): Call warning when -mwarn-reloc is specified.
* config/spu/spu.md: (zero_extendhisi2): Expand instead of split for
better optimization.
(floatv4siv4sf2): New.
(fix_truncv4sfv4si2): New.
(floatunsv4siv4sf2): New.
(fixuns_truncv4sfv4si2): New.
(addv16qi3): New.
(subv16qi3): New.
(negv16qi2): New.
(mulv8hi3): New.
(mulsi3): Remove.
(mul<mode>3): New.
(_mulv4si3): New.
(cmp<mode>): Don't accept constant arguments for DI, TI and SF.
* config/spu/spu_internals.h: Handle overloaded intrinsics in C++ with
spu_resolve_overloaded_builtin instead of static inline functions.

From-SVN: r119424

17 years agofold-const.c (fold_binary): Use the precision of the type instead of the size of...
Eric Botcazou [Fri, 1 Dec 2006 22:46:45 +0000 (22:46 +0000)]
fold-const.c (fold_binary): Use the precision of the type instead of the size of its mode to compute the...

* fold-const.c (fold_binary) <LT_EXPR>: Use the precision of the
type instead of the size of its mode to compute the highest and
lowest possible values.  Still check the size of the mode before
flipping the signedness of the comparison.

From-SVN: r119422

17 years agopredicates.md (spu_mov_operand): Add.
Trevor Smigiel [Fri, 1 Dec 2006 22:43:18 +0000 (22:43 +0000)]
predicates.md (spu_mov_operand): Add.

        * config/spu/predicates.md (spu_mov_operand): Add.
        * config/spu/spu.c (spu_expand_extv): Remove unused code.
        (print_operand_address, print_operand): Handle addresses containing AND.
        (spu_split_load, spu_split_store): Use updated movti pattern.
        * config/spu/spu.md: (_mov<mode>, _movdi, _movti): Handle loads and
        stores in mov patterns for correct operation of reload.
        (lq, lq_<mode>, stq, stq_<mode>): Remove.

From-SVN: r119421

17 years agore PR c++/30022 (ICE on vector operand in division)
Volker Reichelt [Fri, 1 Dec 2006 21:35:25 +0000 (21:35 +0000)]
re PR c++/30022 (ICE on vector operand in division)

PR c++/30022
* typeck.c (type_after_usual_arithmetic_conversions):
Fix assertion for vector types.
(build_binary_op): Use temporary for inner type of vector types.

* g++.dg/ext/vector5.C: New test.

From-SVN: r119416

17 years agore PR c++/30021 (ICE on invalid parameter for main)
Volker Reichelt [Fri, 1 Dec 2006 21:28:35 +0000 (21:28 +0000)]
re PR c++/30021 (ICE on invalid parameter for main)

PR c++/30021
* c-common.c (check_main_parameter_types): Check for error_mark_node.

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

From-SVN: r119415

17 years agore PR libfortran/29568 (implement unformatted files with subrecords (Intel style))
Thomas Koenig [Fri, 1 Dec 2006 21:04:38 +0000 (21:04 +0000)]
re PR libfortran/29568 (implement unformatted files with subrecords (Intel style))

2006-12-01  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/29568
* gfortran.dg/convert_implied_open.f90:  Change to
new default record length.
* gfortran.dg/unf_short_record_1.f90:  Adapt to
new error message.
* gfortran.dg/unformatted_subrecords_1.f90:  New test.

2006-12-01  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/29568
* gfortran.h (gfc_option_t):  Add max_subrecord_length.
(top level): Define MAX_SUBRECORD_LENGTH.
* lang.opt:  Add option -fmax-subrecord-length=.
* trans-decl.c:  Add new function set_max_subrecord_length.
(gfc_generate_function_code): If we are within the main
program and max_subrecord_length has been set, call
set_max_subrecord_length.
* options.c (gfc_init_options):  Add defaults for
max_subrecord_lenght, convert and record_marker.
(gfc_handle_option):  Add handling for
-fmax_subrecord_length.
* invoke.texi:  Document the new default for
-frecord-marker=<n>.

2006-12-01  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/29568
* libgfortran/libgfortran.h (compile_options_t):  Add
record_marker. (top level):  Define GFC_MAX_SUBRECORD_LENGTH.
* runtime/compile_options.c (set_record_marker):  Change
default to four-byte record marker.
(set_max_subrecord_length):  New function.
* runtime/error.c (translate_error):  Change error message
for short record on unformatted read.
* io/io.h (gfc_unit):  Add recl_subrecord, bytes_left_subrecord
and continued.
* io/file_pos.c (unformatted_backspace):  Change default of record
marker size to four bytes.  Loop over subrecords.
* io/open.c:  Default recl is max_offset.  If
compile_options.max_subrecord_length has been set, set set
u->recl_subrecord to its value, to the maximum value otherwise.
* io/transfer.c (top level):  Add prototypes for us_read, us_write,
next_record_r_unf and next_record_w_unf.
(read_block_direct):  Separate codepaths for unformatted direct
and unformatted sequential.  If a recl has been set by the
user, use the number of bytes left for the record if it is smaller
than the read request.  Loop over subrecords.  Set an error if the
user has set a recl and the read was short.
(write_buf):  Separate codepaths for unformatted direct and
unformatted sequential. If a recl has been set by the
user, use the number of bytes left for the record if it is smaller
than the read request.  Loop over subrecords.  Set an error if the
user has set a recl and the read was short.
(us_read):  Add parameter continued (to indicate that bytes_left
should not be intialized).  Change default of record marker size
to four bytes. Use subrecord.  If the subrecord length is smaller than
zero, this indicates a continuation.
(us_write):  Add parameter continued (to indicate that the continued
flag should be set).  Use subrecord.
(pre_position):  Use 0 for continued on us_write and us_read calls.
(skip_record):  New function.
(next_record_r_unf):  New function.
(next_record_r):  Use next_record_r_unf.
(write_us_marker):  Default size for record markers is four bytes.
(next_record_w_unf):  New function.
(next_record_w):  Use next_record_w_unf.

From-SVN: r119412

17 years agocommon.opt (ftree-combine-temps): Remove.
Andrew MacLeod [Fri, 1 Dec 2006 19:53:29 +0000 (19:53 +0000)]
common.opt (ftree-combine-temps): Remove.

* common.opt (ftree-combine-temps): Remove.
* tree-outof-ssa.c (SSANORM_COMBINE_TEMPS): Remove.
(coalesce_ssa_name): Don't check for combine-temps.
(coalesce_vars): Remove.
(check_replaceable): Use num_imm_uses.
(remove_ssa_form, insert_backedge_copies, rewrite_out_of_ssa): Don't
check for combine-temps.
(rewrite_out_of_ssa): Never create a ref_count in the var_map.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Change parms
to register_ssa_partition calls.
* tree-ssa-live.c (register_ssa_partition): Remove prototype.
(init_var_map, delete_var_map): remove refernces to ref_count.
(create_ssa_var_map): Never calculate a ref count.
(type_var_init): Remove.
* tree-ssa-live.h (typedef struct _var_map): Remove ref_count.
(SSA_VAR_MAP_REF_COUNT): Delete.
(create_ssa_var_map): Change Prototype to have no parameters.
(version_ref_count): Delete.
(register_ssa_partition): Remove 'is_use' paramater and don't set the
ref_count vector.
(type_var_num, type_var, type_var_first_partition,
type_var_next_partition, type_var_dump, type_var_delete,
type_var_remove_partition, type_var_find, type_var_compact,
type_var_decompact): Remove.

* gcc.dg/max-1.c: Remove reference to -fno-tree-lrs option.

From-SVN: r119409

17 years agobfin.md (pushsi_insn, popsi_insn): Set correct addrtype attribute.
Bernd Schmidt [Fri, 1 Dec 2006 17:53:42 +0000 (17:53 +0000)]
bfin.md (pushsi_insn, popsi_insn): Set correct addrtype attribute.

* config/bfin/bfin.md (pushsi_insn, popsi_insn): Set correct addrtype
attribute.

From-SVN: r119408

17 years agore PR c++/29433 (using boost::MPL requires lots of memory)
Richard Guenther [Fri, 1 Dec 2006 16:37:38 +0000 (16:37 +0000)]
re PR c++/29433 (using boost::MPL requires lots of memory)

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

PR c++/29433
* dwarf2out.c (struct pubname_struct): Make name const.
(add_pubtype): Do not xstrdup identifiers.

From-SVN: r119404

17 years agore PR c++/29066 (ptrmemfunc_vbit_in_delta is broken)
Ryan Mansfield [Fri, 1 Dec 2006 15:55:11 +0000 (15:55 +0000)]
re PR c++/29066 (ptrmemfunc_vbit_in_delta is broken)

2006-12-01  Ryan Mansfield  <rmansfield@qnx.com>

        PR c++/29066
        * typeck.c (build_binary_op):  Fix pointer to member function
        comparison for ptrmemfunc_vbit_in_delta targets.

2006-12-01  Ryan Mansfield  <rmansfield@qnx.com>

        PR c++/29066
        * g++.dg/expr/pr29066.c: New.

From-SVN: r119403

17 years agobfin.c (bfin_valid_add): Fix the logic that ensures multiword accesses are in range.
Bernd Schmidt [Fri, 1 Dec 2006 15:49:55 +0000 (15:49 +0000)]
bfin.c (bfin_valid_add): Fix the logic that ensures multiword accesses are in range.

* config/bfin/bfin.c (bfin_valid_add): Fix the logic that ensures
multiword accesses are in range.

From-SVN: r119402

17 years ago[multiple changes]
H.J. Lu [Fri, 1 Dec 2006 14:49:15 +0000 (06:49 -0800)]
[multiple changes]

2006-12-01  Zdenek Dvorak <dvorakz@suse.cz>

PR tree-optimization/29921
* tree-ssa-ccp.c (canonicalize_float_value): New function.
(set_lattice_value): Use canonicalize_float_value.

2006-12-01  H.J. Lu  <hongjiu.lu@intel.com>
    Zdenek Dvorak <dvorakz@suse.cz>

PR tree-optimization/29921
* gcc.dg/pr29921-2.c: New test.

From-SVN: r119401

17 years agospu.c (spu_builtin_range): Move from spu-c.c
Andrew Pinski [Fri, 1 Dec 2006 02:38:47 +0000 (02:38 +0000)]
spu.c (spu_builtin_range): Move from spu-c.c

2006-11-30  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu.c (spu_builtin_range): Move from spu-c.c
        (TARGET_RESOLVE_OVERLOADED_BUILTIN): Delete.
        (spu_cpu_cpp_builtins): Remove.
        (spu_override_options): Don't set warn_main.
        (spu_force_reg): Move from spu-c.c.
        (spu_check_builtin_parm): Likewise.
        (expand_builtin_args): Likewise.
        (spu_expand_builtin_1): Likewise.
        (spu_expand_builtin): Likewise.
        * config/spu/spu.h (REGISTER_TARGET_PRAGMAS): Define, set
        warn_main and targetm.resolve_overloaded_builtin.
        * config/spu/spu-c.c (spu_builtin_range): Remove.
        (spu_check_builtin_parm): Remove.
        (expand_builtin_args): Remove.
        (spu_expand_builtin_1): Remove.
        (spu_expand_builtin): Remove.
        (spu_cpu_cpp_builtins): Moved from spu.c
        (spu_force_reg): Remove.

From-SVN: r119397

17 years agore PR target/24036 ([e500] ICE in subreg_offset_representable_p, at rtlanal.c:3143)
Joseph Myers [Fri, 1 Dec 2006 02:25:22 +0000 (02:25 +0000)]
re PR target/24036 ([e500] ICE in subreg_offset_representable_p, at rtlanal.c:3143)

2006-12-01  Joseph Myers  <joseph@codesourcery.com>
            David Edelsohn  <edelsohn@gnu.org>

PR target/24036
* doc/tm.texi (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Document new target macros.
* defaults.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* config/i386/i386.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* rtlanal.c (subreg_regno_offset, subreg_offset_representable_p):
Use new macros to detect modes with holes; do not look at integer
units.
(subreg_offset_representable_p): Check for and disallow cases
where the modes use different numbers of bits from registers.
* config/rs6000/rs6000.c (rs6000_emit_move): Handle TFmode
constant for soft-float.
(rs6000_hard_regno_nregs): Use UNITS_PER_FP_WORD for e500 GPRs
containing doubles.
(rs6000_split_multireg_move): Use DFmode reg_mode for TFmode moves
in E500 double case.
* config/rs6000/rs6000.md (movtf): Allow soft-float.
(movtf_softfloat): New.

Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
From-SVN: r119395

17 years agoi386-cpuid.h (bit_SSE3): New.
H.J. Lu [Fri, 1 Dec 2006 00:29:08 +0000 (00:29 +0000)]
i386-cpuid.h (bit_SSE3): New.

2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.dg/i386-cpuid.h (bit_SSE3): New.
(i386_get_cpuid): New function.
(i386_cpuid_ecx): Likewise.
(i386_cpuid_edx): Likewise.
(i386_cpuid): Updated to call i386_cpuid_edx.

* gcc.target/i386/sse3-addsubpd.c: New file.
* gcc.target/i386/sse3-addsubps.c: Likewise.
* gcc.target/i386/sse3-haddpd.c: Likewise.
* gcc.target/i386/sse3-haddps.c: Likewise.
* gcc.target/i386/sse3-hsubpd.c: Likewise.
* gcc.target/i386/sse3-hsubps.c: Likewise.
* gcc.target/i386/sse3-lddqu.c: Likewise.
* gcc.target/i386/sse3-movddup.c: Likewise.
* gcc.target/i386/sse3-movshdup.c: Likewise.
* gcc.target/i386/sse3-movsldup.c: Likewise.

From-SVN: r119390

17 years agoDaily bump.
GCC Administrator [Fri, 1 Dec 2006 00:17:52 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119388

17 years agore PR c++/18313 (Missing warning for superfluous const's in return types)
Dirk Mueller [Thu, 30 Nov 2006 23:08:27 +0000 (23:08 +0000)]
re PR c++/18313 (Missing warning for superfluous const's in return types)

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

        PR c++/18313
        * decl.c (grokdeclarator): Warn for type qualifiers on return
        type for non-dependent types.
        * pt.c (tsubst_function_type): Warn for type qualifiers on
        return type for dependent types.

        * g++.dg/warn/Wreturn-type-4.C: New testcase.

From-SVN: r119382

17 years agosimplify-rtx.c (simplify_rtx): Use simplify_subreg rather than simplify_gen_subreg.
Richard Sandiford [Thu, 30 Nov 2006 21:54:20 +0000 (21:54 +0000)]
simplify-rtx.c (simplify_rtx): Use simplify_subreg rather than simplify_gen_subreg.

gcc/
* simplify-rtx.c (simplify_rtx): Use simplify_subreg rather than
simplify_gen_subreg.

From-SVN: r119380

17 years agortti.c (get_tinfo_decl): Handle return value from pushdecl_top_level_and_finish.
Geoffrey Keating [Thu, 30 Nov 2006 21:53:57 +0000 (21:53 +0000)]
rtti.c (get_tinfo_decl): Handle return value from pushdecl_top_level_and_finish.

* rtti.c (get_tinfo_decl): Handle return value from
pushdecl_top_level_and_finish.

From-SVN: r119379

17 years agoImplement coalesce list with hash table instead of linked list.
Andrew MacLeod [Thu, 30 Nov 2006 21:36:32 +0000 (21:36 +0000)]
Implement coalesce list with hash table instead of linked list.

* tree-ssa-live.c (create_coalesce_list): Create a hash table.
(COALESCE_HASH_FN): New.  Define hash function.
(partition_pair_map_hash): New.  Hash value for a partition pair.
(partition_pair_map_eq): New.  Equality for hash pairs.
(create_coalesce_list): Create hash table.
(delete_coalesce_list): Free hash table.
(find_partition_pair): Find/create pairs in hash table.
(compare_pairs):  Sort pairs in ascending order now.
(num_coalesce_pairs): New.  Number of pairs in hash table.
(struct partition_pair_iterator): Iterator struct for pair table.
(first_partition_pair): Iterator function for first pair.
(end_partition_pair_p): Iterator function for end of iteration.
(next_partition_pair): Iterator function for next pair.
(FOR_EACH_PARTITION_PAIR): Macro for iterating over pairs.
(sort_coalesce_list): Sort pairs from hash table into an array.
(pop_best_coalesce): Take pairs from the array.
(dump_coalesce_list): Update to use hash table or sorted array.
* tree-ssa-live.h (struct partition_pair_d): Remove next field.
(struct coalesce_list_d): Add hash table related fields.

From-SVN: r119378

17 years agore PR middle-end/30028 (bcopy is wrongly converted to memcpy)
Jan Hubicka [Thu, 30 Nov 2006 19:36:02 +0000 (20:36 +0100)]
re PR middle-end/30028 (bcopy is wrongly converted to memcpy)

PR middle-end/30028
* builtins.c (fold_builtin_memory_op): Fix typo in the check for
memmove/bcopy->memcpy conversion.

From-SVN: r119375

17 years agotm.texi (MAX_OFILE_ALIGNMENT): Document default.
Carlos O'Donell [Thu, 30 Nov 2006 19:25:08 +0000 (19:25 +0000)]
tm.texi (MAX_OFILE_ALIGNMENT): Document default.

gcc/

2006-11-30  Carlos O'Donell  <carlos@codesourcery.com>

* doc/tm.texi (MAX_OFILE_ALIGNMENT): Document default.
* config/elfos.h [!MAX_OFILE_ALIGNMENT] (MAX_OFILE_ALIGNMENT):
Default is the largest alignment supported for 32-bit ELF and
representable on a 32-bit host.

From-SVN: r119374

17 years agodfp-bit.c (DFP_TO_INT): Use wider precision.
Janis Johnson [Thu, 30 Nov 2006 17:58:03 +0000 (17:58 +0000)]
dfp-bit.c (DFP_TO_INT): Use wider precision.

gcc/
* config/dfp-bit.c (DFP_TO_INT): Use wider precision.
testsuite/
* gcc.dg/dfp/convert-int-max.c: New test.
* gcc.dg/dfp/convert-int-max-fold.c: New test.

From-SVN: r119368

17 years agore PR driver/29931 (following argv[0] symlink in process_command breaks symlinked...
Andrew Stubbs [Thu, 30 Nov 2006 17:05:45 +0000 (17:05 +0000)]
re PR driver/29931 (following argv[0] symlink in process_command breaks symlinked-together toolchain)

include:
2006-05-03  Andrew Stubbs  <andrew.stubbs@st.com>
            J"orn Rennecke <joern.rennecke@st.com>

PR driver/29931
* libiberty.h (make_relative_prefix_ignore_links): Declare.

libiberty:
2006-05-03  Andrew Stubbs  <andrew.stubbs@st.com>
            J"orn Rennecke <joern.rennecke@st.com>

PR driver/29931
* make-relative-prefix.c (make_relative_prefix_1): New function,
broken out of make_relative_prefix.  Make link resolution dependent
on new parameter.
(make_relative_prefix): Use make_relative_prefix_1.
(make_relative_prefix_ignore_links): New function.

Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com>
From-SVN: r119366

17 years agotree-ssa-operands.h (struct ssa_operands): New.
Jan Hubicka [Thu, 30 Nov 2006 15:30:01 +0000 (16:30 +0100)]
tree-ssa-operands.h (struct ssa_operands): New.

* tree-ssa-operands.h (struct ssa_operands): New.
* tree-flow-inline.h (gimple_ssa_operands): New function.
* tree-flow.h: (struct gimple_df): Add ssa_operands.
* Makefile.in: Remove gt-tree-ssa-operands.h
* tree-ssa-operands.c: Do not include gt-tree-ssa-operands.h
(free_defs, free_uses, free_vuses, free_maydefs, free_mustdefs,
operand_memory, operand_memory_index, ops_active): Remove statics.
(ALLOC_OPTYPE): Update.
(operand_build_sort_virtual): Update.
(ssa_operands_active): Update.
(init_ssa_operands): Update.
(fini_ssa_operands): Update.
(ssa_operand_alloc): Update.
(INITIALIZE_USE): Update.
(finalize_ssa_use_ops): Update.
(finalize_ssa_v_may_def_ops): Update.
(finalize_ssa_vuse_ops): Update.
(finalize_ssa_v_must_def_ops): Update.

From-SVN: r119363

17 years agotree-vectorizer.h (vectorizable_function): Export.
Richard Guenther [Thu, 30 Nov 2006 14:30:00 +0000 (14:30 +0000)]
tree-vectorizer.h (vectorizable_function): Export.

2006-11-30  Richard Guenther  <rguenther@suse.de>

* tree-vectorizer.h (vectorizable_function): Export.
* tree-vect-transform.c (vectorizable_function): Likewise.
        * tree-vect-patterns.c (vect_recog_pow_pattern): Set
        type_in to scalar type in recognition of squaring.
Make sure the target can vectorize sqrt in recognition
of sqrt, set type_in to vector type in this case.

* gcc.dg/vect/vect-pow-1.c: Rename ...
* gcc.dg/vect/fast-math-vect-pow-1.c: ... to this.  Use
floats instead of doubles, check successful vectorization.

From-SVN: r119362

17 years agoi386.md (R10_REG): New constant.
Uros Bizjak [Thu, 30 Nov 2006 10:57:34 +0000 (11:57 +0100)]
i386.md (R10_REG): New constant.

* config/i386/i386.md (R10_REG): New constant.
* config/i386/i386.c (pro_epilogue_adjust_stack): Use R11_REG.
(ix86_emit_restore_regs_using_mov): Ditto.
(ix86_expand_call): Ditto.
(x86_output_mi_thunk): Ditto. Also use R10_REG.

From-SVN: r119360

17 years agocselib.c (cselib_init): Use special MEM rtx form for callmem.
Steven Bosscher [Thu, 30 Nov 2006 07:24:03 +0000 (07:24 +0000)]
cselib.c (cselib_init): Use special MEM rtx form for callmem.

* cselib.c (cselib_init): Use special MEM rtx form for callmem.
* alias.c (canon_true_dependence): Update comment.

From-SVN: r119358

17 years agocgraphunit.c (cgraph_finalize_compilation_unit): Add a newline at the end of a diagno...
Steven Bosscher [Thu, 30 Nov 2006 07:22:04 +0000 (07:22 +0000)]
cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline at the end of a diagnostics message.

* cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline
at the end of a diagnostics message.

* alloc-pool.c (pool_free): Postpone clearing the pool entry
until after asserting that it was allocated in the right pool.

* cfgrtl.c (print_rtl_with_bb): Print predecessor and
successor edge information as well.  Make output of live regs
on exit consistent with live regs on entry.

From-SVN: r119357

17 years agore PR target/29852 (x86_64: SSE version missing for fmod{d,s,x}f3)
Uros Bizjak [Thu, 30 Nov 2006 06:54:47 +0000 (07:54 +0100)]
re PR target/29852 (x86_64: SSE version missing for fmod{d,s,x}f3)

PR target/29852
* config/i386/i386.md (*truncxfsf2_mixed, *truncxfdf2_mixed): Enable
insn patterns for TARGET_80387.
(*truncxfsf2_i387, *truncxfdf2_i387): Remove.
(*truncxfsf2_i387_1): Rename to *truncxfsf2_i387.
(*truncxfdf2_i387_1): Rename to *truncxfdf2_i387.
(fmod<mode>3, remainder<mode>3): Enable expaders for SSE math.
Generate truncxf<mode>2 insn patterns for strict SSE math.

From-SVN: r119356

17 years agoi386.md (movsf_1): Enable pattern for standard 80387 constants before reload when...
Uros Bizjak [Thu, 30 Nov 2006 06:47:24 +0000 (07:47 +0100)]
i386.md (movsf_1): Enable pattern for standard 80387 constants before reload when optimizing for size.

* config/i386/i386.md (movsf_1): Enable pattern for standard
80387 constants before reload when optimizing for size.
(*movdf_nointeger, *movdf_integer): Ditto.
(*movxf_nointeger, *movxf_integer): Disable patterns for standard
80387 constants before reload when not optimizing for size.

(*fop_xf_4_i387, *fop_xf_5_i387, *fop_xf_6_i387): Avoid float
extension of XFmode input operands.

From-SVN: r119355

17 years agocrt0.c (__dso_handle): Define.
Andrew Pinski [Thu, 30 Nov 2006 03:37:34 +0000 (03:37 +0000)]
crt0.c (__dso_handle): Define.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/crt0.c (__dso_handle): Define.

From-SVN: r119354

17 years agoemit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially when clearing the used...
Kaz Kojima [Thu, 30 Nov 2006 03:13:29 +0000 (03:13 +0000)]
emit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially when clearing the used flags.

* emit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially
when clearing the used flags.

From-SVN: r119353

17 years agospu.md (extend_compare): Fix whitespace formatting.
Andrew Pinski [Thu, 30 Nov 2006 01:19:00 +0000 (01:19 +0000)]
spu.md (extend_compare): Fix whitespace formatting.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu.md (extend_compare): Fix whitespace formatting.

From-SVN: r119350

17 years agore PR target/29945 (ICE in simplify_subreg with simple code in libgfortran)
Andrew Pinski [Thu, 30 Nov 2006 01:05:58 +0000 (01:05 +0000)]
re PR target/29945 (ICE in simplify_subreg with simple code in libgfortran)

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/29945
        * config/spu/spu.md  (extend_compare<mode>): New pattern.
        (extend_compare): Change to expand and use the above pattern.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/29945
        * gcc.c-torture/compile/pr29945.c: New testcase.

From-SVN: r119348

17 years agoDaily bump.
GCC Administrator [Thu, 30 Nov 2006 00:17:59 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119345

17 years agovect.exp: Skip PowerPC targets not supporting -maltivec.
Joseph Myers [Thu, 30 Nov 2006 00:12:49 +0000 (00:12 +0000)]
vect.exp: Skip PowerPC targets not supporting -maltivec.

* gcc.dg/vect/vect.exp: Skip PowerPC targets not supporting
-maltivec.

From-SVN: r119338

17 years ago* dfp-bit.c (DFP_TO_INT): Fix rounding mode.
Janis Johnson [Wed, 29 Nov 2006 23:11:01 +0000 (23:11 +0000)]
* dfp-bit.c (DFP_TO_INT): Fix rounding mode.

From-SVN: r119335

17 years agothrow_allocator.h: Consistent @file markup.
Benjamin Kosnik [Wed, 29 Nov 2006 20:59:22 +0000 (20:59 +0000)]
throw_allocator.h: Consistent @file markup.

2006-11-29  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/throw_allocator.h: Consistent @file markup.
* include/ext/type_traits.h: Same.
* include/debug/hash_map: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/formatter.h: Same.
* include/debug/bitset: Same.
* include/debug/set: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/hash_set: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/safe_iterator.tcc: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/hash_map.h: Same.
* include/debug/string: Same.
* include/debug/macros.h: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/map: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/multimap.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/std/std_queue.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* libsupc++/typeinfo: Same.
* libsupc++/exception: Same.
* libsupc++/exception_defines.h: Same.
* libsupc++/new: Same.

* include/ext/bitmap_allocator.h: Change namespace __balloc to
__detail.
* src/bitmap_allocator.cc: Same.

* include/bits/cpp_type_traits.h: Change __true_type and
__false_type from global to namespace std scope.
* include/ext/slist: Same.
* include/ext/vstring.h: Same.
* include/ext/vstring.tcc: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/sso_string_base.h: Same.

* include/bits/codecvt.h: Adjust markup so that correct namespace
scope information is in all files.
* include/bits/locale_facets.h: Same. Include ctype_base directly.
* config/os/windiss/ctype_base.h: Add in namespace markup.
* config/os/newlib/ctype_base.h: Same.
* config/os/aix/ctype_base.h: Same.
* config/os/vxworks/ctype_base.h: Same.
* config/os/hpux/ctype_base.h: Same.
* config/os/mingw32/ctype_base.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/os/tpf/ctype_base.h: Same.
* config/os/uclibc/ctype_base.h: Same.
* config/os/djgpp/ctype_base.h: Same.
* config/os/qnx/qnx6.1/ctype_base.h: Same.
* config/os/bsd/netbsd/ctype_base.h: Same.
* config/os/bsd/darwin/ctype_base.h: Same.
* config/os/bsd/freebsd/ctype_base.h: Same.
* config/os/irix/irix5.2/ctype_base.h: Same.
* config/os/irix/irix6.5/ctype_base.h: Same.
* config/os/solaris/solaris2.5/ctype_base.h: Same.
* config/os/solaris/solaris2.6/ctype_base.h: Same.
* config/os/solaris/solaris2.7/ctype_base.h: Same.
* config/os/generic/ctype_base.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.

* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
number changes.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.

* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
* docs/html/17_intro/license.html: Updated info for generated docs.
* docs/doxygen/guide.html: Adjust.
* docs/doxygen/run_doxygen: Adjust.
* docs/doxygen/mainpage.html: Same.
* docs/doxygen/doxygroups.cc: Same.
* docs/doxygen/Intro.3: Same.
* docs/doxygen/tables.html: Same.

From-SVN: r119334

17 years agoprefetch-3.c: Allow x86_64, but require ilp32.
Eric Christopher [Wed, 29 Nov 2006 19:31:24 +0000 (19:31 +0000)]
prefetch-3.c: Allow x86_64, but require ilp32.

2006-11-29  Eric Christopher  <echristo@apple.com>

        * gcc.dg/tree-ssa/prefetch-3.c: Allow x86_64, but require ilp32.

From-SVN: r119333

17 years ago* gcc.dg/dfp/convert-int.c: Remove dg-do compile, fix comment.
Janis Johnson [Wed, 29 Nov 2006 18:37:48 +0000 (18:37 +0000)]
* gcc.dg/dfp/convert-int.c: Remove dg-do compile, fix comment.

From-SVN: r119331

17 years ago* gcc.dg/dfp/convert-bfp.c: Skip long double conversions.
Janis Johnson [Wed, 29 Nov 2006 18:36:55 +0000 (18:36 +0000)]
* gcc.dg/dfp/convert-bfp.c: Skip long double conversions.

From-SVN: r119330