gcc.git
20 years agobuiltins.c (expand_builtin): Fall back to library function call for conj...
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

20 years agore PR c++/15875 (rejects pointer to member in template)
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

20 years agosh.c (dump_table): New argument start.
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

20 years agostd_complex.h (sin(const complex<_Tp>& __z)): Make this function return a value.
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

20 years agofix conflict markers
Jason Merrill [Thu, 10 Jun 2004 15:50:26 +0000 (11:50 -0400)]
fix conflict markers

From-SVN: r82926

20 years agotarget.h (struct gcc_target): Change gimplify_va_arg_expr hook signature.
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

20 years agore PR libmudflap/13505 ([tree-ssa] libmudflap mf-hooks2.c build failure on cygwin)
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

20 years agoMakefile.in (df.o): Remove fibheap dependency.
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

20 years agore PR c++/15227 (Trouble with invalid function definition)
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

20 years agofold-const.c (fold_abs_const): Make extern.
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

20 years agore PR fortran/14957 (testsuite issues)
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

20 years agore PR target/15569 (Gcc 3.4.1 failed to build ia64 2.6.6 kernel)
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

20 years agounwind-ia64.c (uw_frame_state_for): Don't assume a leaf function without unwind info...
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

20 years agounix.S (ffi_call_unix): Insert group barrier break fp_done.
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

20 years agoOops.
Jakub Jelinek [Thu, 10 Jun 2004 08:11:29 +0000 (10:11 +0200)]
Oops.

From-SVN: r82903

20 years agore PR c++/14791 (13070 does not fix -Wformat with fprintf)
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

20 years ago* interpret.cc (run): Handle wide fload.
Tom Tromey [Thu, 10 Jun 2004 06:18:18 +0000 (06:18 +0000)]
* interpret.cc (run): Handle wide fload.

From-SVN: r82889

20 years agoFix typos.
Jakub Jelinek [Thu, 10 Jun 2004 05:57:58 +0000 (07:57 +0200)]
Fix typos.

From-SVN: r82887

20 years agoclean up obsolete comment
Jason Merrill [Thu, 10 Jun 2004 05:32:44 +0000 (01:32 -0400)]
clean up obsolete comment

From-SVN: r82885

20 years ago* gcc_update: Add libgfortran.
Andreas Jaeger [Thu, 10 Jun 2004 04:50:45 +0000 (06:50 +0200)]
* gcc_update: Add libgfortran.

From-SVN: r82884

20 years agotree-ssa.c (verify_ssa): Verify that vdefs/makes_aliased_stores match.
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

20 years agoi386-bitfield1.c: Add mingw32 and cygwin to targets that use default windows32 struct...
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

20 years agoDaily bump.
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

20 years agoDaily bump.
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

20 years agofold-const.c (fold_not_const): New function.
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

20 years agore PR middle-end/15228 (useless copies of floating point operands)
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

