Richard Kenner [Sat, 26 Jun 2004 21:11:23 +0000 (21:11 +0000)]
c-common.c (c_safe_from_p, [...]): Deleted.
2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* c-common.c (c_safe_from_p, c_walk_subtrees): Deleted.
* c-common.def (DECL_STMT): Remove.
* c-common.h (DECL_STMT_DECL): Deleted.
(COMPOUNT_LITERAL_EXPR_DECL): Use DECL_EXPR_DECL.
(c_safe_from_p, c_walk_subtrees): Deleted.
* c-decl.c, c-parse.in, c-pretty-print.c: DECL_STMT now DECL_EXPR.
* c-dump.c (c_dump_tree, case DECL_STMT): Deleted.
* c-gimplify.c (gimplify_decl_stmt): Deleted.
(gimplify_compound_literal_expr): Use DECL_EXPR_DECL
and gimplify_and_add.
(c_gimplify_expr, case DECL_EXPR): New case.
(c_gimplify_expr, case DECL_STMT): Deleted.
* c-lang.c (LANG_HOOKS_SAFE_FROM_P): Likewise.
(LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise.
* expr.c (safe_from_p, case 's'): New case.
* gimplify.c (gimplify_decl_expr): New function.
(gimplify_expr, case DECL_EXPR): New case.
* tree-inline.c (walk_tree): Walk into all fields of a type and
decl only if they are in a DECL_EXPR.
(mark_local_for_remap_r): Minor code cleanup.
* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Add else.
* tree.c (has_cleanups, case DECL_EXPR): New case.
* tree.def (DECL_EXPR): New code.
* tree.h (DECL_EXPR_DECL): New macro.
* objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted.
From-SVN: r83721
Bryce McKinlay [Sat, 26 Jun 2004 20:42:01 +0000 (20:42 +0000)]
re PR java/15734 (internal compiler error: Segmentation fault)
PR java/15734
* expr.c (expand_java_field_op): Ensure that target class for static
field access has been loaded.
From-SVN: r83720
Bryce McKinlay [Sat, 26 Jun 2004 20:40:31 +0000 (20:40 +0000)]
PR java/1207, java/16178
PR java/1207, java/16178
* jcf-parse.c (load_class): Return immediately if passed a type decl
where CLASS_FROM_SOURCE_P is set. Remove FIXME.
* parse.y (do_resolve_class): Remove checks for CLASS_FROM_SOURCE_P
before calling load_class.
(qualify_and_find): Likewise.
(find_in_imports_on_demand): Likewise.
(find_applicable_accessible_methods_list): Likewise.
Co-Authored-By: Ranjit Mathew <rmathew@hotmail.com>
From-SVN: r83719
Andrew Pinski [Sat, 26 Jun 2004 20:40:31 +0000 (20:40 +0000)]
re PR bootstrap/13334 (Bootstrap failure: libiberty/fibheap.c: LONG_MIN undeclared)
2004-06-26 Andrew Pinski <pinskia@physics.uc.edu>
PR 13334
* doc/install.texi: Document non-standard CFLAGS and bootstrap
failures and warnings.
From-SVN: r83718
Matthias Klose [Sat, 26 Jun 2004 20:37:03 +0000 (20:37 +0000)]
libtool-version: Fix typo in revision/age.
2004-06-26 Matthias Klose <doko@debian.org>
* libtool-version: Fix typo in revision/age.
From-SVN: r83717
Zack Weinberg [Sat, 26 Jun 2004 17:39:40 +0000 (17:39 +0000)]
re PR preprocessor/15933 (Caching of include files breaks compilation)
PR 15933
Partially revert patch of 2004-06-05.
* files.c (search_cache): Remove pfile argument. Don't check
for file that would be found by "" or <> search here...
(_cpp_find_file): ...do it here, before calling find_file_in_dir.
Do not apply directory-of-current-file correction to files
found by this check. Rearrange code slightly.
From-SVN: r83714
Tobias Schlüter [Sat, 26 Jun 2004 12:01:43 +0000 (14:01 +0200)]
Andrew Vaught <andyv@firstinter.net>
2004-06-26 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Andrew Vaught <andyv@firstinter.net>
* decl.c (contained_procedure): New function.
(match_end): Verify correctness of END STATEMENT in
all cases.
Also fix two typos in Kenner's ChangeLog
From-SVN: r83710
Bud Davis [Sat, 26 Jun 2004 11:49:06 +0000 (11:49 +0000)]
re PR libfortran/16196 (gfortran fails to create file with OPEN(...,status='REPLACE'))
2004-06-26 Bud Davis <bdavis9659@comcast.net>
PR gfortran/16196
* unix.c(regular_file): create file if it does not exist.
* gfortran.fortran-torture/execute/open_replace.f90: New test case.
From-SVN: r83709
Tobias Schlüter [Sat, 26 Jun 2004 11:48:55 +0000 (13:48 +0200)]
Andrew Vaught <andyv@firstinter.net>
2004-06-25 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Andrew Vaught <andyv@firstinter.net>
PR fortran/15190
* decl.c (gfc_match_type_spec), io.c (match_io), parse.c
(decode_statement): Enforce required space in free-form.
Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
From-SVN: r83708
Jan Hubicka [Sat, 26 Jun 2004 10:23:05 +0000 (12:23 +0200)]
re PR c++/14865 (No instantiation of VTT at -O1)
PR C++/14865
* decl2.c (maybe_emit_vtables): Always import_export_vtable for the
reachability analysis.
From-SVN: r83707
Andrew Haley [Sat, 26 Jun 2004 10:10:25 +0000 (10:10 +0000)]
emit-rtl.c (set_mem_attributes_minus_bitpos): Check TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
2004-06-26 Andrew Haley <aph@redhat.com>
* emit-rtl.c (set_mem_attributes_minus_bitpos): Check
TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
* tree-eh.c (tree_could_trap_p): Check TREE_THIS_NOTRAP.
* tree.h (TREE_THIS_NOTRAP): New.
From-SVN: r83706
Paolo Carlini [Sat, 26 Jun 2004 08:42:38 +0000 (08:42 +0000)]
re PR libstdc++/16210 ([3.4 only] gratuitously omits "long long" I/O)
2004-06-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16210
* acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
availability of strto(u)ll, not used anymore in the iostreams.
* configure: Regenerate.
From-SVN: r83705
Kaz Kojima [Sat, 26 Jun 2004 05:25:38 +0000 (05:25 +0000)]
genattrtab.c (write_test_expr): Put a unsigned cast before the first operand for GEU, GTU, LEU and LTU.
* genattrtab.c (write_test_expr): Put a unsigned cast before
the first operand for GEU, GTU, LEU and LTU.
From-SVN: r83704
Kazu Hirata [Sat, 26 Jun 2004 05:03:55 +0000 (05:03 +0000)]
c-typeck.c, [...]: Fix comment typos.
* c-typeck.c, cfgexpand.c, ddg.c, ddg.h, df.c, fold-const.c,
gcov.c, gimplify.c, modulo-sched.c, passes.c, tree-cfg.c,
tree-mudflap.c, tree-nrv.c, tree-outof-ssa.c, tree-ssa-dom.c,
tree-ssa-dse.c, tree-ssa-operands.c, tree-ssa-pre.c,
tree-tailcall.c: Fix comment typos. Follow spelling
conventions.
From-SVN: r83703
Eric Christopher [Sat, 26 Jun 2004 03:51:29 +0000 (03:51 +0000)]
mips.md: Add back scheduling exclusion info.
2004-06-25 Eric Christopher <echristo@redhat.com>
* config/mips/mips.md: Add back scheduling exclusion info.
From-SVN: r83699
Andreas Tobler [Sat, 26 Jun 2004 03:44:38 +0000 (05:44 +0200)]
2004-06-26 Andreas Tobler <a.tobler@schweiz.ch>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
(init_dpi_conversion_factor): Check for int_dpi < 0 in case gtk-xft-dpi
can not calculate the right value.
(dpi_changed_cb): Likewise. Mark *pspec as unused.
From-SVN: r83698
Roger Sayle [Sat, 26 Jun 2004 01:43:57 +0000 (01:43 +0000)]
ifcvt.c (seq_contains_jump): Delete function.
* ifcvt.c (seq_contains_jump): Delete function.
(end_ifcvt_sequence): Replace call to seq_contains_jump with an
inline test for a jump instruction in the existing "insn" loop.
(block_fallthru): Document function.
From-SVN: r83697
GCC Administrator [Sat, 26 Jun 2004 00:17:34 +0000 (00:17 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83695.2
GCC Administrator [Sat, 26 Jun 2004 00:16:59 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83694.2
Kelley Cook [Fri, 25 Jun 2004 23:06:47 +0000 (23:06 +0000)]
re PR other/15194 (Fastjar configure needlessly fails without long long)
2004-06-25 Kelley Cook <kcook@gcc.gnu.org>
PR other/15194
* configure.ac: Add check for long long.
* jartool.h: Check for long long before using it.
* configure: Regenerate
* config.h.in: Regenerate.
From-SVN: r83690
Philip Blundell [Fri, 25 Jun 2004 21:48:38 +0000 (21:48 +0000)]
re PR tree-optimization/15089 (local register variable with a specified register is bad)
PR wrong-code/15089
* loop.c (scan_loop): Do not move user-specified register
assignments.
From-SVN: r83684
DJ Delorie [Fri, 25 Jun 2004 21:24:21 +0000 (17:24 -0400)]
c-common.h (warn_cast_qual, [...]): Remove explicit declarations.
* c-common.h (warn_cast_qual, warn_missing_format_attribute,
warn_pointer_arith, warn_missing_prototypes, warn_parentheses,
warn_missing_braces, warn_sign_compare, warn_long_long,
warn_redundant_decls, warn_float_equal, warn_char_subscripts,
warn_conversion, warn_format_y2k, warn_format_extra_args,
warn_format_zero_length, warn_format_nonliteral,
warn_format_security, mesg_implicit_function_declaration,
warn_bad_function_cast, warn_traditional,
warn_declaration_after_statement, warn_strict_prototypes,
warn_missing_declarations, warn_nested_externs,
warn_sequence_point, warn_init_self, warn_div_by_zero,
warn_implicit_int, warn_nonnull, warn_old_style_definition,
warn_selector, warn_undeclared_selector, warn_protocol,
warn_abi, warn_invalid_offsetof, warn_ctor_dtor_privacy,
warn_overloaded_virtual, warn_nonvdtor, warn_reorder,
warn_synth, warn_pmf2ptr, warn_ecpp, warn_sign_promo,
warn_old_style_cast, warn_nontemplate_friend,
warn_deprecated): Remove explicit declarations.
* c-common.c: Likewise, remove explicit definitions.
* c-opts.c: Likewise, remove explicit assignments.
* c.opts: Likewise, add implicit declare/define/assign.
From-SVN: r83680
Richard Kenner [Fri, 25 Jun 2004 20:47:45 +0000 (20:47 +0000)]
gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
* gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
(build_addr_expr_with_type): Deleted.
(build_addr_expr): Deleted; callers changed to build_fold_addr_expr.
(gimplify_compound_lval): Make two passes over reference nest.
From-SVN: r83678
Richard Kenner [Fri, 25 Jun 2004 20:33:09 +0000 (20:33 +0000)]
tree-nested.c (build_addr): Merge real/imagpart with handled_component_p.
* tree-nested.c (build_addr): Merge real/imagpart with
handled_component_p.
(convert_nonlocal_reference, convert_local_reference): Process extra
args to COMPONENT_REF and ARRAY_REF.
* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Check for
lower bound and field offset being constant.
From-SVN: r83677
Mark Mitchell [Fri, 25 Jun 2004 19:44:49 +0000 (19:44 +0000)]
cp-mudflap.c (mflang_flush_calls): Fix thinkos resulting from 2004-06-23 change.
* cp-mudflap.c (mflang_flush_calls): Fix thinkos resulting from
2004-06-23 change.
From-SVN: r83675
Mark Mitchell [Fri, 25 Jun 2004 19:17:49 +0000 (19:17 +0000)]
re PR c++/16129 (g++.old-deja/g++.eh/catch[35679]*.C)
PR wrong-code/16129
* alias.c (get_alias_set): Adjust setting of
DECL_POINTER_ALIAS_SET for pointers to aggregates.
From-SVN: r83674
Richard Kenner [Fri, 25 Jun 2004 19:12:02 +0000 (19:12 +0000)]
tree-inline.c (remap_type): Arrange to have just one pointer type for each type, mode, and 'can alias' value.
* tree-inline.c (remap_type): Arrange to have just one pointer type
for each type, mode, and 'can alias' value.
(setup_one_parameter): Remap type when making VAR_DECL for PARM_DECL.
(estimate_num_insns_1): Minor code reformatting.
(inline_forbidden_p_1): Likewise; add; missing return statement.
From-SVN: r83672
Roger Sayle [Fri, 25 Jun 2004 18:40:07 +0000 (18:40 +0000)]
re PR middle-end/15825 (if-cvt optimisation patch noce_try_sign_mask breaks apple-ppc-darwin port)
PR middle-end/15825
* ifcvt.c (unshare_ifcvt_sequence): Rename to end_ifcvt_sequence.
Use get_isns and end_sequence instead of accepting a seq argument.
Scan the instruction sequence for unrecognizable or jump insns.
(noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove,
noce_try_cmove_arith, noce_try_minmax, noce_try_abs,
noce_try_sign_mask): Use end_ifcvt_sequence to factor common code.
* gcc.dg/pr15825-1.c: New test case.
From-SVN: r83671
Jeff Law [Fri, 25 Jun 2004 18:31:56 +0000 (12:31 -0600)]
gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS after gimplifying the innermost component.
* gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS
after gimplifying the innermost component.
In
From-SVN: r83670
Richard Kenner [Fri, 25 Jun 2004 18:30:09 +0000 (18:30 +0000)]
tree-dfa.c (get_virtual_var): Merge real/imaginary parts with handled_component_p handling.
* tree-dfa.c (get_virtual_var): Merge real/imaginary parts with
handled_component_p handling.
* tree-gimple.c (get_base_address): Likewise and fix typo that
caused both recursion and looping.
From-SVN: r83669
Richard Sandiford [Fri, 25 Jun 2004 18:24:51 +0000 (18:24 +0000)]
re PR target/16176 (Miscompilation of unaligned data in MIPS backend (SB1 flavor))
PR target/16176
* config/mips/mips.c (mips_expand_unaligned_load): Use a temporary
register for the destination of the lwl or ldl.
From-SVN: r83668
Richard Kenner [Fri, 25 Jun 2004 18:17:53 +0000 (18:17 +0000)]
tree-cfg.c (verify_expr): Add macro CHECK_OK.
* tree-cfg.c (verify_expr): Add macro CHECK_OK.
Properly test for nest of handled_components in LHS context.
From-SVN: r83666
Benjamin Kosnik [Fri, 25 Jun 2004 17:45:42 +0000 (17:45 +0000)]
re PR libstdc++/16182 (wctype.h not included by c++locale_internal.h)
2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16182
* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
AC_DEFINE_UNQUOTED.
* configure: Regenerate.
From-SVN: r83664
Devang Patel [Fri, 25 Jun 2004 17:36:50 +0000 (10:36 -0700)]
* doc/tree-ssa.texi: Document info about MODIFY_EXPR's type
From-SVN: r83662
Frank Ch. Eigler [Fri, 25 Jun 2004 17:17:51 +0000 (17:17 +0000)]
* quick build fix
2004-06-25 Frank Ch. Eigler <fche@redhat.com>
* ansidecl.h, libiberty.h: New dummy files for building splay-tree.
* config.h.in: Regenerated.
From-SVN: r83661
Paul Brook [Fri, 25 Jun 2004 17:15:46 +0000 (17:15 +0000)]
target-def.h (TARGET_CXX_GUARD_TYPE, [...]): Define.
gcc/
* target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
TARGET_CXX): Define.
(TARGET_INITIALIZER): Use TARGET_CXX.
* target.h (struct gcc_target): Add struct cxx.
* targhooks.h (default_cxx_guard_type): Add prototype.
* targhooks.c (default_cxx_guard_type): New function.
* config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
Define.
(arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
* doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
TARGET_CXX_GUARD_MASK_BIT.
gcc/cp/
* decl2.c (get_guard): Call targetm.cxx.guard_type.
(get_guard_bits, get_guard_cond): Call targetm.cxx.guard_mask_bit.
libstdc++/
* libsupc++/cxxabi.h: Define __ARM_EABI__
(__guard): Use it.
* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
From-SVN: r83660
Arnaud Charlet [Fri, 25 Jun 2004 16:39:33 +0000 (18:39 +0200)]
revert: [multiple changes]
2004-06-25 Pascal Obry <obry@gnat.com>
* makegpr.adb (Build_Library): Remove parameter Lib_Address and
Relocatable from Build_Dynamic_Library call.
* gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
Relocatable are now synonym.
* Makefile.in: Use s-parame-mingw.adb on MingW platform.
* mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
call.
* mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
Lib_Address and Relocatable.
(Default_DLL_Address): Removed.
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
(Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
(Default_DLL_Address): Removed.
* mlib-tgt-mingw.adb: Ditto.
(Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
* s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
the initial thread stack size.
* a-strmap.ads: Move package L to private part as it is not used in
the spec. Found while reading code.
2004-06-25 Olivier Hainque <hainque@act-europe.fr>
* tracebak.c: Introduce support for a GCC infrastructure based
implementation of __gnat_backtrace.
* raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
any more. Use accessors instead. This eases maintenance and relaxes
some alignment constraints.
(_GNAT_Exception structure): Remove the Ada specific fields
(EID_For, Adjust_N_Cleanups_For): New accessors, exported by
a-exexpr.adb.
(is_handled_by, __gnat_eh_personality): Replace component references to
exception structure by use of the new accessors.
* init.c (__gnat_initialize): Adjust comments to match the just
reverted meaning of the -static link-time option.
* adaint.c (convert_addresses): Arrange not to define a stub for
mips-irix any more, as we now want to rely on a real version from a
recent libaddr2line.
* a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
the personality routine can use them and not have to rely on a C
counterpart of the record anymore. This simplifies maintenance and
relaxes the constraint of having Standard'Maximum_Alignment match
BIGGEST_ALIGNMENT.
Update comments, and add a section on the common header alignment issue.
2004-06-25 Geert Bosch <bosch@gnat.com>
* a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
2004-06-25 Robert Dewar <dewar@gnat.com>
* gnat_rm.texi: Fix section on component clauses to indicate that the
restriction on byte boundary placement still applies for bit packed
arrays.
Add comment on stack usage from Initialize_Scalars
* gnat_ugn.texi: Add documentation for -gnatyLnnn
* stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
limiting nesting level.
* usage.adb: Add line for -gnatyLnnn switch
* g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
sem_ch13.adb, exp_aggr.adb: Minor reformatting
* sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
type as well as on the subtype. This corrects a problem in freeze in
setting alignments of atomic types.
* sem_eval.ads: Minor comment typo fixed
* par-util.adb (Push_Scope_Stack): Check for violation of max nesting
level. Minor reformatting.
* fname.adb (Is_Predefined_File_Name): Require a letter after the
minus sign. This means that file names like a--b.adb will not be
considered predefined.
* freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
record Test new flag and give diagnostic for bad component clause.
(Freeze_Entity): Set alignment of array from component alignment in
cases where this is safe to do.
* exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
arrays.
* cstand.adb: (Create_Standard): Set alignment of String to 1
* einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
* exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
code in the common constrained array cases.
* a-storio.adb: Change implementation to avoid possible alignment
problems on machines requiring strict alignment (data should be moved
as type Buffer, not type Elmt).
* checks.adb (Apply_Array_Size_Check): Improve these checks by
killing the overflow checks which we really do not need (64-bits is
enough).
2004-06-25 Vincent Celier <celier@gnat.com>
* makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
(Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
inconditionally for the main project.
(Recursive_Add_Archives.Add_Archive_Path): New procedure
(Link_Executables.Check_Time_Stamps): New procedure
(Link_Executables.Link_Foreign): New procedure
Changes made to reduce nesting level of this package
(Check): New procedure
(Add_Switches): When not in quiet output, check that a switch is not
the concatenation of several valid switches. If it is, issue a warning.
(Build_Global_Archive): If the global archive is rebuilt, linking need
to be done.
(Compile_Sources): Rebuilding a library archive does not imply
rebuilding the global archive.
(Build_Global_Archive): New procedure
(Build_Library): New name for Build_Archive, now only for library
project
(Check_Archive_Builder): New procedure
(Create_Global_Archive_Dependency_File): New procedure
(Gprmake): Call Build_Global_Archive before linking
* makegpr.adb: Use Other_Sources_Present instead of Sources_Present
throughout.
(Scan_Arg): Display the Copyright notice when -v is used
* gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
for gnatls.
* vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
COMPILE.
Add new GNAT LIST qualifier /FILES=
Added qualifier /DIRECTORY= to GNAT METRIC
Added qualifier /FILES= to GNAT METRIC
Added qualifier /FILES to GNAT PRETTY
* switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
to take into account both versions of the switch.
* switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
always be the last switch to the gcc driver. Disable switch storing so
that switches automatically added by the gcc driver are not put in the
ALI file.
* prj.adb (Project_Empty): Take into account changes in components of
Project_Data.
* prj.ads (Languages_Processed): New enumaration value All_Languages.
* prj.ads (Project_Data): Remove component Lib_Elaboration: never
used. Split Boolean component Ada_Sources_Present in two Boolean
components Ada_Sources_Present and Other_Sources_Present.
Minor reformatting
* prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
instead of Sources_Present.
(Set_Ada_Paths.Add.Recursive_Add): Ditto
* prj-nmsc.adb: Minor reformatting
(Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
(Check_Ada_Naming_Scheme_Validity): New name of previous procedure
Check_Ada_Naming_Scheme.
Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
throughout.
* prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
In_Limited.
Make sure that all cycles where there is at least one "limited with"
are detected.
(Parse_Single_Project): New Boolean parameter In_Limited
* prj-proc.adb (Recursive_Check): When Process_Languages is
All_Languages, call first Prj.Nmsc.Ada_Check, then
Prj.Nmsc.Other_Languages_Check.
* prj-proc.adb (Process): Use Ada_Sources_Present or
Other_Sources_Present (instead of Sources_Present) depending on
Process_Languages.
* lang-specs.h: Keep -g and -m switches in the same order, and as the
last switches.
* lib.adb (Switch_Storing_Enabled): New global Boolean flag
(Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
False.
(Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
False.
* lib.ads (Disable_Switch_Storing): New procedure.
* make.adb: Modifications to reduce nesting level of this package.
(Check_Standard_Library): New procedure
(Gnatmake.Check_Mains): New procedure
(Gnatmake.Create_Binder_Mapping_File): New procedure
(Compile_Sources.Compile): Add switch -gnatez as the last option
(Display): Never display -gnatez
* Makefile.generic:
When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
* gnatcmd.adb (Check_Project): New function
(Process_Link): New procedure to reduce nesting depth
(Check_Files): New procedure to reduce the nesting depth.
For GNAT METRIC, include the inherited sources in extending projects.
(GNATCmd): When GNAT LS is invoked with a project file and no files,
add the list of files from the sources of the project file. If this list
is too long, put it in a temp text files and use switch -files=
(Delete_Temp_Config_Files): Delete the temp text file that contains
a list of source for gnatpp or gnatmetric, if one has been created.
(GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
in the project file is too large, create a temporary text file that
list them and pass it to the tool with "-files=<temp text file>".
(GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch
* gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
generated file is in not in Ada.
* gnatls.adb: Remove all parameters And_Save that are no longer used.
(Scan_Ls_Arg): Add processing for -files=
(Usage): Add line for -files=
* g-os_lib.adb (On_Windows): New global constant Boolean flag
(Normalize_Pathname): When on Windows and the path starts with a
directory separator, make sure that the resulting path will start with
a drive letter.
* clean.adb (Clean_Archive): New procedure
(Clean_Project): When there is non-Ada code, delete the global archive,
the archive dependency files, the object files and their dependency
files, if they exist.
(Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
2004-06-25 Thomas Quinot <quinot@act-europe.fr>
* sinfo.ads: Fix typo in comment.
* sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
the TSS for remote access-to-subprogram types, since these TSS are
always present once the type has been analyzed.
(RAS_E_Dereference): Same.
* sem_attr.adb (Analyze_Attribute): When analysis of an attribute
reference raises Bad_Attribute, mark the reference as analyzed so the
node (and any children resulting from rewrites that could have occurred
during the analysis that ultimately failed) is not analyzed again.
* exp_ch7.ads (Find_Final_List): Fix misaligned comment.
* exp_dist.adb: Minor comment fix.
* exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
type is an anonymous access type, no unchecked deallocation of the
allocated object can occur. If the object is controlled, attach it with
a count of 1. This allows attachment to the Global_Final_List, if
no other relevant list is available.
(Get_Allocator_Final_List): For an anonymous access type that is
the type of a discriminant or record component, the corresponding
finalisation list is the one of the scope of the type.
2004-06-25 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb (Replace_Type): When computing the signature of an
inherited subprogram, use the first subtype if the derived type
declaration has no constraint.
* exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
before applying previous optimization. Minor code cleanup.
* exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
placed at the beginning of an unpacked record without explicit
alignment, a slice of it will be aligned and does not need a copy when
used as an actual.
2004-06-25 Ed Schonberg <schonberg@gnat.com>
PR ada/15591
PR ada/15592
* sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
reference is written with expressions mimicking parameters.
2004-06-25 Hristian Kirtchev <kirtchev@gnat.com>
PR ada/15589
* sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
STEP 2a. The constraints of a full type declaration of a derived record
type are checked for conformance with those declared in the
corresponding private extension declaration. The message
"not conformant with previous declaration" is emitted if an error is
detected.
2004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr>
* g-traceb.ads: Document the need for -E binder switch in the spec.
* g-trasym.ads: Document the need for -E binder switch in the spec.
2004-06-25 Jose Ruiz <ruiz@act-europe.fr>
* sem_prag.adb: Add handling of pragma Detect_Blocking.
* snames.h, snames.ads, snames.adb: Add entry for pragma
Detect_Blocking.
* s-rident.ads: Change reference to pragma Detect_Blocking.
* targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
system.ads.
* opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
to indicate whether pragma Detect_Blocking is active.
* par-prag.adb: Add entry for pragma Detect_Blocking.
* rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
of not handling WITH.
Note that this replaces the previous update which was incorrect.
2004-06-25 Javier Miranda <miranda@gnat.com>
* sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
use-clauses to have a clean environment.
* sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
the installation of the use-clauses to stablish a clean environment in
case of compilation of a separate unit; otherwise the call to
use_one_package is protected by the barrier Applicable_Use.
* sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
the installation of the use-clauses to stablish a clean environment in
case of compilation of a separate unit.
(End_Use_Clauses): Minor comment cleanup.
2004-06-25 Sergey Rybin <rybin@act-europe.fr>
* gnat_ugn.texi: Add description of the gnatpp 'files' switch
From-SVN: r83658
Paul Brook [Fri, 25 Jun 2004 16:36:13 +0000 (16:36 +0000)]
concurrence.h: Still create mutex object when single-threaded.
* include/bits/concurrence.h: Still create mutex object when
single-threaded.
From-SVN: r83657
Devang Patel [Fri, 25 Jun 2004 15:41:38 +0000 (08:41 -0700)]
darwin.h (CC1_SPEC): Handle -gused and -gfull.
* config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
* config/i386/darwin.h (CC1_SPEC): Same.
From-SVN: r83655
Tobias Schlüter [Fri, 25 Jun 2004 15:30:57 +0000 (17:30 +0200)]
* gfortran.fortran-torture/execute/der_init_3.f90: Fix syntax error.
From-SVN: r83654
Mark G. Adams [Fri, 25 Jun 2004 15:01:35 +0000 (15:01 +0000)]
* dbxout.h: Add include guards
From-SVN: r83653
Paolo Carlini [Fri, 25 Jun 2004 14:17:58 +0000 (14:17 +0000)]
stl_algobase.h (fill, fill_n): Revert last change...
2004-06-25 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (fill, fill_n): Revert last
change: actually we need to copy construct an object of type
_Tp, not of type iterator_traits<>::value_type, therefore the
code is ok.
From-SVN: r83652
Paul Brook [Fri, 25 Jun 2004 13:48:51 +0000 (13:48 +0000)]
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
From-SVN: r83651
Paolo Carlini [Fri, 25 Jun 2004 10:51:45 +0000 (10:51 +0000)]
stl_algobase.h (fill, fill_n): Tighten the dispatch: use iterator_traits<>::value_type, not _Tp.
2004-06-25 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (fill, fill_n): Tighten the
dispatch: use iterator_traits<>::value_type, not _Tp.
From-SVN: r83648
Richard Earnshaw [Fri, 25 Jun 2004 10:42:21 +0000 (10:42 +0000)]
arm.c (arm_arch4t): New variable.
* arm.c (arm_arch4t): New variable.
(arm_override_options): Initialize it. If compiling for armv5 or
higher clear TARGET_INTERWORK.
(output_call): Abort if called for armv5. Use BX if it's available.
(output_call_mem): Use BLX if available and ensure that all armv5
code is interworking safe.
(output_return_instruction): Always use BX in preference to MOV if
it's available.
(arm_output_epilogue): Likewise.
(arm_final_prescan_insn): Never conditionally call a subroutine
on armv5.
* arm.h (arm_arch4t): Declare.
* arm.md (call_reg_armv5, call_value_reg_armv5): New.
(call_reg_arm, call_value_reg_arm): Renamed from call_reg and
call_value_reg respectively.
(call_reg_thumb_v5, call_value_reg_thumb_v5): New.
(call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect
and call_value_indirect respectively.
From-SVN: r83647
Paolo Carlini [Fri, 25 Jun 2004 09:37:21 +0000 (09:37 +0000)]
1.cc: Tweak instantiations.
2004-06-25 Paolo Carlini <pcarlini@suse.de>
* testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
* testsuite/25_algorithms/fill/2.cc: Likewise.
From-SVN: r83646
Paolo Carlini [Fri, 25 Jun 2004 09:25:57 +0000 (09:25 +0000)]
[multiple changes]
2004-06-25 Dan Nicolaescu <dann@ics.uci.edu>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (__fill, __fill_n): New helpers
for fill and fill_n, respectively: when copying is cheap, use a
temporary to avoid a memory read in each iteration.
2004-06-25 Paolo Carlini <pcarlini@suse.de>
* testsuite/25_algorithms/fill/1.cc: New.
* testsuite/25_algorithms/fill/2.cc: Likewise.
From-SVN: r83645
Benjamin Kosnik [Fri, 25 Jun 2004 07:01:42 +0000 (07:01 +0000)]
formatter.h (__gnu_debug::_Error_formatter): Remove copy constructor and assignment operator.
2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
* include/debug/formatter.h (__gnu_debug::_Error_formatter):
Remove copy constructor and assignment operator.
From-SVN: r83641
Richard Sandiford [Fri, 25 Jun 2004 06:59:03 +0000 (06:59 +0000)]
mips.c (reg_or_const_float_1_operand): Reimplement in terms of const_float_1_operand.
* config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
in terms of const_float_1_operand.
From-SVN: r83640
Richard Sandiford [Fri, 25 Jun 2004 06:57:14 +0000 (06:57 +0000)]
re PR target/16144 (Bogus reference to __divdf3 when -O1)
PR target/16144
* config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
is 1.0; force it into a register instead.
From-SVN: r83639
Benjamin Kosnik [Fri, 25 Jun 2004 06:10:44 +0000 (06:10 +0000)]
concurrence.h (__gnu_cxx::lock): New.
2004-06-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/concurrence.h (__gnu_cxx::lock): New.
* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
(__pool_base::_M_get_mutex): New.
* include/bits/allocator.h: Tweak.
* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
* include/bits/stl_threads.h: Remove.
* include/Makefile.am: Also here.
* include/Makefile.in: Regenerate.
* src/locale_init.cc: Use __gnu_cxx::lock.
* src/allocator.cc: Move all instantiations...
* src/allocator-inst.cc: ...here.
From-SVN: r83638
Bernardo Innocenti [Fri, 25 Jun 2004 05:05:16 +0000 (07:05 +0200)]
m68k.h: Restore valid comment removed by mistake with the recent m68k comments cleanup.
* config/m68k/m68k.h: Restore valid comment removed by mistake with
the recent m68k comments cleanup.
From-SVN: r83637
Mark Mitchell [Fri, 25 Jun 2004 04:48:53 +0000 (04:48 +0000)]
decl.c (grokdeclarator): Restore error messages about __thread.
* decl.c (grokdeclarator): Restore error messages about __thread.
* parser.c (cp_parser_decl_specifier_seq): Likewise.
From-SVN: r83636
Andrew Pinski [Fri, 25 Jun 2004 04:31:51 +0000 (04:31 +0000)]
encoding.h: Wrap the functions with extern "C" for C++ mode.
2004-06-24 Andrew Pinski <apinski@apple.com>
* objc/encoding.h: Wrap the functions with extern "C" for C++
mode.
* objc/hash.h: Likewise.
* objc/objc-api.h: Likewise.
* objc/objc-list.h: Likewise.
* objc/runtime.h: Likewise.
* objc/sarray.h: Likewise.
* objc/thr.h: Likewise.
* objc/typedstream.h: Likewise.
From-SVN: r83635
Richard Kenner [Fri, 25 Jun 2004 03:46:30 +0000 (03:46 +0000)]
c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
* c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
* gimplify.c (internal_get_tmp_var, gimplify_return_expr): Likewise.
(gimplify_loop_expr, gimplify_init_constructor): Likewise.
(gimplify_self_mod_expr, gimplify_cond_expr): Likewise.
From-SVN: r83634
Richard Kenner [Fri, 25 Jun 2004 03:41:41 +0000 (03:41 +0000)]
gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
PR/16131
* gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
From-SVN: r83633
Richard Kenner [Fri, 25 Jun 2004 02:00:16 +0000 (22:00 -0400)]
Update whitespace and comments
From-SVN: r83632
Richard Kenner [Fri, 25 Jun 2004 01:37:56 +0000 (01:37 +0000)]
* gimplify.c: Remove unneeded forward declarations.
From-SVN: r83630
Richard Kenner [Fri, 25 Jun 2004 01:33:42 +0000 (01:33 +0000)]
gimplify.c (append_to_compound_expr): Deleted.
* gimplify.c (append_to_compound_expr): Deleted.
* tree-gimple.h (append_to_compound_expr): Deleted.
From-SVN: r83629
Richard Kenner [Fri, 25 Jun 2004 01:28:34 +0000 (01:28 +0000)]
fold-const.c (fold_addr_expr_with_type): Look through all valid LHS modifiers to find a base to mark addressable.
* fold-const.c (fold_addr_expr_with_type): Look through all
valid LHS modifiers to find a base to mark addressable.
From-SVN: r83628
Richard Kenner [Fri, 25 Jun 2004 01:22:04 +0000 (01:22 +0000)]
tree.h (debug_find_tree): Add declaration.
* tree.h (debug_find_tree): Add declaration.
* tree-inline.c (debug_find_tree): Remove extern declaration.
From-SVN: r83627
Eric Christopher [Fri, 25 Jun 2004 00:59:35 +0000 (00:59 +0000)]
rs6000.md: Apply change mistakenly deleted with 2004-06-22 patch.
2004-06-24 Eric Christopher <echristo@redhat.com>
* config/rs6000/rs6000.md: Apply change mistakenly
deleted with 2004-06-22 patch.
From-SVN: r83625
GCC Administrator [Fri, 25 Jun 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83623.2
GCC Administrator [Fri, 25 Jun 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83622.2
Richard Henderson [Thu, 24 Jun 2004 23:12:30 +0000 (16:12 -0700)]
c-decl.c (c_in_iteration_stmt, [...]): Remove.
* c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove.
(c_break_label, c_cont_label): New.
(start_function): Update initializations.
(c_push_function_context): Update saves.
(c_pop_function_context): Update restores.
* c-parse.in: Update expected conflicts.
(stmt_count, compstmt_count): Remove. Remove all updates.
(if_prefix, simple_if, do_stmt_start): Remove.
(lineno_labeled_stmt): Remove.
(lineno_labels): New.
(c99_block_lineno_labeled_stmt): Use it.
(lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling
annotate_with_locus.
(select_or_iter_stmt): Replace by ...
(condition, if_statement_1, if_statement_2, if_statement,
start_break, start_continue, while_statement, do_statement,
for_cond_expr, for_incr_expr, for_statement, switch_statement): New.
(stmt): Split out ...
(stmt_nocomp): ... this. Use c_finish_bc_stmt, c_finish_goto_label,
c_finish_goto_ptr.
* c-semantics.c (add_stmt): Don't add line numbers to labels.
* c-tree.h: Update prototypes.
(struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt;
add x_break_label, x_cont_label, x_switch_stack.
(c_switch_stack): Declare.
* c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New.
(c_finish_return): Return the statement.
(c_switch_stack): Rename from switch_stack; export.
(if_elt, if_stack, if_stack_space, if_stack_pointer): Remove.
(c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else,
c_finish_else): Remove.
(c_finish_if_stmt): Rewrite to perform the entire operation.
(c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt,
c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
c_finish_for_stmt_incr, c_finish_for_stmt): Remove.
(c_finish_loop): New.
(c_finish_bc_stmt): New.
(c_finish_expr_stmt): Return the statement. Split out...
(c_process_expr_stmt): ... this. Don't add locus to error marks.
* gimplify.c (gimplify_cond_expr): Accept NULL type statements.
* tree-gimple.c (is_gimple_stmt): Likewise.
* tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise.
(print_struct_decl): Delete empty compound statement.
* objc/objc-act.c (objc_build_throw_stmt): Return the statement.
* objc/objc-act.h: Update decl.
From-SVN: r83620
Richard Kenner [Thu, 24 Jun 2004 22:54:21 +0000 (22:54 +0000)]
tree-pretty-print.c (dump_generic_node, [...]): Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
* tree-pretty-print.c (dump_generic_node, case TYPE_DECL):
Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
From-SVN: r83619
Andrew Pinski [Thu, 24 Jun 2004 22:52:42 +0000 (22:52 +0000)]
objc-act.c (build_objc_method_call): Save the lookup_object so we do not call it twice.
2004-06-24 Andrew Pinski <apinski@apple.com>
* objc-act.c (build_objc_method_call): Save the lookup_object
so we do not call it twice.
From-SVN: r83618
Richard Kenner [Thu, 24 Jun 2004 22:47:42 +0000 (18:47 -0400)]
Minor comment and whitespace changes
From-SVN: r83617
Richard Henderson [Thu, 24 Jun 2004 22:46:56 +0000 (15:46 -0700)]
tree-ssa-dom.c (real_avail_expr_hash): New.
* tree-ssa-dom.c (real_avail_expr_hash): New.
(tree_ssa_dominator_optimize): Use it in the htab.
From-SVN: r83616
Richard Kenner [Thu, 24 Jun 2004 22:45:57 +0000 (18:45 -0400)]
Minor updating of comments.
From-SVN: r83615
Richard Kenner [Thu, 24 Jun 2004 22:42:26 +0000 (18:42 -0400)]
Minor whitespace changes
From-SVN: r83613
Frank Ch. Eigler [Thu, 24 Jun 2004 21:12:49 +0000 (21:12 +0000)]
tree-mudflap.c (mx_register_decls): Add third (type) argument to synthesized __mf_unregister call.
2004-06-24 Frank Ch. Eigler <fche@redhat.com>
* tree-mudflap.c (mx_register_decls): Add third (type) argument
to synthesized __mf_unregister call.
From-SVN: r83612
Frank Ch. Eigler [Thu, 24 Jun 2004 21:12:18 +0000 (21:12 +0000)]
Adopt splay trees for object database.
2004-06-24 Frank Ch. Eigler <fche@redhat.com>
Adopt splay trees for object database.
* Makefile.am: Copy splay-tree.* from libiberty.
* Makefile.in, testsuite/Makefile.in: Regenerated.
* mf-runtime.h.in (__mf_unregister): Add third parameter (type).
* mf-hooks[123].c (*): Add new third parameter to mf_unregister.
* mf-impl.h (BEGIN_PROTECT): Remove some trace text.
* mf-runtime.c: Rewrite code dealing with object database to use
libiberty splay trees. Remove tree liveness aging option.
* testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.
From-SVN: r83611
Roger Sayle [Thu, 24 Jun 2004 20:38:59 +0000 (20:38 +0000)]
re PR middle-end/15239 (suboptimal mult-by-const expansion cost limit)
PR middle-end/15239
* expmed.c (expand_mult): Remove artificial restriction on the
maximum cost of a synthetic multiplication sequence.
From-SVN: r83610
Jason Merrill [Thu, 24 Jun 2004 20:07:23 +0000 (16:07 -0400)]
re PR tree-optimization/16115 (double-destruction problem with argument passing via temporary (breaks auto_ptr))
PR c++/16115
* decl.c (grokparms): Give the PARM_DECL reference type if the
parameter is passed by invisible reference.
From-SVN: r83609
Eric Christopher [Thu, 24 Jun 2004 19:15:43 +0000 (19:15 +0000)]
combine.c (distribute_notes): Don't delete sets to global register variables.
2004-06-24 Eric Christopher <echristo@redhat.com>
* combine.c (distribute_notes): Don't delete sets to
global register variables.
From-SVN: r83606
Jakub Jelinek [Thu, 24 Jun 2004 17:54:13 +0000 (19:54 +0200)]
i386.md (ffsdi2, clzdi2): New expanders.
* config/i386/i386.md (ffsdi2, clzdi2): New expanders.
(ffs_rex64): New splitter.
(ffsdi_1, ctzdi2, bsr_rex64): New instructions.
From-SVN: r83604
Andrew Pinski [Thu, 24 Jun 2004 17:53:07 +0000 (17:53 +0000)]
darwin7.h (MATH_LIBRARY): Remove.
gcc/ChangeLog:
* config/darwin7.h (MATH_LIBRARY): Remove.
(LIB_SPEC): Define.
* config/darwin.h (MATH_LIBRARY): Define always to empty.
(LIB_SPEC): Only define if not already defined.
libstdc++/ChangeLog:
* linkage.m4: Remove check for libmx.
* configure: Regenerate.
libgfortran/ChangeLog:
* configure.ac: Remove check for libmx.
* configure: Regenerate.
From-SVN: r83603
Bryce McKinlay [Thu, 24 Jun 2004 17:41:18 +0000 (17:41 +0000)]
jacks.xfail: Remove 15.9.1-qualified-concrete-20.
* testsuite/libjava.jacks/jacks.xfail: Remove
15.9.1-qualified-concrete-20.
From-SVN: r83602
Revital Eres [Thu, 24 Jun 2004 16:50:35 +0000 (16:50 +0000)]
loop-iv.c (iv_analyze, [...]): Support for identifying shifts of induction variable.
2004-06-24 Revital Eres <eres@il.ibm.com>
* loop-iv.c (iv_analyze, simple_set_p): Support for identifying
shifts of induction variable.
(iv_shift): New function.
From-SVN: r83599
Richard Henderson [Thu, 24 Jun 2004 16:25:17 +0000 (09:25 -0700)]
* gimplify.c (gimplify_body): Watch for body vanishing.
From-SVN: r83598
Jeff Law [Thu, 24 Jun 2004 15:59:52 +0000 (09:59 -0600)]
tree-ssa-dom.c (record_dominating_conditions): New function.
* tree-ssa-dom.c (record_dominating_conditions): New function.
(dom_opt_finalize_block, get_eq_expr_value): Use it.
* gcc.dg/tree-ssa/
20040624-1.c: New test.
From-SVN: r83597
Bryce McKinlay [Thu, 24 Jun 2004 15:56:54 +0000 (15:56 +0000)]
parse.y (set_nested_class_simple_name_value): Removed.
* parse.y (set_nested_class_simple_name_value): Removed.
(java_complete_expand_class): Remove calls to
set_nested_class_simple_name_value.
From-SVN: r83596
Richard Sandiford [Thu, 24 Jun 2004 15:30:07 +0000 (15:30 +0000)]
calls.c (shift_returned_value): Fix handling of non-integer TYPE_MODEs.
* calls.c (shift_returned_value): Fix handling of non-integer
TYPE_MODEs.
From-SVN: r83595
Nathan Sidwell [Thu, 24 Jun 2004 15:05:35 +0000 (15:05 +0000)]
reformat, remove '^M's
From-SVN: r83594
Richard Kenner [Thu, 24 Jun 2004 13:47:49 +0000 (09:47 -0400)]
Add a blank.
From-SVN: r83593
Ulrich Weigand [Thu, 24 Jun 2004 12:09:44 +0000 (12:09 +0000)]
c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
* c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
* system.h (DEFAULT_MAIN_RETURN): Poison.
* doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.
From-SVN: r83592
Ben Elliston [Thu, 24 Jun 2004 11:43:34 +0000 (21:43 +1000)]
* doc/cfg.texi (Edges): Fix typo.
From-SVN: r83591
Paul Brook [Thu, 24 Jun 2004 11:01:56 +0000 (11:01 +0000)]
* config/arm/arm.c (arm_output_epilogue): Remove excess checks.
From-SVN: r83589
Giovanni Bajo [Thu, 24 Jun 2004 09:47:31 +0000 (09:47 +0000)]
tree-ssa.exp: Remove.
* g++.dg/tree-ssa/tree-ssa.exp: Remove. dg.exp already handles
this directory.
From-SVN: r83588
Andreas Schwab [Thu, 24 Jun 2004 09:34:23 +0000 (09:34 +0000)]
* cp-tree.h (enum cp_storage_class): Remove trailing comma.
From-SVN: r83587
Andrew Pinski [Thu, 24 Jun 2004 06:51:56 +0000 (06:51 +0000)]
re PR middle-end/15988 (ICE in fold_convert with pointer-to-member-function)
2004-06-23 Andrew Pinski <apinski@apple.com>
PR middle-end/15988
* fold-const.c (fold_convert): Types which are compatible
can be converted with only a NOP_EXPR.
2004-06-23 Andrew Pinski <apinski@apple.com>
PR middle-end/15988
* g++.dg/opt/ptrmem4.C: New test.
From-SVN: r83585
Mark Mitchell [Thu, 24 Jun 2004 06:48:44 +0000 (06:48 +0000)]
Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
* Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
(cp/decl.o): Likewise.
(cp/decl2.o): Likewise.
(cp/pt.o): Likewise.
(cp/semantics.o): Likewise.
* config-lang.in (gtfiles): Do not reference cp/lex.h.
* class.c: Do not include lex.h.
(add_implicitly_declared_members): Do not use
adding_implicit_members.
(check_bases_and_members): Do not talk about grok_x_components.
* cp/cp-tree.h (adding_implicit_members): Remove.
(cp_storage_class): New type.
(cp_decl_spec): Likewise.
(cp_decl_specifier_seq): Likewise.
(cp_parameter_declarator): Use it for the decl_specifiers field.
(check_tag_decl): Adjust prototype.
(shadow_tag): Likewise.
(groktypename): Likewise.
(start_decl): Likewise.
(start_function): Likewise.
(start_method): Likewise.
(grok_x_components): Remove.
(grokfield): Adjust prototype.
(grokbitfield): Likewise.
(finish_member_class_template): Remove.
* decl.c: Do not include lex.h.
(adding_implicit_members): Do not define.
(check_tag_decl): Do not use trees to represent decl-specifiers.
(shadow_tag): Likewise.
(groktypename): Likewise.
(start_decl): Likewise.
(grokvardecl): Likewise.
(grokdeclarator): Likewise.
(grokparms): Likewise.
(start_function): Likewise.
(start_method): Likewise.
* decl.h (grokdeclarator): Adjust prototype.
* decl2.c: Do not include lex.h.
(grok_x_components): Remove.
(grokfield): Do not use trees to represent decl-specifiers.
(grokbitfield): Likewise.
* lex.c: Do not include lex.h.
* lex.h: Remove.
* parser.c: Include target.h.
(clear_decl_specs): New function.
(cp_parser_translation_unit): Do not use trees to represent
decl-specifiers.
(cp_parser_postfix_expression): Likewise.
(cp_parser_new_type_id): Likewise.
(cp_parser_condition): Likewise.
(cp_parser_simple_declaration): Likewise.
(cp_parser_decl_specifier_seq): Likewise.
(cp_parser_function_specifier_opt): Likewise.
(cp_parser_conversion_type_id): Likewise.
(cp_parser_template_parameter): Likewise.
(cp_parser_explicit_instantiation): Likewise.
(cp_parser_type_specifier): Likewise.
(cp_parser_simple_type_specifier): Likewise.
(cp_parser_init_declarator): Likewise.
(cp_parser_type_id): Likewise.
(cp_parser_type_specifier_seq): Likewise.
(cp_parser_parameter_declaration): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_parser_exception_declaration): Likewise.
(cp_parser_function_definition_from_specifiers_and_declarator):
Likewise.
(cp_parser_single_declaration): Likewise.
(cp_parser_save_member_function_body): Likewise.
(cp_parser_friend_p): Likewise.
(cp_parser_set_storage_class): New function.
(cp_parser_set_decl_spec_type): Likewise.
* pt.c: Do not include lex.h.
* semantics.c: Likewise.
(finish_member_class_template): Remove.
From-SVN: r83584
Alan Modra [Thu, 24 Jun 2004 06:10:35 +0000 (06:10 +0000)]
calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and pass raw n_named_args to it.
* calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
pass raw n_named_args to it.
* targhooks.c: Formatting.
(hook_bool_CUMULATIVE_ARGS_false): Correct comment.
From-SVN: r83583
Richard Henderson [Thu, 24 Jun 2004 05:35:16 +0000 (22:35 -0700)]
c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside non-constant size check.
* c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside
non-constant size check. Gimplify the type too. Tidy building
BUILT_IN_STACK_ALLOC call
From-SVN: r83582
Roger Sayle [Thu, 24 Jun 2004 05:26:07 +0000 (05:26 +0000)]
c-common.c (expand_unordered_cmp): Delete.
* c-common.c (expand_unordered_cmp): Delete.
(expand_tree_builtin): Delete.
* c-common.h (expand_tree_builtin): Delete function prototype.
* c-typeck.c (build_function_call): Don't call expand_tree_builtin.
* call.c (build_cxx_call): Don't call expand_tree_builtin. No
longer take both "args" and "convert_args" as arguments.
(build_op_delete_call): Update call to build_cxx_call.
(build_over_call): Likewise, update call to build_cxx_call.
* cp-tree.h (build_cxx_call): Update funtion prototype.
* typeck.c (build_function_call): Don't call expand_tree_builtin.
* rtti.c (throw_bad_cast): Update call to build_cxx_call.
(throw_bad_typeid): Likewise.
(build_dynamic_cast_1): Likewise.
From-SVN: r83579
Richard Henderson [Thu, 24 Jun 2004 05:21:27 +0000 (22:21 -0700)]
gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or COMPONENT_REF variable fields unless they're non-constant.
* gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or
COMPONENT_REF variable fields unless they're non-constant.
From-SVN: r83578
Robert Millan [Thu, 24 Jun 2004 02:56:23 +0000 (02:56 +0000)]
Patch from Robert Millan.
* config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu.
* config/i386/linux.h: Allow overriding of LINK_EMULATION,
DYNAMIC_LINKER and register names in sc_ structure.
* config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h.
* config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu.
* config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu.
* config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu.
* config/kfreebsdgnu.h: Remove.
* config/t-kfreebsd-gnu: Likewise.
* config/i386/kfreebsdgnu.h: Likewise.
From-SVN: r83577
Eric Christopher [Thu, 24 Jun 2004 02:00:25 +0000 (02:00 +0000)]
fold-const.c (make_range): Cleanup type checking through function.
2004-06-23 Eric Christopher <echristo@redhat.com>
* fold-const.c (make_range): Cleanup type checking through function.
Remove orig_type. Replace with checks to exp_type and arg0_type.
Clarify comment when converting from unsigned to signed.
From-SVN: r83576
Eric Christopher [Thu, 24 Jun 2004 01:51:30 +0000 (01:51 +0000)]
mips.c (mips_use_dfa_pipeline_interface): Add R3000.
2004-06-23 Eric Christopher <echristo@redhat.com>
* config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000.
* config/mips/mips.md: Remove R3000 scheduling description.
* config/mips/3000.md: New file.
From-SVN: r83575