Ed Schonberg [Mon, 4 Oct 2004 14:57:56 +0000 (16:57 +0200)]
sem_ch6.adb (Analyze_Subprogram_Body): Do not treat Inline as Inline_Always when in Configurable_Run_Time mode.
2004-10-04 Ed Schonberg <schonberg@gnat.com>
* sem_ch6.adb (Analyze_Subprogram_Body): Do not treat Inline as
Inline_Always when in Configurable_Run_Time mode.
* sem_prag.adb (Process_Convention): If entity is an inherited
subprogram, apply convention to parent subprogram if in same scope.
(Analyze_Pragma, case Inline): Do not treat Inline as Inline_Always
when in Configurable_Run_Time mode.
From-SVN: r88498
Ed Schonberg [Mon, 4 Oct 2004 14:57:31 +0000 (16:57 +0200)]
sem_ch3.adb (Build_Derived_Record_Type): Set First/Last entity of class_wide type after component list has been inherited.
2004-10-04 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb (Build_Derived_Record_Type): Set First/Last entity of
class_wide type after component list has been inherited.
From-SVN: r88497
Ed Schonberg [Mon, 4 Oct 2004 14:57:11 +0000 (16:57 +0200)]
sem_ch12.adb (Check_Generic_Actuals): New predicate Denotes_Previous_Actual...
2004-10-04 Ed Schonberg <schonberg@gnat.com>
* sem_ch12.adb (Check_Generic_Actuals): New predicate
Denotes_Previous_Actual, to handle properly the case of a private
actual that is also the component type of a subsequent array actual.
The visibility status of the first actual is not affected when the
second is installed.
(Process_Nested_Formal): Subsidiary of Instantiate_Formal_Package, to
make fully recursive the treatment of formals of packages declared
with a box.
(Restore_Nested_Formal): Subsidiary of Restore_Private_Views, to undo
the above on exit from an instantiation.
(Denotes_Formal_Package): When called from Restore_Private_Views, ignore
current instantiation which is now complete.
(Analyze_Package_Instantiation): No instantiated body is needed if the
main unit is generic. Efficient, and avoid anomalies when a instance
appears in a package accessed through rtsfind.
From-SVN: r88496
Ed Schonberg [Mon, 4 Oct 2004 14:56:49 +0000 (16:56 +0200)]
exp_ch6.adb (Expand_N_Function_Call): If stack checking is enabled...
2004-10-04 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_N_Function_Call): If stack checking is enabled,
do not generate a declaration for a temporary if the call is part of a
library-level instantiation.
From-SVN: r88495
Ed Schonberg [Mon, 4 Oct 2004 14:56:27 +0000 (16:56 +0200)]
sem_util.adb (Explain_Limited_Type): Ignore internal components when searching for a limited component to flag.
2004-10-04 Ed Schonberg <schonberg@gnat.com>
* sem_util.adb (Explain_Limited_Type): Ignore internal components when
searching for a limited component to flag.
* exp_attr.adb (Freeze_Stream_Subprogram): Subsidiary procedure to
expansion of Input, to account for the fact that the implicit call
generated by the attribute reference must freeze the user-defined
stream subprogram. This is only relevant to 'Input, because it can
appear in an object declaration, prior to the body of the subprogram.
* sem_ch13.adb (Rep_Item_Too_Late): Make the error non-serious, so that
expansion can proceed and further errors uncovered.
(Minor clean up): Fix cases of using | instead of \ for continuation
messages.
From-SVN: r88494
Richard Kenner [Mon, 4 Oct 2004 14:56:04 +0000 (14:56 +0000)]
cuintp.c, [...]: Use gcc_assert and gcc_unreachable.
2004-10-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* cuintp.c, decl.c, utils2.c: Use gcc_assert and gcc_unreachable.
* trans.c (assoc_to_constructor): Fix unused var warning if no checking.
(gnat_gimplify_expr, case ADDR_EXPR): Fix error in last change.
Use gcc_assert and gcc_unreachable.
* decl.c (gnat_to_gnu_entity, case object): Check and process a
specified alignment before validating size.
(gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Create a
stripped-down declaration for the type of the inner field when making
a JM type.
* utils.c (finish_record_type): Do not compute the size in units
incrementally. Instead compute it once for the rep clause case.
Use gcc_assert and gcc_unreachable.
From-SVN: r88493
Vincent Celier [Mon, 4 Oct 2004 14:55:32 +0000 (14:55 +0000)]
a-dirval-mingw.adb (Invalid_Character): Add '\' as invalid character in file name.
2004-10-04 Vincent Celier <celier@gnat.com>
* a-dirval-mingw.adb (Invalid_Character): Add '\' as invalid character
in file name.
(Is_Valid_Path_Name): Take '/' as a directory separator.
From-SVN: r88492
Vincent Celier [Mon, 4 Oct 2004 14:55:06 +0000 (14:55 +0000)]
prj-part.adb (Parse_Single_Project): Call Is_Extending_All (Extended_Project) only if Extended_Project is defined...
2004-10-04 Vincent Celier <celier@gnat.com>
* prj-part.adb (Parse_Single_Project): Call Is_Extending_All
(Extended_Project) only if Extended_Project is defined, to avoid
assertion error.
(Post_Parse_Context_Clause): Always call Set_Path_Name_Of with a
resolved path.
(Parse_Single_Project): Ditto.
* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not call
Add_To_Project_Path for virtual projects.
From-SVN: r88491
Vincent Celier [Mon, 4 Oct 2004 14:53:52 +0000 (14:53 +0000)]
mlib-tgt-tru64.adb, [...] (Build_Dynamic_Library): New parameter Options_2.
2004-10-04 Vincent Celier <celier@gnat.com>
* 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-mingw.adb,
mlib-tgt-vxworks.adb, mlib-tgt.adb (Build_Dynamic_Library): New
parameter Options_2.
* mlib-prj.ads, mlib-prj.adb (Build_Library): Call
Build_Dynamic_Library with an empty Options_2.
* mlib-utl.ads, mlib-utl.adb (Gcc): Parameter Options_2 has no
default anymore.
* makegpr.adb (Get_Imported_Directories.add): Remove trailing
directory separator, if any.
(Gprmake): Do not allow mains on the command line for library projects.
Do not attempt to link when the project is a library project.
(Library_Opts): New table to store Library_Options.
(Build_Library): If Library_Options is specified, pass these options
when building a shared library.
From-SVN: r88490
Jose Ruiz [Mon, 4 Oct 2004 14:51:59 +0000 (16:51 +0200)]
s-tposen.adb (Service_Entry): The object must be always unlocked at the end of this procedure now that the...
2004-10-04 Jose Ruiz <ruiz@act-europe.fr>
* s-tposen.adb (Service_Entry): The object must be always unlocked at
the end of this procedure now that the unlock operation was inserted
by the expander.
From-SVN: r88489
Jose Ruiz [Mon, 4 Oct 2004 14:51:17 +0000 (16:51 +0200)]
targparm.ads, [...] (Targparm_Tags): Add PAS value corresponding to the Preallocated_Stacks flags in System.
2004-10-04 Jose Ruiz <ruiz@act-europe.fr>
* targparm.ads, targparm.adb (Targparm_Tags): Add PAS value
corresponding to the Preallocated_Stacks flags in System.
(Get_Target_Parameters): Including the processing for
Preallocated_Stacks.
* system.ads, system-vxworks-x86.ads, system-darwin-ppc.ads,
system-vms_64.ads, system-unixware.ads, system-linux-ia64.ads,
system-freebsd-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
system-linux-x86_64.ads, system-tru64.ads, system-aix.ads,
system-vxworks-sparcv9.ads, system-vxworks-xscale.ads,
system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads,
system-hpux.ads, system-vxworks-m68k.ads, system-linux-x86.ads,
system-vxworks-mips.ads, system-os2.ads, system-interix.ads,
system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads,
system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads,
system-vxworks-alpha.ads: Add the flag Preallocated_Stacks, that is
used to signal whether the compiler creates the required stacks and
descriptors for the different tasks (when True) or it is done by the
underlying operating system at run time (when False).
It is initially set to False in all targets.
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Create the task stack
if it is supported by the target.
(Make_Task_Create_Call): Pass the stack address if it has been
previously created. Otherwise pass a Null_Address.
* snames.adb: Add _stack.
* snames.ads: Add Name_uStack. Required to allow the expander to
statically allocated task stacks.
* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add
Stack_Address argument.
Check that its value is equal to Null_Address because this target does
not support the static stack allocation.
From-SVN: r88488
Thomas Quinot [Mon, 4 Oct 2004 14:50:35 +0000 (16:50 +0200)]
usage.adb: Change "pragma inline" to "pragma Inline" in information and error messages
2004-10-04 Thomas Quinot <quinot@act-europe.fr>
* usage.adb: Change "pragma inline" to "pragma Inline" in information
and error messages
From-SVN: r88487
Thomas Quinot [Mon, 4 Oct 2004 14:50:08 +0000 (16:50 +0200)]
exp_dist.adb: Split declaration of asynchronous flag out of Add_RACW_Read_Attribute.
2004-10-04 Thomas Quinot <quinot@act-europe.fr>
* exp_dist.adb: Split declaration of asynchronous flag out of
Add_RACW_Read_Attribute.
Minor reformatting for better alignment with PolyORB version.
Store the entity for the asynchronous flag of an RACW, rather than the
expression, in the asynchronous flags table. This will allow this flag
to be used in other subprograms beside Add_RACW_Read_Attribute.
From-SVN: r88486
Thomas Quinot [Mon, 4 Oct 2004 14:49:35 +0000 (16:49 +0200)]
g-socket.ads, [...]: Add new sockets constant MSG_NOSIGNAL (Linux-specific).
2004-10-04 Thomas Quinot <quinot@act-europe.fr>
* g-socket.ads, g-socket.adb, g-socthi.adb, socket.c,
g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads,
g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-vms.adb,
g-soccon-mingw.ads, g-soccon-vxworks.ads, g-soccon-freebsd.ads,
g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads: Add new
sockets constant MSG_NOSIGNAL (Linux-specific).
Add new sockets constant MSG_Forced_Flags, list of flags to be set on
all Send operations.
For Linux, set MSG_NOSIGNAL on all send operations to prevent them
from trigerring SIGPIPE.
Rename components to avoid clash with Ada 2005 possible reserved
word 'interface'.
(Check_Selector): When the select system call returns with an error
condition, propagate Socket_Error to the caller.
From-SVN: r88485
Diego Novillo [Mon, 4 Oct 2004 13:19:20 +0000 (13:19 +0000)]
tree-ssa-dom.c (tree_ssa_dominator_optimize): Initialize OPT_STATS to 0.
* tree-ssa-dom.c (tree_ssa_dominator_optimize):
Initialize OPT_STATS to 0.
From-SVN: r88484
Tobias Schlüter [Mon, 4 Oct 2004 13:03:43 +0000 (13:03 +0000)]
trans-array.c (gfc_conv_expr_descriptor): Check for substriungs.
2004-10-04 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Paul Brook <paul@codesourcery.com>
* trans-array.c (gfc_conv_expr_descriptor): Check for substriungs.
Use gfc_get_expr_charlen.
* trans-expr.c (gfc_get_expr_charlen): New function.
* trans.h (gfc_get_expr_charlen): Add prototype.
testsuite/
* gfortran.dg/pr17612.f90: New test.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r88483
Kazu Hirata [Mon, 4 Oct 2004 12:00:04 +0000 (12:00 +0000)]
* trans-intrinsic.c: Fix a comment typo.
From-SVN: r88481
Kazu Hirata [Mon, 4 Oct 2004 11:57:09 +0000 (11:57 +0000)]
* tree-data-ref.c: Fix comment typos.
From-SVN: r88480
Sebastian Pop [Mon, 4 Oct 2004 09:12:43 +0000 (11:12 +0200)]
tree-data-ref.c (array_base_name_differ_p): Fix comments.
* tree-data-ref.c (array_base_name_differ_p): Fix comments. When
the predicate cannot be computed, don't initialize the result to
false.
From-SVN: r88479
Gabriel Dos Reis [Mon, 4 Oct 2004 06:04:43 +0000 (06:04 +0000)]
Convert diagnostics to use quoting flag q 3/n
cp/
Convert diagnostics to use quoting flag q 3/n
* decl.c (pop_label, duplicate_decls,
redeclaration_error_message,
redeclaration_error_message, lookup_label, check_goto,
make_typename_type, make_unbound_class_template,
fixup_anonymous_aggr, check_tag_decl, start_decl,
start_decl_1,
grok_reference_init, layout_var_decl, maybe_commonize_var,
check_for_uninitialized_const_var, reshape_init_array,
reshape_init, check_initializer, cp_finish_decl,
member_function_or_else, bad_specifiers, grokfndecl,
grokvardecl,
check_static_variable_definition, compute_array_index_type,
create_array_type_for_decl,
check_special_function_return_type,
grokdeclarator, check_default_argument, grokparms,
grok_ctor_properties, grok_op_properties,
check_elaborated_type_specifier, xref_tag, finish_enum,
build_enumerator, check_function_type,
start_preparsed_function,
store_parm_decls): Use quoting formats.
* decl2.c (grok_array_decl, delete_sanity,
check_member_template,
check_java_method, check_classfn,
finish_static_data_member_decl,
grokfield, grokbitfield, grok_function_init,
build_anon_union_vars, coerce_new_type, coerce_delete_type,
check_default_args): Likewise.
* parser.c (cp_parser_decl_specifier_seq): Likewise.
testsuite/
* g++.dg/template/local1.C: Adjust quoting marks in
testing for diagnostics.
* g++.dg/tls/diag-2.C: Likewise.
* g++.dg/other/error8.C: Likewise.
From-SVN: r88478
Eric Christopher [Mon, 4 Oct 2004 05:29:27 +0000 (05:29 +0000)]
dwarf2.h (dwarf_calling_convention): Add GNU prefix to locally defined enum.
2004-10-01 Eric Christopher <echristo@redhat.com>
* dwarf2.h (dwarf_calling_convention): Add GNU prefix to
locally defined enum.
* dwarf2out.c (add_calling_convention_attribute): Don't
emit DW_CC_normal.
From-SVN: r88477
Kazu Hirata [Mon, 4 Oct 2004 04:54:21 +0000 (04:54 +0000)]
MAINTAINERS (Various Maintainers): Move the "windows, cygwin, mingw" maintainer to ...
* MAINTAINERS (Various Maintainers): Move the "windows,
cygwin, mingw" maintainer to ...
(OS Port Maintainers): ... here.
From-SVN: r88476
Kazu Hirata [Mon, 4 Oct 2004 04:39:44 +0000 (04:39 +0000)]
MAINTAINERS (Write After Approval): Remove those that are maintainers of some subsystem.
* MAINTAINERS (Write After Approval): Remove those that are
maintainers of some subsystem.
From-SVN: r88475
Gabriel Dos Reis [Mon, 4 Oct 2004 00:40:26 +0000 (00:40 +0000)]
Convert diagnostics to use quoting flag q 2/n
Convert diagnostics to use quoting flag q 2/n
* class.c (build_base_path, add_method, alter_access,
handle_using_decl, check_bases,
maybe_warn_about_overly_private_class, find_final_overrider,
warn_hidden, finish_struct_anon,
add_implicitly_declared_members,
check_bitfield_decl, check_field_decls, layout_empty_base,
build_base_field, check_methods, layout_virtual_bases,
warn_about_ambiguous_bases, layout_class_type,
finish_struct_1,
resolve_address_of_overloaded_function, instantiate_type,
note_name_declared_in_class): Use format flag "q" for quoting.
From-SVN: r88473
Roger Sayle [Mon, 4 Oct 2004 00:19:57 +0000 (00:19 +0000)]
c_locale.cc (__convert_to_v): Use _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
* config/locale/generic/c_locale.cc (__convert_to_v): Use
_GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
to check for presence of strtold.
From-SVN: r88472
GCC Administrator [Mon, 4 Oct 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88470
Andrew Pinski [Mon, 4 Oct 2004 00:10:07 +0000 (00:10 +0000)]
PR c/17178, PR c/17820
2004-10-03 Andrew Pinski <pinskia@physics.uc.edu>
PR c/17178, PR c/17820
* c-decl.c (pop_scope): Do not warn about unused static
variables as they warned in the middle-end.
2004-10-03 Andrew Pinski <pinskia@physics.uc.edu>
PR c/17178
* gcc.dg/unused-4.c: Adjust to be correct.
PR c/17820
* gcc.dg/unused-7.c: New test.
From-SVN: r88467
Kaveh R. Ghazi [Mon, 4 Oct 2004 00:04:58 +0000 (00:04 +0000)]
builtins.c (expand_builtin_memcpy): Delete duplicate code and make the first parameter the expression not the arglist.
* builtins.c (expand_builtin_memcpy): Delete duplicate code
and make the first parameter the expression not the arglist.
From-SVN: r88466
Gabriel Dos Reis [Sun, 3 Oct 2004 23:02:30 +0000 (23:02 +0000)]
Convert diagnostics to use quoting flag q 1/n
Convert diagnostics to use quoting flag q 1/n
* error.c (locate_error): Ignore quoting flag q.
* call.c (build_user_type_conversion_1,
build_operator_new_call,
build_object_call, op_error, build_conditional_expr,
build_new_op, build_op_delete_call, enforce_access,
convert_like_real, convert_arg_to_ellipsis, build_x_va_arg,
convert_default_arg, build_over_call, build_new_method_call,
joust, perform_implicit_conversion, initialize_reference): Use
the
quoting flag q.
From-SVN: r88465
Ulrich Weigand [Sun, 3 Oct 2004 22:50:18 +0000 (22:50 +0000)]
expr.c (expand_expr_addr_expr): Only accept Pmode or ptr_mode as valid modes to expand address expressions.
* expr.c (expand_expr_addr_expr): Only accept Pmode or ptr_mode
as valid modes to expand address expressions.
From-SVN: r88464
Frank Ch. Eigler [Sun, 3 Oct 2004 21:17:29 +0000 (21:17 +0000)]
* fixing typos in accidental checkin
From-SVN: r88463
Joseph Myers [Sun, 3 Oct 2004 20:53:05 +0000 (21:53 +0100)]
c-aux-info.c, [...]: Follow code formatting conventions.
* c-aux-info.c, c-common.c, c-common.h, c-cppbuiltin.c, c-decl.c,
c-format.c, c-incpath.c, c-lex.c, c-objc-common.c, c-opts.c,
c-parse.in, c-pch.c, c-ppoutput.c, c-pragma.c, c-typeck.c: Follow
code formatting conventions.
From-SVN: r88462
Richard Sandiford [Sun, 3 Oct 2004 20:13:54 +0000 (20:13 +0000)]
* config/mips/mips.md (<u>mulsidi3_32bit_r4000): Fix unsigned case.
From-SVN: r88461
Joseph Myers [Sun, 3 Oct 2004 19:24:17 +0000 (20:24 +0100)]
* da.po: Update.
From-SVN: r88459
Andrew Pinski [Sun, 3 Oct 2004 18:17:52 +0000 (18:17 +0000)]
re PR c++/17797 (ICE in build_reinterpret_cast)
2004-10-03 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/17797
* g++.dg/overload/template2.C: New test.
From-SVN: r88458
Andrew Pinski [Sun, 3 Oct 2004 18:07:56 +0000 (18:07 +0000)]
re PR c++/17797 (ICE in build_reinterpret_cast)
2004-10-03 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/17797
* typeck.c (build_reinterpret_cast): Return if the inner type
is error_mark_node.
From-SVN: r88457
Paolo Carlini [Sun, 3 Oct 2004 15:50:32 +0000 (15:50 +0000)]
stl_list.h: Trivial formatting fixes.
2004-10-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_list.h: Trivial formatting fixes.
* include/bits/stl_tree.h: Likewise.
From-SVN: r88451
Kazu Hirata [Sun, 3 Oct 2004 15:33:20 +0000 (15:33 +0000)]
re PR tree-optimization/16632 (A couple fold-const.c optimizations are non-functional)
PR tree-optimization/16632
* fold-const.c (fold) [EQ_EXPR]: When seeing if D & ~C != 0 to
fold (A & C) == D into 0, fold ~C. Similarly, for the case
where | is used instead of &.
PR tree-optimization/16632
* testsuite/gcc.dg/tree-ssa/
20041002-1.c: New.
From-SVN: r88450
Kazu Hirata [Sun, 3 Oct 2004 15:31:54 +0000 (15:31 +0000)]
fold-const.c (fold): When seeing if D & ~C != 0 to fold (A & C) == D into 0, fold ~C.
* fold-const.c (fold) [EQ_EXPR]: When seeing if D & ~C != 0 to
fold (A & C) == D into 0, fold ~C. Similarly, for the case
where | is used instead of &.
* testsuite/gcc.dg/tree-ssa/
20041002-1.c: New.
From-SVN: r88449
Paul Brook [Sun, 3 Oct 2004 14:01:51 +0000 (14:01 +0000)]
pr17286.f90: Add dg-do line.
* gfortran.dg/pr17286.f90: Add dg-do line. Explicitly test bug,
rather than relying on default formatting.
From-SVN: r88448
Tobias Schlüter [Sun, 3 Oct 2004 13:30:37 +0000 (13:30 +0000)]
simplify.c (range_check): Remove blank line at beginning of function.
2004-10-03 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* simplify.c (range_check): Remove blank line at beginning of function.
(gfc_simplify_dint): Same at end of function.
(gfc_simplify_exponent, gfc_simplify_fraction): Simplify calculations.
(gfc_simplify_bound): Fix indentation.
(gfc_simplify_log10): Simplify calculation.
(gfc_simplify_min, gfc_simplify_max): Remove blank line at beginning
of function.
(gfc_simplify_nearest): Same at end of function.
(gfc_simplify_nint, gfc_simplify_idnint): Same at beginning of
function.
(gfc_simplify_rrspacing, gfc_simplify_set_exponent,
gfc_simplify_spacing): Simplify calulations.
From-SVN: r88447
Feng Wang [Sun, 3 Oct 2004 13:27:06 +0000 (13:27 +0000)]
trans-intrinsic.c: Fix comments on spacing and rrspacing
2004-10-03 Feng Wang <fengwang@nudt.edu.cn>
* trans-intrinsic.c: Fix comments on spacing and rrspacing
(gfc_conv_intrinsic_rrspacing): Add fold on constant trees.
From-SVN: r88446
Kazu Hirata [Sun, 3 Oct 2004 13:25:05 +0000 (13:25 +0000)]
* ginclude/stddef.h: Fix a comment typo.
From-SVN: r88445
Aaron W. LaFramboise [Sun, 3 Oct 2004 12:04:15 +0000 (06:04 -0600)]
abort.c ("libgfortran.h"): Move.
2004-10-03 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* intrinsics/abort.c ("libgfortran.h"): Move.
* intrinsics/date_and_time.c ("libgfortran.h"): Same.
* intrinsics/write.c ("libgfortran.h"): Same.
From-SVN: r88444
Paolo Carlini [Sun, 3 Oct 2004 11:33:53 +0000 (11:33 +0000)]
sstream.tcc (seekpos): In case of success, just return __sp.
2004-10-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/sstream.tcc (seekpos): In case of success, just
return __sp.
From-SVN: r88443
Eric Botcazou [Sun, 3 Oct 2004 08:00:39 +0000 (10:00 +0200)]
re PR target/17443 (--enable-threads=single is ignored)
PR target/17443
* config.gcc (i?86-*-solaris2*): Restore correct logic
for --enable-threads option.
(sparc64-*-solaris2*): Likewise.
(sparc-*-solaris2*): Likewise.
From-SVN: r88442
Alan Modra [Sun, 3 Oct 2004 03:31:38 +0000 (03:31 +0000)]
linux.h (TARGET_C99_FUNCTIONS): Define.
* config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define.
(OS_MISSING_POWERPC64): Move, and comment.
* config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Define.
(OS_MISSING_POWERPC64): Move, and comment.
From-SVN: r88440
Ian Lance Taylor [Sun, 3 Oct 2004 03:04:21 +0000 (03:04 +0000)]
* arm.c (output_call_mem): Add missing \t.
From-SVN: r88438
Kaveh R. Ghazi [Sun, 3 Oct 2004 01:53:09 +0000 (01:53 +0000)]
builtins.c (expand_builtin_memcmp, [...]): Delete duplicate code.
* builtins.c (expand_builtin_memcmp, expand_builtin_strcmp,
expand_builtin_strncmp): Delete duplicate code.
From-SVN: r88437
GCC Administrator [Sun, 3 Oct 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88435
Frank Ch. Eigler [Sat, 2 Oct 2004 23:12:49 +0000 (23:12 +0000)]
tree-mudflap.c (mf_build_check_statement_for): Reorganize to take check-base and -limit arguments.
2004-10-02 Frank Ch. Eigler <fche@redhat.com>
* tree-mudflap.c (mf_build_check_statement_for): Reorganize to
take check-base and -limit arguments.
(mf_xform_derefs_1): Reorganize slightly to pass proper base/limit
check ranges for ARRAY_REF and COMPONENT_REF.
(execute_mudflap_fnction_ops, ..._decls): Limit unnecessary
instrumentation.
2004-10-02 Frank Ch. Eigler <fche@redhat.com>
* testsuite/libmudflap.c/pass50-frag.c, fail33-frag.c, fail34-frag.c:
New tests for proper base/limit checking for aggregates.
From-SVN: r88432
Joseph Myers [Sat, 2 Oct 2004 19:15:45 +0000 (20:15 +0100)]
c-objc-common.c (c_tree_printer): Correct description of %E.
* c-objc-common.c (c_tree_printer): Correct description of %E.
Don't fall through after printing an expression.
testsuite:
* gcc.dg/
20040920-1.c: Update expected message text.
From-SVN: r88431
James A. Morrison [Sat, 2 Oct 2004 18:38:29 +0000 (18:38 +0000)]
re PR treelang/17762 (treelang doesn't use mapped locations)
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
PR other/17762
* lex.l: Include input.h and errors.h
(lineno): New variable.
(LINEMAP_POSITION_FOR_COLUMN): Define as noop when USE_MAPPED_LOCATION
is not defined.
Set column position with LINEMAP_POSITION_FOR_COLUMN.
Use error instead of fprintf.
Set input_location with the value returned by linemap_start_line when
USE_MAPPED_LOCATION is defined.
(dump_lex_value): Use LOCATION_LINE.
* parse.y: Include errors.h.
Use error and warning instead of fprintf.
(return): Move exp to rule scope and always set to $2. Test against
exp instead of $2.
(init): Set $$ to $2.
(print_token): Use LOCATION_LINE.
* tree1.c (treelang_init): Call treelang_init_decl_processing last.
Call linemap_add to set input_filename when USE_MAPPED_LOCATION is
defined.
(treelang_parse_file): Always start at line one.
Rename input_filename to main_input_filename when USE_MAPPED_LOCATION is
defined.
Leave main_input_filename when done parsing the input.
(insert_tree_name): Use error instead of fprintf.
* treetree.c (tree_code_get_expression): Wrap long line.
(tree_mark_addressable): Use %qD to print out DECLs.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* compile/autofunc.tree: New File.
* compile/badchar.tree: New File.
* compile/externvar.tree: New File.
* compile/mismatch.tree: New File.
* compile/noproto.tree: New File.
* compile/novar.tree: New File.
* compile/var_defs.tree: Add duplicate variable.
From-SVN: r88430
James A. Morrison [Sat, 2 Oct 2004 17:42:44 +0000 (17:42 +0000)]
parse.y: Use gcc_assert and gcc_unreachable instead of abort.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* parse.y: Use gcc_assert and gcc_unreachable instead of abort.
* tree1.c: Likewise.
* treetree.c: Likewise.
From-SVN: r88429
James A. Morrison [Sat, 2 Oct 2004 17:40:04 +0000 (17:40 +0000)]
lex.l: Remove random whitespace.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* lex.l: Remove random whitespace.
* parse.y: Reformat copyright notice. Indent declarations.
Wrap long lines, unwrap short lines.
* tree1.c: Reformat copyright notice. Wrap long lines.
Remove random whitespace.
(lookup_tree_name): Use LOCATION_LINE.
* treetree.c: Reformat copyright notice. Wrap long lines.
Remove random whitespace.
From-SVN: r88428
P.J. Darcy [Sat, 2 Oct 2004 16:33:06 +0000 (16:33 +0000)]
ltcf-c.sh (tpf*): Add ld_shlibs=yes.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* ltcf-c.sh (tpf*): Add ld_shlibs=yes.
* ltcf-cxx.sh (tpf*): Likewise.
* ltconfig (tpf*): Add TPF OS configuration support.
From-SVN: r88427
Kazu Hirata [Sat, 2 Oct 2004 15:56:06 +0000 (15:56 +0000)]
* objc-act.c: Fix comment typos.
From-SVN: r88426
James A. Morrison [Sat, 2 Oct 2004 15:18:16 +0000 (15:18 +0000)]
parse.y (ELSE): Set tok to $1.
2004-09-28 James A. Morrison <phython@gcc.gnu.org>
* parse.y (ELSE): Set tok to $1.
* treelang.texi: Wrap comments in @r{}. Indent example comments.
Use gcc when refering to the command line or website. Update function
definition.
From-SVN: r88425
Kazu Hirata [Sat, 2 Oct 2004 12:47:11 +0000 (12:47 +0000)]
* tree-cfg.c, config/s390/tpf-unwind.h: Fix comment typos.
From-SVN: r88424
Kaz Kojima [Sat, 2 Oct 2004 07:02:41 +0000 (07:02 +0000)]
* testsuite/libffi.call/negint.c: New test case.
From-SVN: r88421
Ulrich Weigand [Sat, 2 Oct 2004 04:19:16 +0000 (04:19 +0000)]
* gcc.dg/tree-ssa/loop-1.c: Merge changed dg-options for s390-*-*.
From-SVN: r88420
Kazu Hirata [Sat, 2 Oct 2004 02:00:51 +0000 (02:00 +0000)]
tree-cfg.c (cleanup_tree_cfg): Speed up by calling delete_unrechable_blocks() only when necessary.
* tree-cfg.c (cleanup_tree_cfg): Speed up by calling
delete_unrechable_blocks() only when necessary.
From-SVN: r88419
P.J. Darcy [Sat, 2 Oct 2004 00:48:44 +0000 (00:48 +0000)]
gthr-tpf.h (__gthread_recursive_mutex_t): New type.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* gthr-tpf.h (__gthread_recursive_mutex_t): New type.
(__GTHREAD_RECURSIVE_MUTEX_INIT): Define.
(__gthread_recursive_mutex_lock, __gthread_recursive_mutex_trylock,
__gthread_recursive_mutex_unlock): New functions.
From-SVN: r88418
P.J. Darcy [Sat, 2 Oct 2004 00:47:06 +0000 (00:47 +0000)]
t-tpf (LIB2ADDEH): Remove tpf-eh.c.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* config/s390/t-tpf (LIB2ADDEH): Remove tpf-eh.c.
* config/s390/tpf-eh.c: Remove file.
* config/s390/tpf-unwind.h: New file.
* config/s390/tpf.h (MD_FALLBACK_FRAME_STATE_FOR): Remove.
(MD_UNWIND_SUPPORT): Define.
From-SVN: r88417
GCC Administrator [Sat, 2 Oct 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88415
Joseph Myers [Fri, 1 Oct 2004 23:11:58 +0000 (00:11 +0100)]
* c-typeck.c (warn_for_assignment): Don't permit argnum == 0.
From-SVN: r88412
Ulrich Weigand [Fri, 1 Oct 2004 21:48:13 +0000 (21:48 +0000)]
s390-protos.h (s390_comparison): Add prototype.
* config/s390/s390-protos.h (s390_comparison): Add prototype.
* config/s390/s390.c (s390_comparison): New function.
(s390_branch_condition_mask): Return -1 for invalid comparisons.
(s390_branch_condition_mnemonic): Assert valid comparison.
* config/s390/s390.h (PREDICATE_CODES): Add s390_comparison.
* config/s390/s390.md ("*cjump_64", "*cjump_31", "*cjump_long",
"*icjump_64", "*icjump_31", "*icjump_long", "*trap"): Use
s390_comparison instead of comparison_operator.
* config/s390/s390.md (UNSPEC_CMPINT): New constant.
("cmpmemdi"): Remove.
("cmpmem_short", "*cmpmem_short"): Use CCUmode instead of CCSmode.
("cmpmem_long", "*cmpmem_long_64", "*cmpmem_long_31"): Likewise.
("cmpint_si"): Rename to ...
("*cmpint_si"): ... this. Use UNSPEC_CMPINT.
("cmpint_di", "*cmpint_di"): Likewise.
* config/s390/s390.c (s390_canonicalize_comparison): Remove
redundant UNSPEC_CMPINT conversions.
(s390_expand_cmpmem): Adapt to cmpint pattern changes.
From-SVN: r88410
Paolo Carlini [Fri, 1 Oct 2004 21:01:29 +0000 (21:01 +0000)]
sstream.tcc (pbackfail): Implement correctly 27.7.1.3/2, bullet 2...
2004-10-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/sstream.tcc (pbackfail): Implement correctly
27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
write in the buffer.
* testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
* testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
From-SVN: r88407
Kazu Hirata [Fri, 1 Oct 2004 18:45:28 +0000 (18:45 +0000)]
collect2.c (COLLECT_PARSE_FLAG): Remove.
* collect2.c (COLLECT_PARSE_FLAG): Remove.
(main): Remove a reference to COLLECT_PARSE_FLAG
* system.h: Poison COLLECT_PARSE_FLAG.
* doc/tm.texi (COLLECT_PARSE_FLAG): Remove.
From-SVN: r88406
Paul Brook [Fri, 1 Oct 2004 18:30:22 +0000 (18:30 +0000)]
* config/arm/crti.asm: Give _init and _fini function type.
From-SVN: r88405
Zdenek Dvorak [Fri, 1 Oct 2004 18:26:37 +0000 (20:26 +0200)]
common.opt (ftree-loop-ivcanon): Enable by default.
* common.opt (ftree-loop-ivcanon): Enable by default.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
Enable complete loop unrolling.
(canonicalize_induction_variables, tree_unroll_loops_completely):
Reset scev info.
* gcc.dg/tree-ssa/loop-1.c: Check that unrolling occurs already on
tree level.
From-SVN: r88404
Andrew Pinski [Fri, 1 Oct 2004 16:55:56 +0000 (16:55 +0000)]
pr17343.c: Remove.
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.dg/tree-ssa/pr17343.c: Remove.
From-SVN: r88401
Bernd Schmidt [Fri, 1 Oct 2004 16:25:11 +0000 (16:25 +0000)]
Change of email address
From-SVN: r88400
Paul Brook [Fri, 1 Oct 2004 15:55:21 +0000 (15:55 +0000)]
arm.c (thumb_compute_saved_rag_mask): Or with bitmask, not register number.
* config/arm/arm.c (thumb_compute_saved_rag_mask): Or with bitmask,
not register number.
(thumb_find_work_register): Search full register range.
From-SVN: r88399
Andrew Pinski [Fri, 1 Oct 2004 15:22:26 +0000 (15:22 +0000)]
re PR tree-optimization/17343 (a dispatch table can be shortened for certain switch statements)
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17343
* gcc.dg/tree-ssa/pr17343.c: New test.
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17343
* tree-cfg.c (group_case_labels): Get the label and not
the case expr for the default case.
When the label we looking at is the default, decrement the
new_size.
From-SVN: r88397
Jan Hubicka [Fri, 1 Oct 2004 15:11:25 +0000 (17:11 +0200)]
c-decl.c (c_expand_body): Update call tree_rest_of_compilation.
* c-decl.c (c_expand_body): Update call tree_rest_of_compilation.
* cgraphunit.c (cgraph_build_static_cdtor): Likewise.
* toplev.h (tree_rest_of_compilation): Update prototype.
* tree-optimize.c (tree_rest_of_compilation): Kill nested_p argument.
* misc.c (gnat_expand_body): Update call of tree_rest_of_compilation.
* semantics.c (expand_body): Update call of tree_rest_of_compilation.
* f95-lang.c (gfc_expand_function): Update call of
tree_rest_of_compilation.
* trans-decl.c (gfc_generate_constructors): Likewise.
* java.c (java_expand_body): Update call of tree_rest_of_compilation.
* treetree.c (treeland_expand_function): Update call of
tree_rest_of_compilation.
From-SVN: r88396
Kazu Hirata [Fri, 1 Oct 2004 14:51:25 +0000 (14:51 +0000)]
tree-cfg.c (cleanup_tree_cfg): Pull a call to cleanup_control_flow() out of the while loop.
* tree-cfg.c (cleanup_tree_cfg): Pull a call to
cleanup_control_flow() out of the while loop.
From-SVN: r88395
Kazu Hirata [Fri, 1 Oct 2004 13:44:20 +0000 (13:44 +0000)]
* lex.c: Fix a comment typo.
From-SVN: r88394
Kazu Hirata [Fri, 1 Oct 2004 12:54:51 +0000 (12:54 +0000)]
* java-tree.h: Fix a comment typo.
From-SVN: r88393
Andreas Schwab [Fri, 1 Oct 2004 11:11:36 +0000 (11:11 +0000)]
Fix typo.
From-SVN: r88392
Paolo Bonzini [Fri, 1 Oct 2004 09:59:01 +0000 (09:59 +0000)]
tree-vectorizer.c (vectorizable_operation): Fail unless the mode for the vector type is indeed a vector mode.
2004-10-01 Paolo Bonzini <bonzini@gnu.org>
* tree-vectorizer.c (vectorizable_operation): Fail unless
the mode for the vector type is indeed a vector mode.
From-SVN: r88390
Paolo Carlini [Fri, 1 Oct 2004 09:22:49 +0000 (09:22 +0000)]
sstream.tcc (seekpos): Minor rearrangement of two conditionals consistently with seekoff.
2004-10-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/sstream.tcc (seekpos): Minor rearrangement of two
conditionals consistently with seekoff.
* include/std/std_sstream.h (setbuf): Avoid a string temporary.
(_M_sync): Simplify a bit, clean-up comment.
From-SVN: r88389
Zdenek Dvorak [Fri, 1 Oct 2004 09:06:06 +0000 (11:06 +0200)]
tree-chrec.c (chrec_fold_plus_poly_poly, [...]): Use fold_convert or build_int_cst_type instead od fonvert.
* tree-chrec.c (chrec_fold_plus_poly_poly, chrec_fold_plus_1,
chrec_fold_multiply): Use fold_convert or build_int_cst_type instead
od fonvert.
* tree-scalar-evolution.c (compute_overall_effect_of_inner_loop,
add_to_evolution, set_nb_iterations_in_loop, follow_ssa_edge_in_rhs,
follow_ssa_edge_in_rhs): Ditto.
* tree-ssa-loop-ivopts.c (struct iv): Add base_object field.
(dump_iv): Dump base_object.
(dump_use, dump_cand): Use dump_iv.
(determine_base_object): New function.
(alloc_iv): Initialize base_object field.
(record_use): Clear the ssa_name field of iv.
(get_computation_cost_at): Do not use difference of addresses of
two different objects.
(may_eliminate_iv): Do not require the loop to have just single exit.
* tree-ssa-loop-niter.c (zero_p): Do not check for overflows.
(nonzero_p): New function.
(inverse, number_of_iterations_cond, simplify_using_outer_evolutions,
tree_simplify_using_condition, simplify_using_initial_conditions,
loop_niter_by_eval, find_loop_niter_by_eval,
estimate_numbers_of_iterations_loop, compare_trees,
upper_bound_in_type, lower_bound_in_type,
can_count_iv_in_wider_type_bound): Use buildN instead of build. Use
fold_convert or build_int_cst_type instead of convert. Use (non)zero_p
instead of integer_(non)zerop.
From-SVN: r88388
Jakub Jelinek [Fri, 1 Oct 2004 07:43:03 +0000 (09:43 +0200)]
revert: tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD and TI_VA_LIST_FPR_COUNTER_FIELD.
2004-10-01 Jakub Jelinek <jakub@redhat.com>
Revert
2004-09-29 Jakub Jelinek <jakub@redhat.com>
* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
and TI_VA_LIST_FPR_COUNTER_FIELD.
(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
* tree-pass.h (pass_stdarg): Add.
* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
* tree-stdarg.c: New file.
* Makefile.in (OBJS-common): Add tree-stdarg.o.
(tree-stdarg.o): Add dependencies.
* function.h (struct function): Add va_list_gpr_size and
va_list_fpr_size fields.
* function.c (allocate_struct_function): Initialize them.
* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(ix86_setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(ix86_va_start): Don't set up fields that won't be used.
* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(rs6000_va_start): Don't set up fields that won't be used.
* gcc.dg/tree-ssa/stdarg-1.c: Removed.
* gcc.dg/tree-ssa/stdarg-2.c: Removed.
* gcc.dg/tree-ssa/stdarg-3.c: Removed.
* gcc.dg/tree-ssa/stdarg-4.c: Removed.
* gcc.dg/tree-ssa/stdarg-5.c: Removed.
From-SVN: r88383
Eric Christopher [Fri, 1 Oct 2004 05:08:59 +0000 (05:08 +0000)]
dwarf2.h (dwarf_calling_convention): Add enum for renesas sh abi.
2004-09-30 Eric Christopher <echristo@redhat.com>
* dwarf2.h (dwarf_calling_convention): Add enum for renesas
sh abi.
* dwarf2out.c (add_calling_convention_attribute): New function.
(gen_subroutine_type_die): Use.
* target-def.h (TARGET_DWARF_CALLING_CONVENTION): New hook.
* target.h (gcc_target): Add dwarf_calling_convention.
* hooks.c (hook_int_tree_0): New function.
* hooks.h: Prototype.
* config/sh/sh.c: Include dwarf2.h.
(sh_dwarf_calling_convention): New function.
(TARGET_DWARF_CALLING_CONVENTION): Use.
* doc/tm.texi (TARGET_DWARF_CALLING_CONVENTION): Document.
From-SVN: r88382
Andrew Pinski [Fri, 1 Oct 2004 03:46:39 +0000 (03:46 +0000)]
re PR libobjc/16448 (FAIL: objc/execute/IMP.m compilation, -O0)
2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
PR libobjc/16448
* exception.c: Include config.h
(objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
SJLJ_EXCEPTIONS.
* configure.ac: Find out what exception handling code we use.
* configure: Regenerate.
* config.h.in: New file, regenerate.
From-SVN: r88379
Kaveh R. Ghazi [Fri, 1 Oct 2004 02:54:39 +0000 (02:54 +0000)]
builtins.c (expand_builtin_strstr, [...]): Eliminate duplicate code.
* builtins.c (expand_builtin_strstr, expand_builtin_strchr,
expand_builtin_strrchr, expand_builtin_strpbrk,
expand_builtin_strncat, expand_builtin_strspn,
expand_builtin_strcspn, expand_builtin_fputs): Eliminate duplicate
code.
From-SVN: r88378
GCC Administrator [Fri, 1 Oct 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88373
Ulrich Weigand [Fri, 1 Oct 2004 00:07:52 +0000 (00:07 +0000)]
s390-protos.h (s390_expand_logical_operator): Add prototype.
* config/s390/s390-protos.h (s390_expand_logical_operator): Add
prototype.
(s390_logical_operator_ok_p): Likewise.
* config/s390/s390.c (s390_expand_logical_operator): New function.
(s390_logical_operator_ok_p): Likewise.
* config/s390/s390.md ("anddi3"): New expander.
("*anddi3"): Rename from old anddi3 pattern, add Q->Q alternative.
("*anddi3_ss", "*anddi3_ss_inv"): Remove.
("andsi3"): Use s390_expand_logical_operator.
("*andsi3_esa", "*andsi3_zarch"): Add Q->Q alternative.
("*andsi3_ss", "*andsi3_ss_inv"): Remove.
("andhi3"): New expander.
("*andhi3_zarch", "*andhi3_esa"): New patterns.
("andhi3", "*andhi3_ni", "*andhi3_ss", "*andhi3_ss_inv"): Remove.
("andqi3"): New expander.
("*andqi3_zarch", "*andqi3_esa"): New patterns.
("andqi3", "*andqi3_ni", "*andqi3_ss", "*andqi3_ss_inv"): Remove.
("iordi3"): New expander.
("*iordi3"): Rename from old iordi3 pattern, add Q->Q alternative.
("*iordi3_ss", "*iordi3_ss_inv"): Remove.
("iorsi3"): Use s390_expand_logical_operator.
("*iorsi3_esa", "*iorsi3_zarch"): Add Q->Q alternative.
("*iorsi3_ss", "*iorsi3_ss_inv"): Remove.
("iorhi3"): New expiorer.
("*iorhi3_zarch", "*iorhi3_esa"): New patterns.
("iorhi3", "*iorhi3_ni", "*iorhi3_ss", "*iorhi3_ss_inv"): Remove.
("iorqi3"): New expiorer.
("*iorqi3_zarch", "*iorqi3_esa"): New patterns.
("iorqi3", "*iorqi3_ni", "*iorqi3_ss", "*iorqi3_ss_inv"): Remove.
("xordi3"): New expander.
("*xordi3"): Rename from old xordi3 pattern, add Q->Q alternative.
("*xordi3_ss", "*xordi3_ss_inv"): Remove.
("xorsi3"): New expander.
("*xorsi3"): Rename from old xorsi3 pattern, add Q->Q alternative.
("*xorsi3_ss", "*xorsi3_ss_inv"): Remove.
("xorhi3"): New expander.
("*xorqi3"): Rename from old xorhi3 pattern, add Q->Q alternative.
("*xorhi3_ss", "*xorhi3_ss_inv"): Remove.
("xorqi3"): New expander.
("*xorqi3"): Rename from old xorqi3 pattern, add Q->Q alternative.
("*xorqi3_ss", "*xorqi3_ss_inv"): Remove.
From-SVN: r88370
Roger Sayle [Thu, 30 Sep 2004 23:44:30 +0000 (23:44 +0000)]
combine.c (force_to_mode): Only convert the expression (AND (NE FOO 0) CONST) into (AND FOO CONST) if...
* combine.c (force_to_mode) <NE_EXPR>: Only convert the expression
(AND (NE FOO 0) CONST) into (AND FOO CONST) if FOO has the same
machine mode as the result.
From-SVN: r88369
Ben Elliston [Thu, 30 Sep 2004 23:40:15 +0000 (23:40 +0000)]
re PR bootstrap/17761 (sh-elf doesn't build after merge from edge-vector-branch)
PR bootstrap/17761
* lcm.c (optimize_mode_switching): Update to use EDGE_SUCC and
FOR_EACH_EDGE macros.
From-SVN: r88368
Per Bothner [Thu, 30 Sep 2004 23:35:07 +0000 (16:35 -0700)]
Simplify lexer. Implement --enable-mapped-location support.
* jcf-parse.c (parse_class_file): Use linemap_line_start.
(parse_source_file_1): Pass filename as extra parameter, so we can call
linemap_add and set input_location here, rather than in both callers.
(read_class): Pass copied filename to parse_source_file_1.
Don't initialize wfl_operator - only needed for source compilation.
(read_class, jcf_parse): Call linemap_add with LC_LEAVE.
* lex.h: Remove a bunch of debugging macros.
* lex.h (struct_java_line, struct java_error): Remove types.
(JAVA_COLUMN_DELTA): Remove - use java_lexer.next_colums instead.
(struct java_lc_s): Remove prev_col field.
(struct java_lexer): New fields next_unicode, next_columns, and
avail_unicode. New position field, and maybe token_start field.
Don't need hit_eof field - use next_unicode == -1 instead.
(JAVA_INTEGERAL_RANGE_ERROR): Rename to JAVA_RANGE_ERROR.
(JAVA_RANGE_ERROR, JAVA_FLOAT_ANGE_ERROR): Update accordingly.
* parse.h: Various changes for USE_MAPPED_LOCATION.
(EXPR_WFL_EMIT_LINE_NOTE): XXX
(BUILD_EXPR_WFL, EXPR_WFL_ADD_COL): Remove no-longer-used macros.
(struct parser_ctxt): New file_start_location field.
Remove p_line, c_line fields since we no longer save lines.
Remove elc, lineno, and current_jcf fields - no longer used.
* parse.y: Updates for USE_MAPPED_LOCATION and new lexer.
Don't use EXPR_WFL_ADD_COL since that isn't trivial with
source_location and is probably not needed anymore anyway.
Use new expr_add_Location function.
(SET_EXPR_LOCATION_FROM_TOKEN): New convenience macro.
(java_pop_parser_context): Minor cleanup.
(java_parser_context_save_global, java_parser_context_restore_global,
java_pop_parser_context): Save/restore input_location as a unit.
(issue_warning_error_from_context): If USE_MAPPED_LOCATION take
a source_location instead of a wfl context node.
(check_class_interface_creation): input_filename is not addressable.
(create_artificial_method): Calling java_parser_context_save_global
and java_parser_context_restore_global is overkill. Instead,
temporarily set input_location from class decl.
(java_layout_seen_class_methods): Set input_location from method decl.
(fix_constructors): Make more robust if no EXPR_WITH_FILE_LOCATION.
(finish_loop_body): Likewise.
* lex.c: Updates for USE_MAPPED_LOCATION. Use build_unknwon_wfl.
(java_sprint_unicode): Take a character, not index in line.
(java_sneak_uncode): Replaced by java_peek_unicode.
(java_unget_unicode): No longer used.
(java_allocate_new_line. java_store_unicode): Removed, since we
no longer remember "lines".
(java_new_lexer): Update for new data structures.
(java_read_char): Move unget_value checking to java_read_unicode.
(java_get_unicode, java_peek_unicode, java_next_unicode): New more
efficient functions that are used directly when lexing.
(java_read_unicode_collapsing_terminators): No longer needed.
(java_parse_end_comment, java_parse_escape_sequence, do_java_lex):
Re-organize to use java_peek_unicode to avoid java_unget_unicode.
(java_parse_escape_sequence): Rewrite to be simpler / more efficient.
(do_java_lex): Lots of movings around to avoid java_unget_unicode,
combine switch branches, and test for common token kinds earlier.
(java_lex_error): Rewrite.
* jv-scan.c (expand_location): New function, copied from tree.c.
(main): Set ctxp->filename instead of setting input_filename directly.
From-SVN: r88367
Per Bothner [Thu, 30 Sep 2004 23:25:27 +0000 (16:25 -0700)]
java-tree.h (JAVA_FILE_P, ZIP_FILE_P): Remove unused macros.
* java-tree.h (JAVA_FILE_P, ZIP_FILE_P): Remove unused macros.
* jcf-parse.c (java_parse_file): Don't set input_filename.
Use IS_A_COMMAND_LINE_FILENAME_P to check for duplicate filenames.
Create a list of TRANSLATION_UNIT_DECL.
(current_file_list): Is now a TRANSLATION_UNIT_DECL chain. The
reason is so we can set a DECL_SOURCE_LOCATION for each file.
(java_parse_file): Don't set unused ZIP_FILE_P, JAVA_FILE_P..
Create line-map LC_ENTER/LC_LEAVE entries for archive itself.
(file_start_location): New static.
(set_source_filename): Avoid extra access to input_filename macro.
Concatenate new name with class's package prefix.
(set_source_filename, give_name_to_class): Update.
(give_name_to_class): Set class's "line 0" input_location here.
(parse_class_file): Set input_location as a unit.
* jcf-parse.c (load_class): Sanity test if missing inner class file.
From-SVN: r88366
Per Bothner [Thu, 30 Sep 2004 23:23:52 +0000 (16:23 -0700)]
More cleanup for --enable-mapped-location.
* class.c (push_class): If USE_MAPPED_LOCATION don't set
input_location here. Instead do it in give_name_to_class.
(build_class_ref): Set DECL_ARTIFICIAL, for the sake of dwarf2out.
* expr.c (expand_byte_code): Call linemap_line_start.
* expr.c (build_expr_wfl): If USE_MAPPED_LOCATION, change final
parameters to a source_location. Don't need EXPR_WFL_FILENAME_NODE.
(expr_add_location): New function, if USE_MAPPED_LOCATION.
* class.c (maybe_layout_super_class): Adjust build_expr_wfl call
to USE_MAPPED_LOCATION case.
From-SVN: r88365
Joseph Myers [Thu, 30 Sep 2004 22:59:36 +0000 (23:59 +0100)]
* gcc.pot: Regenerate.
From-SVN: r88363
Joseph Myers [Thu, 30 Sep 2004 22:52:06 +0000 (23:52 +0100)]
c-tree.h (readonly_error): Remove.
* c-tree.h (readonly_error): Remove.
* c-typeck (enum lvalue_use): New.
(lvalue_or_else, readonly_error): Use it. All callers changed.
(readonly_error): Make static.
testsuite:
* gcc.dg/lvalue-2.c: New test.
From-SVN: r88362
Jan Hubicka [Thu, 30 Sep 2004 21:30:20 +0000 (21:30 +0000)]
Oops, revert accidental commit.
From-SVN: r88359
Jan Hubicka [Thu, 30 Sep 2004 21:25:52 +0000 (23:25 +0200)]
re PR debug/13974 (bad line marker in debug info)
PR debug/13974
* cfgrtl.c (try_redirect_by_replacing_jump,
force_nonfallthru_and_redirect, commit_one_edge_insertion,
cfg_layout_merge_blocks): Do not attach any line number information
to newly inserted instructions.
* emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to
emit_insn_*_noloc.
(emit_*insn_before, emit_insn*_after): New.
(emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite
existing locators.
* rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare.
(emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill.
From-SVN: r88358
Ulrich Weigand [Thu, 30 Sep 2004 21:23:29 +0000 (21:23 +0000)]
s390-protos.h (s390_arg_frame_offset): Remove.
* config/s390/s390-protos.h (s390_arg_frame_offset): Remove.
(s390_return_address_offset): Remove.
(s390_can_eliminate): Add prototype.
(s390_initial_elimination_offset): Add prototype.
* config/s390/s390.h (CAN_ELIMINATE): Call s390_can_eliminate.
(INITIAL_ELIMINATION_OFFSET): Call s390_initial_elimination_offset.
* config/s390/s390.c (s390_arg_frame_offset): Remove.
(s390_return_address_offset): Remove.
(s390_can_eliminate, s390_initial_elimination_offset): New functions.
(struct machine_function): New member split_branches_pending_p.
(s390_mainpool_start): Allow nonexistant pool insn for empty pool.
(s390_mainpool_finish): Likewise. Clear base_reg if pool empty.
(s390_optimize_prologue): Remove base_used argument. Call
s390_update_frame_layout instead of s390_register_info. Handle
prologue/epilogue insns that touch only RETURN_REGNUM.
(s390_reorg): Remove base_used. Clear split_branches_pending_p.
(s390_register_info): Remove base_used and return_addr_used
arguments, compute special register usage inline. Return live
register data to caller.
(s390_frame_info): Remove arguments, do not call s390_register_info.
(s390_init_frame_layout): New function.
(s390_update_frame_layout): Likewise.
(s390_emit_prologue): Call s390_update_frame_layout; some code
move to there. Do not emit pool placeholder insn if unnecessary.
From-SVN: r88357
Ulrich Weigand [Thu, 30 Sep 2004 21:21:57 +0000 (21:21 +0000)]
s390.c (legitimate_reload_constant_p): Remove floating point constant workaround.
* config/s390/s390.c (legitimate_reload_constant_p): Remove
floating point constant workaround.
(s390_secondary_input_reload_class): Handle PLUS reloads
with too-large constant.
(s390_expand_plus_operand): Likewise.
* config/s390/s390.md ("movdi"): Do not call force_const_mem.
("movsi"): Likewise. Also, remove workaround for non-general
operands.
("movdf"): Do not call force_const_mem.
("movsf"): Likewise. Merge expander with *movsf insn.
("*movsf"): Remove, merge with movsf expander.
From-SVN: r88356