Joseph Myers [Thu, 10 Jun 2004 22:13:24 +0000 (23:13 +0100)]
sourcebuild.texi (Front End): Add details of more installation documentation required.
* doc/sourcebuild.texi (Front End): Add details of more
installation documentation required.
From-SVN: r82948
Brian Booth [Thu, 10 Jun 2004 21:41:08 +0000 (21:41 +0000)]
tree-ssa.texi: Remove references to VDEF and add descriptions of V_MAY_DEF and V_MUST_DEF.
* doc/tree-ssa.texi: Remove references to VDEF and add descriptions
of V_MAY_DEF and V_MUST_DEF.
* tree-dfa.c (dfa_stats_d): Add num_v_must_defs and rename
num_vdefs to num_v_may_defs.
(compute_immediate_uses_for_stmt): Rename occurences of vdef
to v_may_def.
(redirect_immediate_uses): Ditto.
(dump_dfa_stats): Ditto. Also added code to dump num_v_must_defs.
(collect_dfa_stats_r): Rename occurences of vdef to v_may_def.
Also add code to sum up the number of v_must_defs.
(vdefs_disappeared_p): Replace with...
(v_may_defs_disappeared_p): This.
(v_must_defs_disappeared_p): New function.
(mark_new_vars_to_rename): Rename occurences of vdef to v_may_def.
Also add code to mark new variables found in V_MUST_DEFs for
renameing.
* tree-flow.h (stmt_ann_d): Add v_must_def_ops and replace
vdef_ops to v_may_def_ops.
(get_vdef_ops): Replace with...
(get_v_may_def_ops): This.
* tree-flow-inline.h (get_vdef_ops): Replace with...
(get_v_may_def_ops): This.
(get_v_must_def_ops): New function.
(get_vdef_result_ptr): Replace with...
(get_v_may_def_result_ptr): This.
(get_vdef_op_ptr): Ditto with...
(get_v_may_def_op_ptr); This.
(get_v_must_def_op_ptr): New function.
* tree-into-ssa.c (mark_def_sites): Rename occurences of vdef
to v_may_def. Also add code to mark statements with
V_MUST_DEFs as definition sites.
(rewrite_stmt): Rename occurences of vdef to v_may_def. Also
add code to register new V_MUST_DEFs made by the statement.
* tree-outof-ssa.c (VIRTUAL_PARTITION): Update comments.
(check_replaceable): Rename occurences of vdef to v_may_def. Also
add check for V_MUST_DEFs.
(find_replaceable_in_bb): Ditto.
* tree-pretty-print.c (dump_vops): Rename occurences of vdef
to v_may_def. Also add code to dump V_MUST_DEFs.
* tree-sra.c (mark_all_vdefs): Replace with...
(mark_all_v_may_defs): This.
(mark_all_v_must_defs): New function.
(create_scalar_copies): Replace call to mark_all_vdefs with
calls to mark_all_v_may_defs and mark_all_v_must_defs.
(scalarize_structures): Rename occurences of vdef to v_may_def.
Also add a check for V_MUST_DEFs.
(scalarize_modify_expr): Rename occurences of vdef to v_may_def.
* tree-ssa-alias.c (global_var): Update comment.
(compute_may_aliases): Ditto.
(compute_points_to_and_addr_escape): Rename occurences of vdef
to v_may_def. Also add code to mark variables in V_MUST_DEF
operands as being written to.
(group_aliases): Update comment.
(maybe_create_global_var): Ditto.
* tree-ssa.c (verify_ssa): Rename occurences of vdef to v_may_def.
Also add a check for V_MUST_DEFs on GIMPLE registers.
(replace_immediate_uses): Rename occurences of vdef to v_may_def.
* tree-ssa-ccp.c (visit_stmt): Rename occurences of vdef
to v_may_def. Also add code to mark all V_MUST_DEF operands
VARYING.
(initialize): Ditto.
(set_rhs): Rename occurences of vdef to v_may_def. Also add
code to update SSA_NAMEs in V_MUST_DEFs.
* tree-ssa-copy.c (cprop_into_stmt): Rename occurences of vdef
to v_may_def.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Rename
occurences of vdef to v_may_def. Also add code to mark statements
with V_MUST_DEFs as necessary.
(propagate_necessity): Rename occurences of vdef to v_may_def.
* tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Rename
occurences of vdef to v_may_def. Also add code to mark operands
in V_MUST_DEFs for renaming.
(eliminate_redundant_computations): Rename occurences of vdef
to v_may_def.
(record_equivalences_from_stmt): Rename occurences of vdef
to v_may_def. Also add code to record VUSEs for V_MUST_DEFs.
(optimize_stmt): Remove unnesessary variable vdefs. Update
comment.
(register_definitions_for_stmt): Rename occurences of vdef
to v_may_def. Also add code to register definitions made with
V_MUST_DEFs.
* tree-ssa-dse.c (fix_stmt_vdefs): Replace with...
(fix_stmt_v_may_defs): This.
(fix_phi_uses): Rename occurences of vdef to v_may_def.
(dse_optimize_stmt): Ditto.
* tree-ssa-live.c (create_ssa_var_map): Rename occurences of vdef
to v_may_def. Also add code to mark V_MUST_DEF operands as being
used in virtual operators.
* tree-ssa-loop.c (mark_defs_for_rewrite): Rename occurences of
vdef to v_may_def. Also add code to mark V_MUST_DEF operands for
renaming.
* tree-ssa-operands.c (opf_kill_def): New flag for killing
definitions.
(build_vdefs): Renamed to...
(build_v_may_defs): This.
(build_v_must_defs): New variable.
(voperands_d): Add v_must_def_ops and replace vdef_ops with
v_may_def_ops.
(append_vdef): Replace with...
(append_v_may_def): This.
(append_v_must_def): New function.
(NUM_FREE): Increment for V_MUST_DEF
(optype_freelist): Increment its size for V_MUST_DEF
(allocate_vdef_optype): Replace with...
(allocate_v_may_def_optype): This.
(allocate_v_must_def_optype): New function.
(free_vdefs): Replace with...
(free_v_may_defs): This.
(free_v_must_defs): New function.
(remove_vdefs): Replace with...
(remove_v_may_defs): This.
(remove_v_must_defs): New function.
(init_ssa_operands): Rename occurences of vdef to v_may_def. Also
add code to initialize build_v_must_defs.
(finalize_ssa_vdefs): Replace with...
(finalize_ssa_v_may_defs): This.
(finalize_ssa_vuses): Rename occurences of vdef to v_may_def.
(finalize_ssa_v_must_defs): New function.
(finalize_ssa_stmt_operands): Replace call to finalize_ssa_vdefs
with calls to finalize_ssa_v_may_defs and finalize_ssa_v_must_defs.
(verify_start_operands): Rename occurences of vdef to v_may_def.
Also add check for build_v_must_defs.
(get_stmt_operands): Rename occurences of vdef to v_may_def.
Also add code to handle V_MUST_DEFs and to use opf_kill_def for
killing definitions.
(get_expr_operands): Update comment and use opf_kill_def for
killing definitions.
(add_stmt_operand): Replace code that appends VDEFs with code
that appends V_MUST_DEFs when opf_kill_def is set and V_MAY_DEFs
otherwise.
(add_call_clobber_ops): Update comments.
* tree-ssa-operands.h (vdef_optype_d): Replace with...
(v_may_def_optype_d): This.
(v_must_def_optype_d): New structure.
(VDEF_OPS): Replace with...
(V_MAY_DEF_OPS): This.
(STMT_VDEF_OPS): Same with...
(STMT_V_MAY_DEF_OPS): This.
(NUM_VDEFS): And...
(NUM_V_MAY_DEFS): This.
(VDEF_RESULT_PTR): As well as...
(V_MAY_DEF_RESULT_PTR): This.
(VDEF_RESULT): Same goes for...
(V_MAY_DEF_RESULT): This.
(VDEF_OP_PTR): And...
(V_MAY_DEF_OP_PTR): This.
(VDEF_OP): And...
(V_MAY_DEF_OP): This.
(V_MUST_DEF_OPS): New macro.
(STMT_V_MUST_DEF_OPS): Ditto.
(NUM_V_MUST_DEFS): Ditto.
(V_MUST_DEF_OP_PTR): Ditto.
(V_MUST_DEF_OP): Ditto.
(remove_vdefs): Replace signature with...
(remove_v_may_defs): This.
(remove_v_must_defs): New function signature.
* tree-ssa-pre.c (subst_phis): Replace call to remove_vdefs
with calls to remove_v_may_defs and remove_v_must_defs.
(process_left_occs_and_kills): Rename occurences of vdef to v_may_def.
Also add code that marks left occurences of operands in V_MUST_DEFs.
* tree-tailcall.c (find_tail_calls): Rename occurences of vdef
to v_may_def. Also add check for V_MUST_DEFs.
(eliminate_tail_call):Rename occurences of vdef to v_may_def.
testsuite:
* gcc.dg/tree-ssa/
20031015-1.c: Scan for
V_MAY_DEF instead of VDEF.
* gcc.dg/tree-ssa/
20040517-1.c: Ditto.
From-SVN: r82947
Vladimir Makarov [Thu, 10 Jun 2004 21:06:07 +0000 (21:06 +0000)]
re PR target/15653 (Gcc 3.4 ICE on valid code)
2004-06-10 Vladimir Makarov <vmakarov@redhat.com>
PR target/15653
* haifa-sched.c (schedule_block): Finish cycle after issuing asm
insn.
From-SVN: r82942
Volker Reichelt [Thu, 10 Jun 2004 20:58:43 +0000 (20:58 +0000)]
re PR web/15263 (configure.html: end tag for element "H4" which is not open...)
PR web/15263
* doc/install.texi: Remove superfluous linebreak.
From-SVN: r82940
Aaron W. LaFramboise [Thu, 10 Jun 2004 19:54:59 +0000 (19:54 +0000)]
istream.tcc (istream::ignore): Fix for -Wuninitialized.
2004-06-10 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
* include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized.
From-SVN: r82939
Roger Sayle [Thu, 10 Jun 2004 19:46:03 +0000 (19:46 +0000)]
builtins.c (expand_builtin): Fall back to library function call for conj...
* builtins.c (expand_builtin): Fall back to library function call for
conj, conjf, conjl, creal, crealf, creall, cimag, cimagf and cimagl.
(fold_builtin_1): Lower built-ins BUILT_IN_CONJ{,F,L} to CONJ_EXPR,
BUILT_IN_CREAL{,F,L} to REALPART_EXPR, and BUILT_IN_CIMAG{,F,L} to
IMAGPART_EXPR respectively.
From-SVN: r82938
Jason Merrill [Thu, 10 Jun 2004 18:28:53 +0000 (14:28 -0400)]
re PR c++/15875 (rejects pointer to member in template)
PR c++/15875
Revert:
2004-06-01 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
* init.c (build_offset_ref): Build SCOPE_REF with non-null
TREE_TYPE for non-dependent names.
* pt.c (type_dependent_expression_p): Handle SCOPE_REF with
unknown_type_node as its TREE_TYPE.
* cxx-pretty_print.c (pp_cxx_unqualified_id): Handle BASELINK.
* error.c (dump_decl) <SCOPE_REF case>: Use pp_expression.
(dump_expr) <SCOPE_REF case>: Likewise.
From-SVN: r82933
J"orn Rennecke [Thu, 10 Jun 2004 18:14:53 +0000 (18:14 +0000)]
sh.c (dump_table): New argument start.
* sh.c (dump_table): New argument start. Changed caller.
(fixup_mova): New function.
(find_barrier): Use it.
(sh_reorg): Likewise. Check for CODE_FOR_casesi_worker_2.
If the label a mova refers to is above the mova itself, change
the mova into a load.
* sh.md (*casesi_worker): Rename to:
(casesi_worker_1).
(casesi_worker_2): New insn.
From-SVN: r82932
Jan van Dijk [Thu, 10 Jun 2004 16:54:49 +0000 (18:54 +0200)]
std_complex.h (sin(const complex<_Tp>& __z)): Make this function return a value.
2004-06-10 Jan van Dijk <jan@etpmod.phys.tue.nl>
* include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make
this function return a value.
From-SVN: r82928
Jason Merrill [Thu, 10 Jun 2004 15:50:26 +0000 (11:50 -0400)]
fix conflict markers
From-SVN: r82926
Jason Merrill [Thu, 10 Jun 2004 15:49:49 +0000 (11:49 -0400)]
target.h (struct gcc_target): Change gimplify_va_arg_expr hook signature.
* target.h (struct gcc_target): Change gimplify_va_arg_expr
hook signature.
* tree-gimple.h: Adjust.
* config/alpha/alpha.c (alpha_gimplify_va_arg): Adjust.
* config/i386/i386.c (ix86_gimplify_va_arg): Adjust.
Use fold_convert.
* config/ia64/ia64.c (ia64_gimplify_va_arg): Adjust.
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust.
Use COMPLEX_EXPR for complex numbers. Use fold_convert.
* builtins.c (std_gimplify_va_arg_expr): Adjust. Use fold_convert.
(gimplify_va_arg_expr): Return GS_ERROR in error case.
Gimplify valist rather than calling stabilize_va_list.
From-SVN: r82925
Stephen Crowley [Thu, 10 Jun 2004 15:39:32 +0000 (15:39 +0000)]
re PR libmudflap/13505 ([tree-ssa] libmudflap mf-hooks2.c build failure on cygwin)
2004-06-10 Stephen Crowley <stephen.crowley@sbcglobal.net>
PR libmudflap/13505
* mf-hooks2.c (semctl): Add cygwin porting hack.
From-SVN: r82923
Zdenek Dvorak [Thu, 10 Jun 2004 15:01:01 +0000 (17:01 +0200)]
Makefile.in (df.o): Remove fibheap dependency.
* Makefile.in (df.o): Remove fibheap dependency.
* df.h: Do not include sbitmap.h.
(struct ref): New field "data".
(DF_REF_DATA): New accessor macro.
(struct df): Field "dom" removed.
(df_analyze_subcfg): New function.
(transfer_function_sbitmap, transfer_function_bitmap): Replaced by ...
(transfer_function): ... new type.
(iterative_dataflow_sbitmap, iterative_dataflow_bitmap): Replaced by ...
(iterative_dataflow): ... new function.
(enum set_representation, struct dataflow): New.
* df.c: Do not include fibheap.h.
(df_reg_def_chain_clean, df_reg_use_chain_clean,
(df_bb_table_realloc, df_analyse_subcfg, free_reg_ref_chain,
prune_to_subcfg, df_bb_modify): New functions.
(df_bitmaps_alloc, df_reg_def_chain_create, df_reg_use_chain_create,
df_refs_update, df_reg_table_realloc, df_ref_create,
df_bb_reg_def_chain_create, df_bb_reg_use_chain_create,
df_bb_rd_local_compute, df_bb_ru_local_compute, df_bb_lr_local_compute,
df_analyse_1, df_insn_modify): Support analysing only a part of the cfg.
(dataflow_set_a_op_b, dataflow_set_copy): New functions.
(df_rd_transfer_function, df_ru_transfer_function,
df_lr_transfer_function): Type of bitmaps changed to void *.
(hybrid_search_bitmap, hybrid_search_sbitmap): Merge into ...
(hybrid_search): ... new function.
(iterative_dataflow_bitmap, iterative_dataflow_sbitmap): Merge into ...
(iterative_dataflow): ... new function. Avoid use of fibheaps for
a worklist. Do not process basic blocks unnecessarily.
From-SVN: r82921
Mark Mitchell [Thu, 10 Jun 2004 14:26:23 +0000 (14:26 +0000)]
re PR c++/15227 (Trouble with invalid function definition)
PR c++/15227
* parser.c (cp_parser_direct_declarator): Robustify.
PR c++/15877
* pt.c (tsubst_copy): Use decl_constant_value on enumeration
constants in non-dependent contexts.
PR c++/14211
PR c++/15076
* typeck.c (build_static_cast): Wrap casts in NON_LVALUE_EXPR when
necessary.
PR c++/14211
* g++.dg/conversion/const1.C: New test.
PR c++/15076
* g++.dg/conversion/reinterpret1.C: New test.
PR c++/15877
* g++.dg/template/enum2.C: New test.
PR c++/15227
* g++.dg/template/error13.C: New test.
From-SVN: r82917
Roger Sayle [Thu, 10 Jun 2004 13:29:34 +0000 (13:29 +0000)]
fold-const.c (fold_abs_const): Make extern.
* fold-const.c (fold_abs_const): Make extern.
* tree.h (fold_abs_const): Prototype here.
* builtins.c (fold_builtin_fabs): New function to transform
fabs, fabsf and fabsl builtins into ABS_EXPR tree nodes.
(fold_builtin_abs): New function to transform abs, labs, llabs
and imaxabs builtins into ABS_EXPR tree nodes.
(expand_builtin): Fall back to a function call for abs, labs,
llabs and imaxabs builtins that survive constant folding.
(fold_builtin_1): Call fold_builtin_fabs for FABS, FABSF and
FABSL, and fold_builtin_abs for ABS, LABS, LLABS and IMAXABS.
From-SVN: r82916
Tobias Schlüter [Thu, 10 Jun 2004 12:41:32 +0000 (14:41 +0200)]
re PR fortran/14957 (testsuite issues)
PR fortran/14957
* gfortran.fortran-torture/execute/intrinsic_scale.f90: Make all
arguments to test_* REAL and of the right size.
From-SVN: r82915
Jakub Jelinek [Thu, 10 Jun 2004 08:43:16 +0000 (10:43 +0200)]
re PR target/15569 (Gcc 3.4.1 failed to build ia64 2.6.6 kernel)
PR target/15569
PR rtl-optimization/15681
* gcc.dg/
20040609-1.c: New test.
From-SVN: r82908
Jakub Jelinek [Thu, 10 Jun 2004 08:23:00 +0000 (10:23 +0200)]
unwind-ia64.c (uw_frame_state_for): Don't assume a leaf function without unwind info at RP 0.
* config/ia64/unwind-ia64.c (uw_frame_state_for): Don't assume a
leaf function without unwind info at RP 0.
From-SVN: r82906
Jakub Jelinek [Thu, 10 Jun 2004 08:18:25 +0000 (10:18 +0200)]
unix.S (ffi_call_unix): Insert group barrier break fp_done.
* src/ia64/unix.S (ffi_call_unix): Insert group barrier break
fp_done.
(ffi_closure_UNIX): Fix f14/f15 adjustment if FLOAT_SZ is ever
changed from 8.
From-SVN: r82904
Jakub Jelinek [Thu, 10 Jun 2004 08:11:29 +0000 (10:11 +0200)]
Oops.
From-SVN: r82903
Jakub Jelinek [Thu, 10 Jun 2004 08:08:02 +0000 (10:08 +0200)]
re PR c++/14791 (13070 does not fix -Wformat with fprintf)
PR c++/14791
* tree.h (enum tree_index): Add TI_FILEPTR_TYPE.
(fileptr_type_node): Define.
* tree.c (build_common_tree_nodes_2): Initialize
fileptr_type_node to ptr_type_node.
* c-common.c (c_common_nodes_and_builtins): For C++, make
fileptr_type_node a distinct type copy.
* builtin-types.def (BT_FILEPTR, BT_FN_INT_CONST_STRING_FILEPTR,
BT_FN_INT_INT_FILEPTR, BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG,
BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR,
BT_FN_INT_FILEPTR_CONST_STRING_VAR): Add.
(BT_FN_INT_CONST_STRING_PTR, BT_FN_INT_INT_PTR,
BT_FN_SIZE_CONST_PTR_SIZE_SIZE_PTR, BT_FN_INT_PTR_CONST_STRING_VAR,
BT_FN_INT_PTR_CONST_STRING_VALIST_ARG): Remove.
* builtins.def (BUILT_IN_FPRINTF, BUILT_IN_FPRINTF_UNLOCKED,
BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS,
BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FSCANF, BUILT_IN_FWRITE,
BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): Use
the above *FILEPTR* types instead of *PTR*.
* decl.c (duplicate_decls): Handle fileptr_type_node arguments
specially.
* g++.dg/opt/builtins1.C: New test.
From-SVN: r82902
Tom Tromey [Thu, 10 Jun 2004 06:18:18 +0000 (06:18 +0000)]
* interpret.cc (run): Handle wide fload.
From-SVN: r82889
Jakub Jelinek [Thu, 10 Jun 2004 05:57:58 +0000 (07:57 +0200)]
Fix typos.
From-SVN: r82887
Jason Merrill [Thu, 10 Jun 2004 05:32:44 +0000 (01:32 -0400)]
clean up obsolete comment
From-SVN: r82885
Andreas Jaeger [Thu, 10 Jun 2004 04:50:45 +0000 (06:50 +0200)]
* gcc_update: Add libgfortran.
From-SVN: r82884
Daniel Berlin [Thu, 10 Jun 2004 03:04:07 +0000 (03:04 +0000)]
tree-ssa.c (verify_ssa): Verify that vdefs/makes_aliased_stores match.
2004-06-09 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa.c (verify_ssa): Verify that vdefs/makes_aliased_stores
match.
From-SVN: r82883
Danny Smith [Thu, 10 Jun 2004 01:48:50 +0000 (01:48 +0000)]
i386-bitfield1.c: Add mingw32 and cygwin to targets that use default windows32 struct layout.
* gcc.dg/i386-bitfield1.c: Add mingw32 and cygwin to targets
that use default windows32 struct layout.
* gcc.dg/i386-bitfield2.c: Likewise.
From-SVN: r82878
GCC Administrator [Thu, 10 Jun 2004 00:16:17 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82874.2
GCC Administrator [Thu, 10 Jun 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82873.2
Roger Sayle [Thu, 10 Jun 2004 00:02:48 +0000 (00:02 +0000)]
fold-const.c (fold_not_const): New function.
* fold-const.c (fold_not_const): New function.
(fold) <ABS_EXPR>: Don't bother testing wins.
(fold) <BIT_NOT_EXPR>: Call fold_not_const.
(nondestructive_fold_unary_to_constant) <BIT_NOT_EXPR>: Likewise.
From-SVN: r82868
Richard Henderson [Wed, 9 Jun 2004 23:52:13 +0000 (16:52 -0700)]
re PR middle-end/15228 (useless copies of floating point operands)
PR middle-end/15228
* function.c (assign_parms): Always set_mem_align with the computed
FUNCTION_ARG_BOUNDARY. Don't clear stack_parm if !STRICT_ALIGNMENT.
From-SVN: r82867
Richard Henderson [Wed, 9 Jun 2004 23:48:56 +0000 (16:48 -0700)]
re PR tree-optimization/15108 ([tree-ssa] [regression] missed sib-calling for pointer changes)
PR opt/15108
* tree-tailcall.c (find_tail_calls): Don't check early for
tail_recursion failure.
From-SVN: r82866
Diego Novillo [Wed, 9 Jun 2004 22:58:29 +0000 (22:58 +0000)]
Move SSA_NAME annotations into tree_ssa_name.
* tree-dfa.c (create_ssa_name_ann): Remove.
* tree-flow-inline.h (ssa_name_ann, get_ssa_name_ann): Remove.
* tree-flow.h (enum tree_ann_type): Remove SSA_NAME_ANN.
(struct ssa_name_ann_d): Remove.
(union tree_ann_d): Update.
(ssa_name_ann_t): Remove.
* tree-ssa-alias.c: (get_ptr_info): New local function.
Replace references to ssa_name_ann_t with struct ptr_info_def.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree.h (SSA_NAME_PTR_INFO): Define.
(struct ptr_info_def): Declare.
(struct tree_ssa_name): Add field 'ptr_info'.
From-SVN: r82864
Danny Smith [Wed, 9 Jun 2004 22:52:10 +0000 (22:52 +0000)]
winnt.c (i386_pe_output_labelref): Correct misplaced ')'.
* config/i386/winnt.c (i386_pe_output_labelref): Correct
misplaced ')'.
From-SVN: r82862
Danny Smith [Wed, 9 Jun 2004 22:43:29 +0000 (22:43 +0000)]
* config/i386/winnt.c (i386_pe_output_labelref); Correct
misplaced ')'.
From-SVN: r82860
Steven Bosscher [Wed, 9 Jun 2004 21:58:54 +0000 (21:58 +0000)]
k6.md: Rewrite using the DFA model.
* config/i386/k6.md: Rewrite using the DFA model.
* config/i386/i386.c (ix86_adjust_cost): Don't increase the
cost of load-operation insns for the K6.
(ia32_use_dfa_pipeline_interface): Add TARGET_K6.
(ia32_multipass_dfa_lookahead): Likewise.
From-SVN: r82859
Richard Henderson [Wed, 9 Jun 2004 21:44:17 +0000 (14:44 -0700)]
alpha.c (alpha_gimplify_va_arg_1, [...]): New.
* config/alpha/alpha.c (alpha_gimplify_va_arg_1,
alpha_gimplify_va_arg, TARGET_GIMPLIFY_VA_ARG_EXPR): New.
From-SVN: r82858
Paolo Carlini [Wed, 9 Jun 2004 21:37:46 +0000 (21:37 +0000)]
re PR libstdc++/15775 (Allocator::pointer consistently ignored)
2004-06-09 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/15775
* include/bits/stl_deque.h: Consistently with stl_set.h, define
pointer as allocator's pointer, likewise for reference,
const_pointer, and const_reference.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
From-SVN: r82857
Danny Smith [Wed, 9 Jun 2004 21:03:48 +0000 (21:03 +0000)]
bitfield3.C: Add -mno-align-double compile option for mingw32 and cygwin targets.
* g++.dg/abi/bitfield3.C: Add -mno-align-double compile option
for mingw32 and cygwin targets.
From-SVN: r82856
Richard Henderson [Wed, 9 Jun 2004 21:00:35 +0000 (14:00 -0700)]
* expmed.c (emit_store_flag): Cope with FLOAT_STORE_FLAG_VALUE.
From-SVN: r82854
Geoffrey Keating [Wed, 9 Jun 2004 20:10:13 +0000 (20:10 +0000)]
Index: gcc/ChangeLog
2004-06-09 Geoffrey Keating <geoffk@apple.com>
* Makefile.in (CPPLIB_H): Put files in order of inclusion.
(CPP_ID_DATA_H): New.
(gtype-desc.o): Update dependencies.
(GTFILES): Use CPP_ID_DATA_H.
Index: gcc/testsuite/ChangeLog
2004-06-09 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/pch/macro-4.c: New.
* gcc.dg/pch/macro-4.hs: New.
Index: libcpp/ChangeLog
2004-06-09 Geoffrey Keating <geoffk@apple.com>
* traditional.c (push_replacement_text): Set macro->traditional.
(save_replacement_text): Likewise.
* pch.c (cpp_write_pch_state): Don't write list of defined macros.
(struct save_macro_item): Delete.
(struct save_macro_data): Use a character array not the previous
structured format.
(save_macros): Save macro as text not as internal structures.
(cpp_prepare_state): Update for changes to save_macro_data.
(cpp_read_state): Don't read macros defined in PCH. Restore
-D macros as text.
* macro.c (create_iso_definition): Honour alloc_subobject.
Clear traditional flag.
(_cpp_create_definition): Honour alloc_subobject.
* lex.c (cpp_token_val_index): New.
* internal.h: Include cpp-id-data.h.
(uchar): Move definition to cpp-id-data.h.
(U): Likewise.
(cpp_macro): Likewise.
* directives.c (struct answer): Move to cpp-id-data.h.
(do_assert): Honour alloc_subobject.
Index: libcpp/include/ChangeLog
2004-06-09 Geoffrey Keating <geoffk@apple.com>
* symtab.h (struct ht): Add field 'alloc_subobject'.
* cpplib.h (struct cpp_string): Add GTY marker.
(enum cpp_token_fld_kind): New.
(struct cpp_token): Add GTY markers.
(cpp_token_val_index): Prototype.
(CPP_HASHNODE_VALUE_IDX): New.
(struct cpp_hashnode): Don't skip fields of 'value' when marking.
* cpp-id-data.h: New file.
From-SVN: r82851
Toon Moene [Wed, 9 Jun 2004 19:57:24 +0000 (21:57 +0200)]
trans-expr.c (gfc_conv_cst_int_power): Compute x**(-n) by converting it to (1/x)**n instead of 1/x**n.
2004-06-09 Toon Moene <toon@moene.indiv.nluug.nl>
* trans-expr.c (gfc_conv_cst_int_power): Compute
x**(-n) by converting it to (1/x)**n instead of
1/x**n.
From-SVN: r82850
Frank Ch. Eigler [Wed, 9 Jun 2004 19:04:56 +0000 (19:04 +0000)]
ctype support.
2004-06-09 Frank Ch. Eigler <fche@redhat.com>
ctype support.
* configure.in: Look for ctype header and glibc implementation.
* mf-hooks2.c (__ctype_{b,toupper,tolower}_loc): Sample ctype
array hooks for glibc 2.3.
* mf-runtime.h.in: Wrap them.
* mf-runtime.c (__mf_init): Leave marker regarding other ctype
implementations.
* testsuite/libmudflap.c/pass47-frag.c: New test.
* configure, config.h.in: Regenerated.
From-SVN: r82848
Mark Mitchell [Wed, 9 Jun 2004 18:34:05 +0000 (18:34 +0000)]
revert: re PR c++/15815 (Update #pragma interface and #pragma implementation documentation.)
Revert:
PR c++/15815
2004-06-07 Mark Mitchell <mark@codesourcery.com>
* doc/extend.texi: Deprecate #pragma interface and #pragma
implementation.
Revert:
PR c++/15815
2004-06-07 Mark Mitchell <mark@codesourcery.com>
* lex.c (handle_pragma_interface): Deprecate.
(handle_pragma_implementation): Likewise.
From-SVN: r82847
David S. Miller [Wed, 9 Jun 2004 18:26:11 +0000 (18:26 +0000)]
sparc.h (MOVE_RATIO): New definition.
2004-06-09 David S. Miller <davem@nuts.davemloft.net>
* config/sparc/sparc.h (MOVE_RATIO): New definition.
From-SVN: r82844
Andrew Pinski [Wed, 9 Jun 2004 17:54:17 +0000 (17:54 +0000)]
g++spec.c (lang_specific_driver): Remove check for -lm and -lmath when check it see if it was the math library.
2004-06-09 Andrew Pinski <pinskia@physics.uc.edu>
* g++spec.c (lang_specific_driver): Remove check for -lm
and -lmath when check it see if it was the math library.
From-SVN: r82843
Richard Henderson [Wed, 9 Jun 2004 17:00:30 +0000 (10:00 -0700)]
basic-block.h (struct edge_def): Add goto_locus.
* basic-block.h (struct edge_def): Add goto_locus.
* tree-cfg.c (make_goto_expr_edges): Set it.
(disband_implicit_edges): Use it.
* tree-pretty-print.c (dump_implicit_edges): Print it.
From-SVN: r82842
Anil Paranjpe [Wed, 9 Jun 2004 16:44:31 +0000 (16:44 +0000)]
* h8300.md (ldm_h8300s_4): Fix condition for expander.
From-SVN: r82841
Jason Merrill [Wed, 9 Jun 2004 15:32:44 +0000 (11:32 -0400)]
Gimplify VA_ARG_EXPR into simpler forms.
* target.h: Add gimplify_va_arg_expr hook.
* target-def.h: Add TARGET_GIMPLIFY_VA_ARG_EXPR.
* fold-const.c (build_fold_addr_expr)
(build_fold_addr_expr_with_type): Move from gimplify.c.
* tree.h: Declare them.
* gimplify.c (gimplify_and_add): New fn.
(build_addr_expr, build_addr_expr_with_type): Move to fold-const.c.
(gimplify_array_ref_to_plus, gimplify_modify_expr)
(gimplify_expr): Use build_fold_*.
(copy_if_shared_r): Only mark VA_ARG_EXPR volatile if we
don't know how to gimplify it.
* builtins.c (std_gimplify_va_arg_expr): New fn.
(dummy_object): New static fn.
(gimplify_va_arg_expr): New fn.
(stabilize_va_list): Use build_fold_*.
* tree-gimple.h: Declare new fns.
* config/i386/i386.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(ix86_gimplify_va_arg): New fn.
* config/i386/ia64.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(ia64_gimplify_va_arg): New fn.
* config/i386/rs6000.c (rs6000_gimplify_va_arg): New fn.
(TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
* config/i386/sparc.c (sparc_gimplify_va_arg): New fn.
* alias.c (get_varargs_alias_set): Just return 0 for now.
* c-objc-common.c (c_tree_printer): Improve handling of %T.
From-SVN: r82838
Andrew Pinski [Wed, 9 Jun 2004 15:07:03 +0000 (15:07 +0000)]
tree-complex.c (expand_complex_comparison): Use fold_convert instead of convert.
2004-06-09 Andrew Pinski <pinskia@physics.uc.edu>
* tree-complex.c (expand_complex_comparison): Use fold_convert instead
of convert.
* tree-inline.c (setup_one_parameter): Likewise.
* tree-sra.c (csc_build_component_ref): Likewise.
* tree-ssa-ccp.c (ccp_fold): Likewise.
* tree-ssa-copy.c (cprop_operand): Likewise.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
* tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
From-SVN: r82837
Tobias Schlüter [Wed, 9 Jun 2004 13:08:13 +0000 (15:08 +0200)]
re PR fortran/13249 (Error when using COMMON)
PR fortran/13249
* gfortran.fortran-torture/compile/name_clash.f90: New test.
From-SVN: r82836
Tobias Schlüter [Wed, 9 Jun 2004 12:55:50 +0000 (14:55 +0200)]
re PR fortran/13372 (ICE in trans-types.c (gfc_typenode_for_spec), see #13201)
fortran/
PR fortran/13372
* module.c (write_symbol, write_symtree): Don't write symbols
wrongly added to namespace.
* trans-decl.c (gfc_create_module_variable): Don't create a
backend decl for a symbol incorrectly added to namespace.
testsuite/
PR fortran/13372
* gfortran.fortran-torture/compile/named_args_2.f90: New test.
From-SVN: r82834
J"orn Rennecke [Wed, 9 Jun 2004 12:48:21 +0000 (12:48 +0000)]
re PR rtl-optimization/15521 (sched1 extends life of hard registers on SMALL_REGISTER_CLASSES targets when exceptions are enabled)
PR rtl-optimization/15521:
* sched-int.h (in_post_call_group_p): Change type to enum.
* sched-deps.c (sched_analyze_insn):
(sched_analyze): When in_post_call_group_p is post_call_initial,
don't add a dependency, but still set SCHED_GROUP_P and CANT_MOVE,
and also reset in_post_call_group_p to post_call.
(sched_analyze): When the previous basic block ended in a CALL_INSN,
initialize in_post_call_group_p as post_call_initial.
(init_deps): initialize in_post_call_group_p to not_post_call.
From-SVN: r82831
Tobias Schlüter [Wed, 9 Jun 2004 12:35:39 +0000 (14:35 +0200)]
re PR fortran/13201 (PARAMETER variables of nonconstant shape are accepted)
PR fortran/13201
* resolve.c (resolve_symbol): Verify that parameter array has an
explicit shape. Fix typos and coding style issues in surrounding
lines.
From-SVN: r82830
Paolo Bonzini [Wed, 9 Jun 2004 09:07:11 +0000 (09:07 +0000)]
gcc_release (build_sources): Move the libcpp gmo files to the source directory.
maintainer-scripts/ChangeLog:
2004-06-09 Paolo Bonzini <bonzini@gnu.org>
* gcc_release (build_sources): Move the libcpp gmo files
to the source directory.
libcpp/ChangeLog:
2004-06-09 Paolo Bonzini <bonzini@gnu.org>
* Makefile.am (all-local): New.
* Makefile.in: Regenerate.
From-SVN: r82819
Arnaud Charlet [Wed, 9 Jun 2004 08:42:27 +0000 (10:42 +0200)]
re PR ada/6637 (Would be nice to support --enable-shared=gnat)
PR ada/6637
* doc/install.texi: List ada, libada as options to --enable-shared
From-SVN: r82818
Paolo Bonzini [Wed, 9 Jun 2004 08:17:32 +0000 (08:17 +0000)]
Makefile.tpl (touch-stage[+id+]): New.
2004-06-09 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (touch-stage[+id+]): New.
(restage[+prev+]): Depend on touch-stage[+id+].
* Makefile.tpl (RECURSE_FLAGS_TO_PASS): New.
Use it throughout.
* Makefile.def: Add profile and feedback bootstrap stages.
Remove next field from bootstrap stages.
* Makefile.tpl (LN, LN_S): Substitute.
(stageN-start, stageN-end): Use double-colon rules, to
provide a hook for additional setup commands.
(distclean-stageN-gcc, restageN): Create dependencies from
[+prev+], not from [+next+].
(stageN-bubble): Add commands for successive stages from
[+prev+], using double-colon rules.
(all-stageN-gcc): Fix typo.
(stagefeedback-start, profiledbootstrap): New.
* Makefile.in: Regenerate.
* configure.in: Call ACX_PROG_LN.
* configure: Regenerate.
config/ChangeLog:
2004-06-09 Paolo Bonzini <bonzini@gnu.org>
* acx.m4 (ACX_PROG_LN): From gcc, modified to
accept a parameter.
gcc/ChangeLog:
2004-06-09 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4 (gcc_AC_PROG_LN): Remove.
(gcc_AC_CHECK_DECLS): Use AH_TEMPLATE to generate
config.in entries.
* configure.ac: Call ACX_PROG_LN, falling back to $LN_S
if hard links are not available.
* configure: Regenerate.
* config.in: Regenerate.
From-SVN: r82816
Benjamin Kosnik [Wed, 9 Jun 2004 07:26:28 +0000 (07:26 +0000)]
crossconfig.m4: Remove signbit, signbitf, signbitl.
2004-06-09 Benjamin Kosnik <bkoz@redhat.com>
* crossconfig.m4: Remove signbit, signbitf, signbitl.
* linkage.m4: Comment LIBMATHOBJS, tweak others. AC_DEFINES for
builtin math functions instead of AC_DEFINE_UNQUOTED.
* configure: Regenerate.
From-SVN: r82815
Benjamin Kosnik [Wed, 9 Jun 2004 06:09:17 +0000 (06:09 +0000)]
filter.sed: Rename _GLIBCXX_STD to std.
2004-06-08 Benjamin Kosnik <bkoz@redhat.com>
* docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
* docs/doxygen/mainpage.html: Remove links.
From-SVN: r82814
Jason Merrill [Wed, 9 Jun 2004 03:56:34 +0000 (23:56 -0400)]
linker-map.gnu: Use wildcards for __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
* config/linker-map.gnu: Use wildcards for
__basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
From-SVN: r82813
Per Bothner [Wed, 9 Jun 2004 01:12:01 +0000 (18:12 -0700)]
* configure.ac: New --enable-mapped-location sets USE_MAPPED_LOCATION.
From-SVN: r82809
Bud Davis [Wed, 9 Jun 2004 01:03:02 +0000 (01:03 +0000)]
re PR libfortran/14897 ('T' edit descriptor output incorrect)
2004-06-09 Bud Davis <bdavis9659@comcast.net>
PR gfortran/14897
* gfortran.fortran-torture/execute/t_edit.f90
* io/transfer.c (formatted_transfer): position is unique
for T and TL edit descriptors.
(data_transfer_init): set record length to size of internal
file.
From-SVN: r82808
Bud Davis [Wed, 9 Jun 2004 00:55:04 +0000 (00:55 +0000)]
re PR libfortran/15755 (gfortran: backspace call causes bus error)
2004-06-08 Bud Davis <bdavis9659@comcast.net>
PR gfortran/15755
* gfortran.fortran-torture/execute/backspace.c : New test.
* io/backspace.c(st_backspace): call correct routine for
formatted and un-formatted units.
From-SVN: r82806
Paul Brook [Wed, 9 Jun 2004 00:37:20 +0000 (00:37 +0000)]
* gfortran.fortran-torture/execure/intrinsic_associated.f90
(pointer_to_section): Rewrite to use smaller array.
From-SVN: r82805
GCC Administrator [Wed, 9 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82802.2
GCC Administrator [Wed, 9 Jun 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82800.2
Richard Kenner [Wed, 9 Jun 2004 00:10:51 +0000 (00:10 +0000)]
toplev.c (floor_log2_wide): Correct casts for 64-bit hosts.
* toplev.c (floor_log2_wide): Correct casts for 64-bit hosts.
Correct formatting.
From-SVN: r82798
James E Wilson [Tue, 8 Jun 2004 22:32:08 +0000 (22:32 +0000)]
re PR target/15790 ([3.4 only] Alignment error building gcc with i686-coff target)
PR target/15790
* config/i386/i386-coff.h (ASM_OUTPUT_ALIGN): Define.
From-SVN: r82796
Paolo Carlini [Tue, 8 Jun 2004 22:19:18 +0000 (22:19 +0000)]
pool_allocator.h: Convert to a global free-list, as per the original SGI/HP design...
2004-06-08 Paolo Carlini <pcarlini@suse.de>
* include/ext/pool_allocator.h: Convert to a global free-list,
as per the original SGI/HP design: move the implementation
details to struct __pool_base, from which __pool_alloc derives.
* src/allocator.cc: Instantiate __pool_base.
From-SVN: r82794
Andrew Pinski [Tue, 8 Jun 2004 22:03:29 +0000 (22:03 +0000)]
fold-const.c (fold_convert): Treat OFFSET_TYPE like POINTER_TYPE and INTEGER_TYPE.
2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
* fold-const.c (fold_convert): Treat OFFSET_TYPE like
POINTER_TYPE and INTEGER_TYPE.
From-SVN: r82792
Bernardo Innocenti [Tue, 8 Jun 2004 21:46:32 +0000 (23:46 +0200)]
modulo-sched.c: Compile only when INSN_SCHEDULING is defined.
* modulo-sched.c: Compile only when INSN_SCHEDULING is
defined.
From-SVN: r82791
Jeff Law [Tue, 8 Jun 2004 20:03:51 +0000 (14:03 -0600)]
contrib.texi: Add entries for Stefan Olsson and Ola Ronnerup.
* doc/contrib.texi: Add entries for Stefan Olsson and
Ola Ronnerup.
From-SVN: r82781
DJ Delorie [Tue, 8 Jun 2004 19:24:07 +0000 (15:24 -0400)]
toplev.c (floor_log2_wide): Replace loop with faster bit operations.
* toplev.c (floor_log2_wide): Replace loop with faster bit
operations.
(exact_log2_wide): Define in terms of the above.
* toplev.h (floor_log2): Use _builtin_clz family of builtins if
available.
From-SVN: r82778
Andrew Pinski [Tue, 8 Jun 2004 18:56:45 +0000 (18:56 +0000)]
rs6000.c (print_operand, <case 'z'>): Make sure that we are in INDIRECT mode when getting the stub name.
2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
* config/rs6000/rs6000.c (print_operand, <case 'z'>):
Make sure that we are in INDIRECT mode when getting the
stub name.
From-SVN: r82777
David Edelsohn [Tue, 8 Jun 2004 18:45:38 +0000 (18:45 +0000)]
altivec-1.c: XFAIL powerpc-ibm-aix*.
* gcc.dg/ext/altivec-1.c: XFAIL powerpc-ibm-aix*.
* gcc.dg/ext/altivec-10.c: Same.
* gcc.dg/ext/altivec-11.c: Same.
* gcc.dg/ext/altivec-12.c: Same.
* gcc.dg/ext/altivec-13.c: Same.
* gcc.dg/ext/altivec-14.c: Same.
* gcc.dg/ext/altivec-15.c: Same.
* gcc.dg/ext/altivec-16.c: Same.
* gcc.dg/ext/altivec-3.c: Same.
* gcc.dg/ext/altivec-4.c: Same.
* gcc.dg/ext/altivec-6.c: Same.
* gcc.dg/ext/altivec-7.c: Same.
* gcc.dg/ext/altivec-8.c: Same.
* gcc.dg/ext/altivec-varargs-1.c: Same.
From-SVN: r82776
David Edelsohn [Tue, 8 Jun 2004 18:32:15 +0000 (18:32 +0000)]
altivec-1.C: Correct dg syntax.
* g++.dg/ext/altivec-1.C: Correct dg syntax.
* g++.dg/ext/altivec-10.C: Same.
* g++.dg/ext/altivec-2.C: Same.
* g++.dg/ext/altivec-3.C: Same.
* g++.dg/ext/altivec-4.C: Same.
* g++.dg/ext/altivec-5.C: Same.
* g++.dg/ext/altivec-6.C: Same.
* g++.dg/ext/altivec-7.C: Same.
* g++.dg/ext/altivec-8.C: Same.
* g++.dg/ext/altivec-9.C: Same.
From-SVN: r82774
Anil Paranjpe [Tue, 8 Jun 2004 16:43:46 +0000 (16:43 +0000)]
h8300.md (extendqisi2_h8300): Add constraints.
* h8300.md (extendqisi2_h8300): Add constraints.
(ldm_h8300s_4_normal): Fix typo.
From-SVN: r82769
Richard Henderson [Tue, 8 Jun 2004 16:29:57 +0000 (09:29 -0700)]
gimple-low.c (struct lower_data): Replace the_return_label and one_return_stmt with return_statements.
* gimple-low.c (struct lower_data): Replace the_return_label and
one_return_stmt with return_statements.
(lower_function_body): Process the entire list of return_statements.
(lower_return_expr): Check source value before unifying return_exprs.
* gimplify.c (gimplify_return_expr): Force the use of a temporary
for !aggregate_value_p.
* tree-gimple.c: Update RETURN_EXPR grammer.
From-SVN: r82768
Vladimir Makarov [Tue, 8 Jun 2004 15:58:28 +0000 (15:58 +0000)]
re PR target/15598 (Gcc 3.4 ICE on valid code)
2004-06-08 Vladimir Makarov <vmakarov@redhat.com>
PR target/15598
* config/ia64/ia64.c (bundling): Add missed TYPE_A.
From-SVN: r82767
Andrew Pinski [Tue, 8 Jun 2004 13:30:33 +0000 (06:30 -0700)]
re PR java/15769 (ICE: infinite recursion through gimplify_expr)
2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
PR java/15769
* libjava.compile/PR15769.java: New test.
From-SVN: r82757
Andrew Pinski [Tue, 8 Jun 2004 13:27:38 +0000 (13:27 +0000)]
re PR java/15769 (ICE: infinite recursion through gimplify_expr)
2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
PR java/15769
* expr.c (java_truthvalue_conversion): Handle
UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR,
ORDERED_EXPR, and UNORDERED_EXPR as comparison operators,
i.e. return the expression.
From-SVN: r82756
Zdenek Dvorak [Tue, 8 Jun 2004 13:26:04 +0000 (15:26 +0200)]
re PR rtl-optimization/15717 (Error: can't resolve `L0' {*ABS* section} - `xx' {*UND* section})
PR rtl-optimization/15717
* config/i386/i386.c (legitimate_constant_p): Do not allow
x - symbol_ref.
From-SVN: r82755
Richard Kenner [Tue, 8 Jun 2004 12:25:03 +0000 (08:25 -0400)]
Correct indentation of one line.
From-SVN: r82753
Arnaud Charlet [Tue, 8 Jun 2004 09:53:14 +0000 (11:53 +0200)]
re PR ada/15568 (Shared libgnat fails to link on IRIX 6 with GNU ld)
PR ada/15568
* Makefile.in: Remove target specific SO_OPT on IRIX
From-SVN: r82752
Alexandre Oliva [Tue, 8 Jun 2004 05:21:51 +0000 (05:21 +0000)]
gimplify.c (copy_if_shared_r): Revert: 2004-05-21 Richard Henderson <rth@redhat.com>
* gimplify.c (copy_if_shared_r): Revert:
2004-05-21 Richard Henderson <rth@redhat.com>
* gimplify.c [...] Don't mark VA_ARG_EXPRs volatile here.
From-SVN: r82745
Canqun Yang [Tue, 8 Jun 2004 04:31:24 +0000 (12:31 +0800)]
MAINTAINERS (Write After Approval): Add myself.
2004-06-08 Canqun Yang <canqun@nudt.edu.cn>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r82744
Roger Sayle [Tue, 8 Jun 2004 04:30:48 +0000 (04:30 +0000)]
expmed.c (add_cost, [...]): Make arrays indexed by machine mode.
* expmed.c (add_cost, neg_cost, sdiv_pow2_cheap, smod_pow2_cheap):
Make arrays indexed by machine mode. Rename negate_cost to neg_cost.
(init_expmed): Initialize these cost arrays as appropriate.
(store_bit_field, extract_bit_field): Correct whitespace.
(synth_mult, choose_mult_variant, expand_mult, expand_mult_highpart,
expand_mult_highpart_optab, expand_divmod): Update uses of add_cost,
neg_cost, sdiv_pow2_cheap, smod_pow2_cheap to index with mode,
word_mode or compute_mode as appropriate.
From-SVN: r82743
Giovanni Bajo [Tue, 8 Jun 2004 03:24:37 +0000 (03:24 +0000)]
re PR c++/7841 (gcc accepts illegal member function syntax for template classes)
PR c++/7841
* parser.c (cp_parser_direct_declarator): Reject constructor named
as qualified template-id.
PR c++/7841
* g++.old-deja/g++.pt/ctor2.C: Add error mark.
From-SVN: r82741
GCC Administrator [Tue, 8 Jun 2004 00:16:25 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82733.2
GCC Administrator [Tue, 8 Jun 2004 00:16:20 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r82732.2
Dhruv Matani [Mon, 7 Jun 2004 21:56:16 +0000 (21:56 +0000)]
2004-06-07 Dhruv Matani <dhruvbird@gmx.net>
Paolo Carlini <pcarlini@suse.de>
* testsuite/testsuite_performance.h
(resource_counter::allocated_memory): Make it return the right
number of bytes requested by the allocators/application. This is
the sbrk+mmaped memory.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r82725
Eric Botcazou [Mon, 7 Jun 2004 20:58:33 +0000 (22:58 +0200)]
re PR target/15783 (ICE with union assignment in 64-bit mode)
PR target/15783
* config/sparc/sparc.c (function_arg_union_value): Add 'mode'
parameter. Enumerate the registers inside the PARALLEL.
(function_arg): Adjust call to function_arg_union_value.
(function_value): Likewise.
From-SVN: r82722
Roger Sayle [Mon, 7 Jun 2004 20:50:14 +0000 (20:50 +0000)]
real.c (real_copysign): New function to implement libm's copysign.
* real.c (real_copysign): New function to implement libm's copysign.
* real.h (real_copysign): Prototype here.
* fold-const.c (tree_expr_nonnegative_p): The result of sqrt, sqrtf
and sqrtl can be negative, as sqrt(-0.0) = -0.0. Correct whitespace.
* builtins.c (fold_builtin_isascii, fold_builtin_toascii,
fold_builtin_isdigit): Add function prototypes.
(fold_builtin_copysign): New function to fold copysign, copysignf
and copysignl. Optimize copysign(x,x) as x. Evaluate copysign of
constant arguments at compile-time using real_copysign. Fold
copysign(X,Y) as fabs(X) if Y is always non-negative.
(fold_builtin_1): Correct minor whitespace/style issues. Call
fold_builtin_copysign for BUILT_IN_COPYSIGN{,F,L}.
* gcc.dg/builtins-41.c: New test case.
* gcc.dg/builtins-42.c: New test case.
From-SVN: r82721
J"orn Rennecke [Mon, 7 Jun 2004 20:46:40 +0000 (20:46 +0000)]
* tree.c (iterative_hash_expr): Use real_hash.
From-SVN: r82720
David Edelsohn [Mon, 7 Jun 2004 20:36:56 +0000 (20:36 +0000)]
altivec-1.C: XFAIL powerpc-ibm-aix*.
* g++.dg/ext/altivec-1.C: XFAIL powerpc-ibm-aix*.
* g++.dg/ext/altivec-10.C: Same.
* g++.dg/ext/altivec-2.C: Same.
* g++.dg/ext/altivec-3.C: Same.
* g++.dg/ext/altivec-4.C: Same.
* g++.dg/ext/altivec-5.C: Same.
* g++.dg/ext/altivec-6.C: Same.
* g++.dg/ext/altivec-7.C: Same.
* g++.dg/ext/altivec-8.C: Same.
* g++.dg/ext/altivec-9.C: Same.
* g++.old-deja/g++.abi/cxa_vec.C: Same.
* g++.old-deja/g++.brendan/new3.C: Same.
* gcc.c-torture/execute/eeprof-1.x: Same.
From-SVN: r82718
Richard Kenner [Mon, 7 Jun 2004 19:52:53 +0000 (19:52 +0000)]
ada-tree.def (TRANSFORM_EXPR, [...]): Deleted.
* ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
(GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
(BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
(ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
(STMT_STMT, USE_STMT): New statement codes.
(LOOP_STMT, EXIT_STMT): Make slight semantic changes.
* ada-tree.h: Reflect above changes.
(struct tree_loop_id): Deleted.
(union lang_tree_node, struct lang_decl, struct lang_type):
Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
and DECL_LANGUAGE_SPECIFIC to reflect these changes.
(DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
(IS_ADA_STMT): New macro.
* decl.c (annotate_decl_with_node): New function.
(gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
(gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
Call add_stmt_with_node to do needed assignments.
Add call to update setjmp buffer directly, not via EXPR_STMT.
(maybe_variable): Argment GNAT_NODE deleted.
* gigi.h (maybe_variable): Likewise.
(make_transform, add_stmt_with_node, set_block_for_group): New.
(gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
(set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
(discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
(set_lineno, set_lineno_from_sloc): Likewise.
(record_code_position, insert_code_for): Likewise.
(gnat_poplevel): Now returns void.
(end_subprog_body): Now takes argument.
* misc.c (cgraph.h, tree-inline.h): New includes.
(gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
(gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
(LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
(LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
(gnat_parse_file): Don't set immediate_size_expand.
Call cgraph functions.
(gnat_expand_expr): Remove most cases.
(record_code_position, insert_code_for): Remove from here.
* trans.c (toplev.h, tree-gimple.h): Now included.
(discard_file_names): Deleted.
(gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
(first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
(struct stmt_group, current_stmt_group, stmt_group_free_list): New.
(gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
(add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
(gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
(set_block_for_group, add_stmt_list): Likewise.
(start_stmt_group): Renamed from start_block_stmt.
(end_stmt_group): Likewise, from end_block_stmt.
(build_stmt_group): Likewise, from build_block_stmt, also add arg.
(gigi): Don't set discard_file_names or call set_lineno.
Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
(tree_transform): Deleted, now renamed to be gnat_to_gnu.
Numerous changes throughout to reflect new names and complete
function-at-a-time implementation.
(gnat_expand_stmt): Delete or comment out all cases.
(process_inlined_subprograms): Use add_stmt.
(process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
call set_lineno; also remove unneeded block handling.
(process_type): Remove unneeded block handling.
(build_unit_elab): Remove calls to deleted functions.
* utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
(tree-dump.h): Likewise.
(struct ada_binding_level): Add field jmpbuf_decl.
(gnat_define_builtin, gnat_install_builtins): New.
(gnat_gimplify_function, gnat_finalize): Likewise.
(gnat_poplevel): No longer return BLOCK, set it instead.
Remove code dealing with nested functions.
(gnat_init_decl_processing): Also set size_type_node.
Call gnat_install_builtins.
(create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
(create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
Remove special-case for "main".
(end_subprog_body): Add arg and rework for tree-ssa.
(convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
Add case for BOOLEAN_TYPE.
* utils2.c (rtl.h): Now include.
(build_call_raise): Test Debug_Flag_NN directly.
(build_call_alloc_dealloc): Don't use local stack allocation for now.
(gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
(gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
From-SVN: r82714
Joseph Myers [Mon, 7 Jun 2004 19:49:31 +0000 (20:49 +0100)]
re PR c/14765 (ice-on-invalid-code, ICE while compiling ({}) expression)
PR c/14765
* c-parse.in (compstmt_primary_start): Set last_expr_type to
NULL_TREE.
testsuite:
* gcc.dg/pr14765-1.c: New test.
From-SVN: r82713
Mark Mitchell [Mon, 7 Jun 2004 19:23:28 +0000 (19:23 +0000)]
re PR c++/15815 (Update #pragma interface and #pragma implementation documentation.)
PR c++/15815
* lex.c (handle_pragma_interface): Deprecate.
(handle_pragma_implementation): Likewise.
PR c++/15815
* doc/extend.texi: Deprecate #pragma interface and #pragma
implementation.
From-SVN: r82712
Alexandre Oliva [Mon, 7 Jun 2004 19:06:28 +0000 (19:06 +0000)]
re PR middle-end/15666 ([unit-at-a-time] Gcc abort on valid code)
PR middle-end/15666
* c-decl.c (finish_decl): Use change_decl_assembler_name for the
builtin decl as well.
From-SVN: r82706
Roger Sayle [Mon, 7 Jun 2004 18:49:36 +0000 (18:49 +0000)]
re PR c/14649 (atan(1.0) should not be a constant expression)
PR c/14649
* c-typeck.c (require_constant_value, require_constant_elements):
Move declarations to the top of the file.
(build_function_call): If we require a constant value, fold with
fold_initializer. If the result is a constant, and the function
wasn't called using __builtin_foo, issue a pedantic warning.
(build_unary_op): If we require a constant value, fold tree with
fold_initializer.
(build_binary_op): Use require_constant_value to determine whether
to call fold or fold_initializer.
* gcc.dg/pr14649-1.c: New test case.
From-SVN: r82705