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
Sean McNeil [Mon, 7 Jun 2004 18:39:30 +0000 (18:39 +0000)]
configure.ac: Add x86_64-*-freebsd* support.
2004-06-06 Sean McNeil <sean@mcneil.com>
* configure.ac: Add x86_64-*-freebsd* support.
* configure: Regenerate.
From-SVN: r82703
Richard Henderson [Mon, 7 Jun 2004 17:53:03 +0000 (10:53 -0700)]
gimple-low.c (struct lower_data): Add the_return_label and one_return_stmt.
* gimple-low.c (struct lower_data): Add the_return_label and
one_return_stmt.
(lower_function_body): Initialize and use them.
(lower_return_expr): New.
(lower_stmt): Call it.
* gimplify.c (gimplify_return_expr): Force the argument to be either
null or a result_decl.
* tree-gimple.c: Update gimple grammer to match.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Deny
coalescing of result_decls.
testsuite/
* gcc.dg/tree-ssa/
20030728-1.c: Fixup return value to not match
if temporaries.
From-SVN: r82701
David Edelsohn [Mon, 7 Jun 2004 17:49:50 +0000 (17:49 +0000)]
* g++.dg/eh/elide1.C: Remove XFAIL.
From-SVN: r82700
Richard Henderson [Mon, 7 Jun 2004 17:21:05 +0000 (10:21 -0700)]
re PR rtl-optimization/15193 (Unary minus using pointer to V4SF vector causes -fforce-mem to exhaust all memory)
PR rtl-opt/15193
* expmed.c (extract_bit_field): Fix vector_extract return.
* config/i386/i386.md (negv4sf2): New pattern.
From-SVN: r82699
Mark Mitchell [Mon, 7 Jun 2004 16:20:40 +0000 (16:20 +0000)]
Fix typo
From-SVN: r82694
Mark Mitchell [Mon, 7 Jun 2004 15:54:15 +0000 (15:54 +0000)]
re PR c++/15337 (sizeof on incomplete type diagnostic)
PR c++/15337
* error.c (c_sizeof_or_alignof_type): Use more detailed error
message.
PR c++/15766
* parser.c (cp_parser_iteration_statement): Fix typo in error
message.
PR c++/14777
* pt.c (tsubst_default_argument): Do not defer access checks
while substituting into the default argument.
PR c++/15554
* pt.c (tsubst_copy): Do not try to substitute for an enumeration
constant in a non-dependent context.
PR c++/15057
* except.c (build_throw): Ensure that temp_expr has been
initialized.
PR c++/15337
* g++.dg/expr/sizeof3.C: New test.
PR c++/14777
* g++.dg/template/access14.C: New test.
PR c++/15554
* g++.dg/template/enum1.C: New test.
PR c++/15057
* g++.dg/eh/throw1.C: New test.
From-SVN: r82693
Arnaud Charlet [Mon, 7 Jun 2004 14:16:34 +0000 (16:16 +0200)]
[multiple changes]
2004-06-07 Robert Dewar <dewar@gnat.com>
* a-direct.ads, einfo.ads: Minor comment updates
* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
* s-interr-sigaction.adb: Remove unreferenced variable
(Attached_Interrupts). Minor reformatting.
Avoid use of variable I (replace by J).
* par-ch10.adb: Fix text of one error message
* checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
2005 support.
2004-06-07 Doug Rupp <rupp@gnat.com>
* mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
* s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
* mlib-tgt-vms-ia64.adb: New file.
* Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
Add mlib-tgt-vms-ia64.adb
Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
Move to alpha specific ifeq section.
Add VMS specific versions of symbols.adb
Renaming of 5q vms files.
* 5qsystem.ads renamed to system-vms_64.ads.
2004-06-07 Vincent Celier <celier@gnat.com>
* a-calend.ads: Add a GNAT Note comment after function Time_Of to
explain that when a time of day corresponding to the non existing hour
on the day switching to DST is specified, Split may return a different
value for Seconds.
* gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
to GNAT PRETTY.
* g-os_lib.adb (OpenVMS): New Boolean value imported from System.
(Normalize_Pathname): Only resolve VMS logical names when on VMS.
* mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
to False.
If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
the linking options.
(Build_Library.Check_Libs): On VMS, if there is a dependency on
g-trasym.ads, set Gtrasymobj_Needed to True.
* prj-attr.adb: Add new package Metrics for gnatmetric
* prj-nmsc.adb (Record_Other_Sources): Put source file names in
canonical case to take into account files with upper case characters on
Windows.
(Ada_Check): Load the reference symbol file name in the name buffer to
check it, not the symbol file name.
* snames.ads, snames.adb: Add standard name Metrics (name of project
file package for gnatmetric).
* vms_conv.ads: Add Metric to Comment_Type
* vms_conv.adb (Initialize): Add component dor Metric in Command_List
* vms_data.ads: Add qualifiers for GNAT METRIC
* makegpr.adb (Link_Executables): Take into account the switches
specified in package Linker of the main project.
2004-06-07 Thomas Quinot <quinot@act-europe.fr>
* bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
the index of the last element is Units.Last, not Units.Table'Last
(which is usually not a valid index within the actually allocated
storage for the table).
* exp_ch4.adb (Insert_Dereference_Action): Change predicate that
determines whether to generate a call to a checked storage pool
Dereference action.
Generate such a call only for a dereference that either comes from
source, or is the result of rewriting a dereference that comes from
source.
2004-06-07 Romain Berrendonner <berrendo@act-europe.fr>
* bindgen.adb (Gen_Output_File): Add support for GAP builds.
2004-06-07 Eric Botcazou <ebotcazou@act-europe.fr>
(gnat_to_gnu_entity) <E_Array_Subtype>: For multi-dimensional arrays at
file level, elaborate the stride for inner dimensions in alignment
units, not bytes.
* exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
in a comment.
2004-06-07 Javier Miranda <miranda@gnat.com>
* exp_ch6.adb: Correct wrong modification in previous patch
2004-06-07 Vasiliy Fofanov <fofanov@act-europe.fr>
* g-trasym.ads: Corrected comment to properly reflect level of support
on VMS.
2004-06-07 Hristian Kirtchev <kirtchev@gnat.com>
* lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
includes case of a variable referenced on the left hand side of an
assignment, therefore remove redundant code. Variables and prefixes of
indexed or selected components are now marked as referenced on left
hand side. Warnings are now properly emitted when variables or prefixes
are assigned but not read.
* sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
left hand side referenced variables. Private access types do not
produce the warning "variable ... is assigned but never read".
Add also additional checks to left hand side referenced variables.
Aliased, renamed objects and access types do not produce the warning
"variable ... is assigned but never read" since other entities may read
the memory location.
2004-06-07 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in: In the powerpc/vxworks-specific section, restore
EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
by mistake).
2004-06-07 Ed Schonberg <schonberg@gnat.com>
* sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
predefined operators.
Removes spurious type errors from g-trasym-vms.adb.
* sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
distinct from the operator appearing in the source, call appropriate
routine to insert conversions when needed, and complete resolution of
node.
(Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
interpretations for rewritten right operand.
(Set_Mixed_Mode_Operand): Handle properly a universal real operand when
the other operand is overloaded and the context is a type conversion.
2004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* ada-tree.def (BLOCK_STMT): Now has two operands.
(BREAK_STMT): New.
* ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
* gigi.h: (gnat_poplevel): Now returns a tree.
* trans.c (end_block_stmt): Add arg; all callers changed.
(tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
(start_block_stmt): Clear BLOCK_STMT_BLOCK.
(add_stmt): Set TREE_TYPE.
(gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
(gnat_expand_stmt, case BREAK_STMT): New case.
* utils.c (gnat_poplevel): Return a BLOCK, if we made one.
2004-06-07 Jose Ruiz <ruiz@act-europe.fr>
* s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
procedure Set_Stack_Size that is not needed.
2004-06-07 Sergey Rybin <rybin@act-europe.fr>
* gnat_ugn.texi: Clarify the case when non-standard naming scheme is
used for gnatpp input file and for the files upon which it depends
2004-06-07 Ben Brosgol <brosgol@gnat.com>
* gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
2004-06-07 Arnaud Charlet <charlet@act-europe.fr>
* gnatvsn.ads: Bump version numbers appropriately.
Add new build type.
2004-06-07 Pascal Obry <obry@gnat.com>
* gnat_ugn.texi: Improve comments about imported names and link names
on Windows. Add a note about the requirement to use -k gnatdll's option
when working with a DLL which has stripped stdcall symbols (no @nn
suffix).
From-SVN: r82691
Ziemowit Laski [Mon, 7 Jun 2004 08:50:50 +0000 (08:50 +0000)]
Correct previous ChangeLog entry.
From-SVN: r82686
David Ayers [Mon, 7 Jun 2004 08:48:31 +0000 (10:48 +0200)]
objc.exp (objc_target_compile): Revert the '-framework Foundation' flag fix...
[gcc/testsuite/ChangeLog]
2004-06-07 David Ayers <d.ayers@inode.at>
Ziemowit Laski <zlaski@apple.com>
* lib/objc.exp (objc_target_compile): Revert the '-framework
Foundation' flag fix, since bare Darwin does not ship
with the Foundation framework.
* objc/execute/next_mapping.h: Provide a local NSConstantString
@interface and @implementation.
(objc_constant_string_init): A constructor function, used to
initialize the NSConstantString meta-class object.
* objc/execute/string1.m: Include "next_mapping.h" instead of
<Foundation/NSString.h>.
* objc/execute/string2.m: Likewise.
* objc/execute/string3.m: Likewise.
* objc/execute/string4.m: Likewise.
Co-Authored-By: Ziemowit Laski <zlaski@apple.com>
From-SVN: r82685
Paolo Bonzini [Mon, 7 Jun 2004 08:17:35 +0000 (08:17 +0000)]
config.in: Regenerate.
2004-06-06 Paolo Bonzini <bonzini@gnu.org>
* config.in: Regenerate.
From-SVN: r82684