20 years agore PR tree-optimization/15108 ([tree-ssa] [regression] missed sib-calling for pointer...
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

20 years agoMove SSA_NAME annotations into tree_ssa_name.
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

20 years agowinnt.c (i386_pe_output_labelref): Correct misplaced ')'.
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

20 years ago* config/i386/winnt.c (i386_pe_output_labelref); Correct
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

20 years agok6.md: Rewrite using the DFA model.
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

20 years agoalpha.c (alpha_gimplify_va_arg_1, [...]): New.
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

20 years agore PR libstdc++/15775 (Allocator::pointer consistently ignored)
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

20 years agobitfield3.C: Add -mno-align-double compile option for mingw32 and cygwin targets.
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

20 years ago* expmed.c (emit_store_flag): Cope with FLOAT_STORE_FLAG_VALUE.
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

20 years agoIndex: gcc/ChangeLog
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

20 years agotrans-expr.c (gfc_conv_cst_int_power): Compute x**(-n) by converting it to (1/x)...
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

20 years agoctype support.
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

20 years agorevert: re PR c++/15815 (Update #pragma interface and #pragma implementation document...
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

20 years agosparc.h (MOVE_RATIO): New definition.
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

20 years agog++spec.c (lang_specific_driver): Remove check for -lm and -lmath when check it see...
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

20 years agobasic-block.h (struct edge_def): Add goto_locus.
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

20 years ago* h8300.md (ldm_h8300s_4): Fix condition for expander.
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

20 years agoGimplify VA_ARG_EXPR into simpler forms.
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

20 years agotree-complex.c (expand_complex_comparison): Use fold_convert instead of convert.
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

20 years agore PR fortran/13249 (Error when using COMMON)
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

20 years agore PR fortran/13372 (ICE in trans-types.c (gfc_typenode_for_spec), see #13201)
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

20 years agore PR rtl-optimization/15521 (sched1 extends life of hard registers on SMALL_REGISTER...
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

20 years agore PR fortran/13201 (PARAMETER variables of nonconstant shape are accepted)
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

20 years agogcc_release (build_sources): Move the libcpp gmo files to the source directory.
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

20 years agore PR ada/6637 (Would be nice to support --enable-shared=gnat)
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

20 years agoMakefile.tpl (touch-stage[+id+]): New.
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

20 years agocrossconfig.m4: Remove signbit, signbitf, signbitl.
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

20 years agofilter.sed: Rename _GLIBCXX_STD to std.
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

20 years agolinker-map.gnu: Use wildcards for __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
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

20 years ago* configure.ac: New --enable-mapped-location sets USE_MAPPED_LOCATION.
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

20 years agore PR libfortran/14897 ('T' edit descriptor output incorrect)
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

20 years agore PR libfortran/15755 (gfortran: backspace call causes bus error)
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

20 years ago* gfortran.fortran-torture/execure/intrinsic_associated.f90
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

20 years agoDaily bump.
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

20 years agoDaily bump.
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

20 years agotoplev.c (floor_log2_wide): Correct casts for 64-bit hosts.
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

20 years agore PR target/15790 ([3.4 only] Alignment error building gcc with i686-coff target)
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

20 years agopool_allocator.h: Convert to a global free-list, as per the original SGI/HP design...
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

20 years agofold-const.c (fold_convert): Treat OFFSET_TYPE like POINTER_TYPE and INTEGER_TYPE.
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

20 years agomodulo-sched.c: Compile only when INSN_SCHEDULING is defined.
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

20 years agocontrib.texi: Add entries for Stefan Olsson and Ola Ronnerup.
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

20 years agotoplev.c (floor_log2_wide): Replace loop with faster bit operations.
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

20 years agors6000.c (print_operand, <case 'z'>): Make sure that we are in INDIRECT mode when...
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

20 years agoaltivec-1.c: XFAIL powerpc-ibm-aix*.
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

20 years agoaltivec-1.C: Correct dg syntax.
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

20 years agoh8300.md (extendqisi2_h8300): Add constraints.
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

20 years agogimple-low.c (struct lower_data): Replace the_return_label and one_return_stmt with...
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

20 years agore PR target/15598 (Gcc 3.4 ICE on valid code)
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

20 years agore PR java/15769 (ICE: infinite recursion through gimplify_expr)
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

20 years agore PR java/15769 (ICE: infinite recursion through gimplify_expr)
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

20 years agore PR rtl-optimization/15717 (Error: can't resolve `L0' {*ABS* section} - `xx' {...
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

20 years agoCorrect indentation of one line.
Richard Kenner [Tue, 8 Jun 2004 12:25:03 +0000 (08:25 -0400)]
Correct indentation of one line.

From-SVN: r82753

20 years agore PR ada/15568 (Shared libgnat fails to link on IRIX 6 with GNU ld)
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

20 years agogimplify.c (copy_if_shared_r): Revert: 2004-05-21 Richard Henderson <rth@redhat.com>
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

20 years agoMAINTAINERS (Write After Approval): Add myself.
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

20 years agoexpmed.c (add_cost, [...]): Make arrays indexed by machine mode.
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

20 years agore PR c++/7841 (gcc accepts illegal member function syntax for template classes)
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

20 years agoDaily bump.
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

20 years agoDaily bump.
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

20 years ago2004-06-07 Dhruv Matani <dhruvbird@gmx.net>
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

20 years agore PR target/15783 (ICE with union assignment in 64-bit mode)
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

20 years agoreal.c (real_copysign): New function to implement libm's copysign.
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

20 years ago* tree.c (iterative_hash_expr): Use real_hash.
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

20 years agoaltivec-1.C: XFAIL powerpc-ibm-aix*.
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

20 years agoada-tree.def (TRANSFORM_EXPR, [...]): Deleted.
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

20 years agore PR c/14765 (ice-on-invalid-code, ICE while compiling ({}) expression)
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

20 years agore PR c++/15815 (Update #pragma interface and #pragma implementation documentation.)
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

20 years agore PR middle-end/15666 ([unit-at-a-time] Gcc abort on valid code)
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

20 years agore PR c/14649 (atan(1.0) should not be a constant expression)
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

20 years agoconfigure.ac: Add x86_64-*-freebsd* support.
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

20 years agogimple-low.c (struct lower_data): Add the_return_label and one_return_stmt.
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

20 years ago* g++.dg/eh/elide1.C: Remove XFAIL.
David Edelsohn [Mon, 7 Jun 2004 17:49:50 +0000 (17:49 +0000)]
* g++.dg/eh/elide1.C: Remove XFAIL.

From-SVN: r82700

20 years agore PR rtl-optimization/15193 (Unary minus using pointer to V4SF vector causes -fforce...
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

20 years agoFix typo
Mark Mitchell [Mon, 7 Jun 2004 16:20:40 +0000 (16:20 +0000)]
Fix typo

From-SVN: r82694