gcc.git
17 years agoutils2.c (build_allocator): Provide the extra arguments to make_aligning_type for...
Olivier Hainque [Wed, 6 Jun 2007 10:21:37 +0000 (12:21 +0200)]
utils2.c (build_allocator): Provide the extra arguments to make_aligning_type for super-aligned objects...

2007-04-20  Olivier Hainque  <hainque@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>

* utils2.c (build_allocator): Provide the extra arguments to
make_aligning_type for super-aligned objects allocated from the default
pool. Leave enough room for a pointer before the aligning field, and
store the system's allocator return value there.
(build_call_alloc_dealloc): When releasing a super-aligned object,
retrieve the system's allocator return value from where build_allocator
has stored it, just ahead of the adjusted address we are passed.
(build_call_raise): Handle properly the generation of line numbers when
the node is marked No_Location.
(compare_elmt_bitpos): Use tree_int_cst_compare.  Stabilize the sort
by using DECL_UID on ties.
(build_binary_op) <EQ_EXPR>: Accept fat pointer types with the same
main variant.
(build_call_raise): Handle converting exception into goto; support new
argument KIND.
(build_component_ref): Add new arg to build_call_raise.

From-SVN: r125383

17 years agoa-tifiio.adb (Put, internal): For negative numbers...
Vincent Celier [Wed, 6 Jun 2007 10:21:22 +0000 (12:21 +0200)]
a-tifiio.adb (Put, internal): For negative numbers...

2007-04-20  Vincent Celier  <celier@adacore.com>

* a-tifiio.adb (Put, internal): For negative numbers, check that there
is room for at least one digit and the minus sign.
(Put.Put_Character): Never put a character outside of the range of
string To.

From-SVN: r125382

17 years agoa-tienio.adb (Get): Adjust buffer size to accomodate one extra character
Robert Dewar [Wed, 6 Jun 2007 10:21:11 +0000 (12:21 +0200)]
a-tienio.adb (Get): Adjust buffer size to accomodate one extra character

2007-04-20  Robert Dewar  <dewar@adacore.com>

* a-tienio.adb (Get): Adjust buffer size to accomodate one extra
character

From-SVN: r125381

17 years agoa-textio.ads, [...] (Write): Add explicit size clause for the C imported variable.
Thomas Quinot [Wed, 6 Jun 2007 10:20:58 +0000 (12:20 +0200)]
a-textio.ads, [...] (Write): Add explicit size clause for the C imported variable.

2007-04-20  Thomas Quinot  <quinot@adacore.com>

* a-textio.ads, a-textio.adb (Write): Add explicit size clause for the
C imported variable.
(Skip_Line): Do not reset Before_LM_PM immediately when Before_LM is set
on entry.

From-SVN: r125380

17 years agoa-tags.ads, a-tags.adb (Tag_Size): This constant is now internal to the package.
Javier Miranda [Wed, 6 Jun 2007 10:20:45 +0000 (12:20 +0200)]
a-tags.ads, a-tags.adb (Tag_Size): This constant is now internal to the package.

2007-04-20  Javier Miranda  <miranda@adacore.com>

* a-tags.ads, a-tags.adb (Tag_Size): This constant is now internal to
the package.
(Object_Specific_Data_Array): This is now internal to the package.
(Object_Specific_Data): This is now internal to the package.
(Select_Specific_Data_Element): This is now internal to the package.
(Select_Specific_Data_Array): This is now internal to the package.
(Select_Specific_Data): This is now internal to the package.
(Offset_To_Top_Function_Ptr): This is now public.
(To_Offset_To_Top_Function_Ptr): Removed.
(Storage_Offset_Ptr,To_Storage_Offset_Ptr): These declarations are now
 local to subprogram Offset_To_Top.
(Predefined_DT): Removed.
(Typeinfo_Ptr): Removed.
(OSD): This function is now internal to this package.
(SSD): This function is now internal to this package.
(DT): New function that displaces the pointer to the table of primitives
 to get access to the enclosing wrapper record.
(IW_Membership): Code cleanup.
(Offset_To_Top): Code cleanup.
(Predefined_DT): Removed.
(Register_Interface_Tag): Removed.
(Set_Interface_Table): Removed.
(Set_Offset_Index): Removed.
(Set_Offset_To_Top): Code cleanup.
(Set_OSD): Removed.
(Set_Signature): Removed.
(Set_SSD): Removed.
(Set_Tagged_Kind): Removed.
(Typeinfo_Ptr): Removed.
(TSD): Removed.
(Displace): Add missing check on null actual.

* exp_disp.ads, exp_disp.adb
(Select_Expansion_Utilities): Removed.
(Build_Common_Dispatching_Select_Statements): Moved to exp_atags.
(Expand_Dispatching_Call): Update calls to Get_Prim_Op_Address because
the interface requires a new parameter.
(Make_Disp_Asynchronous_Select_Spec, Make_Disp_Conditional_Select_Spec,
Make_Disp_Get_Prim_Op_Kind_Spec, Make_Disp_Timed_Select_Spec): Replace
calls to subprograms Build_T, Build_S, etc. by the corresponding code.
Done to remove package Select_Expansion_Utilities.
(Make_DT): New implementation for statically allocated dispatch tables.
(Make_Secondary_DT): Moved to the scope of Make_DT.
(Register_Primitive): Code cleanup plus incoporate the use of the new
function DT_Address_Attribute.
(Expand_Interface_Thunk): The profile of this subprogram has been
changed to return the Thunk_Id and the corresponding code.
(Fill_DT_Entry): Removed. Its functionality is now provided by
subprogram Register_Primitive.
(Fill_Secondary_DT_Entry): Removed. Its functionality is now provided by
subprogram Register_Primitive.
(Register_Primitive): New subprogram that incorporates the previous
functionalities of Fill_DT_Entry and Fill_Secondary_DT_Entry.
(Build_Common_Dispatching_Select_Statements): Remove formal Typ. This
was only required to call Make_DT_Access_Action, which is now removed.
(Ada_Actions): Removed
(Action_Is_Proc): Removed
(Action_Nb_Arg): Removed
Replace all the calls to Make_DT_Access_Action by direct calls to
Make_Procedure_Call_Statement or Make_Function_Call.
(Set_DTC_Entity_Value): New subprogram.
(Set_All_DT_Position): Add call to new subprogram Set_DTC_Entity_Value.
(Expand_Interface_Thunk): Add missing support for primitives that are
functions with a controlling result (case in which there is no need
to generate the thunk).

* exp_atag.ads, exp_atag.adb
(Build_DT): New subprogram that displaces the pointer to reference the
base of the wrapper record.
(Build_Typeinfo_Offset): Removed.
(RTE_Tag_Node): Removed.
(Build_Common_Dispatching_Select_Statements): Moved here from exp_disp
(Build_Get_RC_Offset): Removed.
(Build_Inherit_Predefined_Prims): Removed.
(Build_Inherit_TSD: Removed.
(Build_New_TSD): Removed.
(Build_Set_External_Tag): Removed.
(Build_Set_Predefined_Prim_Op_Address): Add documentation.
(Build_Set_Prim_Op_Address): Add documentation.
(Build_Set_TSD): Removed.

* rtsfind.ads, rtsfind.adb
(Load_Fail): If load fails and we are not in configurable run-time
mode, then raise Unrecoverable_Error.
(Text_IO_Kludge): Generate an error message if a run-time library is
not available in a given run-time (ie. zfp run-time).
(RTE_Record_Component): Add code to check that the component we search
for is not found in two records in the given run-time package.
(RE_DT_Offset_To_Top_Size, RE_DT_Predef_Prims_Size): Removed
(RE_DT_Predef_Prims_Offset): New entity
(RE_Static_Offset_To_Top): New entity
(RE_HT_Link): New entity.
(System_Address_Image): Addition of this run-time package.
(RE_Address_Image): New entity.
(RE_Abstract_Interface): Removed.
(RE_Default_Prim_Op_Count): Removed.
(RE_DT_Entry_Size): Removed.
(RE_DT_Min_Prologue_Size): Removed.
(RE_DT_Prologue_Size): Removed.
(RE_Ifaces_Table_Ptr): Removed.
(RE_Interface_Data_Ptr): Removed.
(RE_Type_Specific_Data): Removed.
(RE_Primary_DT): Removed.
(RE_Register_Interface_Tag): Removed.
(RE_Set_Offset_Index): Removed.
(RE_Set_OSD): Removed.
(RE_Set_SSD): Removed.
(RE_Set_Signature): Removed.
(RE_Set_Tagged_Kind): Removed.
(RE_Address_Array): New entity.
(RE_DT): New entity.
(RE_Iface_Tag): New entity.
(RE_Interfaces_Table): New entity.
(RE_No_Dispatch_Table): New entity.
(RE_NDT_Prims_Ptr): New entity.
(RE_NDT_TSD): New entity.
(RE_Num_Prims): New entity.
(RE_Offset_To_Top_Function_Ptr): New entity.
(RE_OSD_Table): New entity.
(RE_OSD_Num_Prims): New entity.
(RE_Predef_Prims): New entity
(RE_Predef_Prims_Table_Ptr): New entity.
(RE_Primary_DT): New entity.
(RE_Signature): New entity.
(RE_SSD): New entity.
(RE_TSD): New entity.
(RE_Type_Specific_Data): New entity.
(RE_Tag_Kind): New entity.

From-SVN: r125379

17 years agoa-stzunb.adb, [...]: (Insert): Use 'Length instead of 'Size.
Arnaud Charlet [Wed, 6 Jun 2007 10:20:30 +0000 (12:20 +0200)]
a-stzunb.adb, [...]: (Insert): Use 'Length instead of 'Size.

2007-04-20  Arnaud Charlet  <charlet@adacore.com>

* a-stzunb.adb, a-stwiun.adb, a-strunb.adb: (Insert): Use 'Length
instead of 'Size.

* a-stwifi.ads, a-stzfix.ads: Minor reformatting

From-SVN: r125378

17 years agobcheck.adb, [...]: Move Name_Id, File_Name_Type and Unit_Name_Type from package Types...
Vincent Celier [Wed, 6 Jun 2007 10:19:40 +0000 (12:19 +0200)]
bcheck.adb, [...]: Move Name_Id, File_Name_Type and Unit_Name_Type from package Types to package Namet.

2007-04-20  Vincent Celier  <celier@adacore.com>
    Robert Dewar  <dewar@adacore.com>

* bcheck.adb, binde.adb, binderr.adb, binderr.ads, butil.adb,
butil.ads, erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
err_vars.ads, exp_tss.adb, exp_tss.ads, fmap.adb, fmap.ads,
fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
lib-sort.adb, lib-util.adb, lib-util.ads, lib-xref.adb, makeutl.ads,
makeutl.adb, nmake.adt, osint.adb, osint.ads, osint-b.adb,
par-load.adb, prj-attr.adb, prj-dect.adb, prj-err.adb, prj-makr.adb,
prj-part.adb, prj-pp.adb, prj-proc.adb, prj-tree.adb, prj-tree.ads,
prj-util.adb, prj-util.ads, scans.adb, scans.ads, sem_ch2.adb,
sinput-c.adb, styleg-c.adb, tempdir.adb, tempdir.ads, uname.adb,
uname.ads, atree.h, atree.ads, atree.adb, ali-util.ads, ali-util.adb,
ali.ads, ali.adb:
Move Name_Id, File_Name_Type and Unit_Name_Type from package Types to
package Namet. Make File_Name_Type and Unit_Name_Type types derived from
Mame_Id. Add new type Path_Name_Type, also derived from Name_Id.
Use variables of types File_Name_Type and Unit_Name_Type in error
messages.
(Get_Name): Add parameter Ignore_Special, and set it reading file name
(New_Copy): When debugging the compiler, call New_Node_Debugging_Output
here.
Define flags Flag217-Flag230 with associated subprograms
(Flag_Word5): New record type.
(Flag_Word5_Ptr): New access type.
(To_Flag_Word5): New unchecked conversion.
(To_Flag_Word5_Ptr): Likewise.
(Flag216): New function.
(Set_Flag216): New procedure.

From-SVN: r125377

17 years agoa-finali.ads (Ada.Finalization): Add missing pragma Remote_Types.
Thomas Quinot [Wed, 6 Jun 2007 10:18:51 +0000 (12:18 +0200)]
a-finali.ads (Ada.Finalization): Add missing pragma Remote_Types.

2007-04-20  Thomas Quinot  <quinot@adacore.com>

* a-finali.ads (Ada.Finalization): Add missing pragma Remote_Types. The
presence of this categorization pragma is mandated by the language.
(Limited_Controlled): Add missing pragma Preelaborable_Initialization
for this type.

From-SVN: r125376

17 years agoa-except.ads, [...]: (Rmsg_28): Fix description for E.4(18) check.
Thomas Quinot [Wed, 6 Jun 2007 10:18:34 +0000 (12:18 +0200)]
a-except.ads, [...]: (Rmsg_28): Fix description for E.4(18) check.

2007-04-20  Thomas Quinot  <quinot@adacore.com>
    Olivier Hainque  <hainque@adacore.com>
    Robert Dewar  <dewar@adacore.com>

* a-except.ads, a-except.adb: (Rmsg_28): Fix description for E.4(18)
check.
(Raise_Current_Excep): Call Debug_Raise_Exception just before
propagation starts, to let debuggers know about the event in a reliable
fashion.
(Local_Raise): Moved to System.Exceptions
More convenient to have this as a separate unit

* s-except.adb, s-except.ads: New files.

* a-exextr.adb (Unhandled_Exception): Delete - replaced by
Debug_Unhandled_Exception in System.Exceptions where it belongs
together with a couple of other debug helpers.
(Notify_Unhandled_Exception): Use Debug_Unhandled_Exception instead of
the former Unhandled_Exception.

* exp_ch11.ads, exp_ch11.adb: (Possible_Local_Raise): New procedure
(Warn_No_Exception_Propagation): New procedure
(Warn_If_No_Propagation): Rewritten for new warning generation
(Expand_Exception_Handlers): New warning generation
(Expand_N_Raise_xxx_Error): Rewritten for new warnings
(Add_Exception_Label): Use Special_Exception_Package_Used for test
instead of Most_Recent_Exception_Used (accomodates Exception_Traces)
(Expand_Local_Exception_Handlers): Unconditionally add extra block wrap
even if restriction is set (makes life easier in Check_Returns)
(Expand_Local_Exception_Handlers): Follow renamed entity chain when
checking exception identities.
(Expand_Local_Exception_Handlers): Do not optimize when all others case
(Expand_Local_Exception_Handlers): Set Exception_Junk flag on generated
block for handler (used by Check_Returns)
(Expand_Local_Exception_Handlers): Local_Raise now takes an address
(Expand_N_Handled_Sequence_Of_Statements): Properly handle -gnatd.x to
remove all exception handlers when optimizing local raise statements.
(Find_Local_Handler): Use Get_Renamed_Entity
(Expand_N_Handled_Sequence_Of_Statements): If the handled sequence is
marked analyzed after expanding exception handlers, do not generate
redundant cleanup actions, because they have been constructed already.

From-SVN: r125375

17 years agocomperr.adb (Compiler_Abort): New Finalize/Output_Messages interface for Errout
Robert Dewar [Wed, 6 Jun 2007 10:18:16 +0000 (12:18 +0200)]
comperr.adb (Compiler_Abort): New Finalize/Output_Messages interface for Errout

2007-04-20  Robert Dewar  <dewar@adacore.com>

* comperr.adb (Compiler_Abort): New Finalize/Output_Messages interface
for Errout

* errout.adb: New Finalize/Compilation_Errors/Output_Messages
implementation

* errout.ads (Finalize): Changed interface
(Output_Messages): New procedure
(Compilation_Errors): New Interface

* prepcomp.ads, prepcomp.adb (Parse_Preprocessing_Data_File): New
Finalize/Output_Messages interface for Errout
(Prepare_To_Preprocess): New Finalize/Output_Messages interface for
Errout.

From-SVN: r125374

17 years agoa-chahan.ads: Remove obsolescent pragmas
Robert Dewar [Wed, 6 Jun 2007 10:17:28 +0000 (12:17 +0200)]
a-chahan.ads: Remove obsolescent pragmas

2007-04-20  Robert Dewar  <dewar@adacore.com>

* a-chahan.ads: Remove obsolescent pragmas

* a-chlat1.ads: Minor reformatting

From-SVN: r125373

17 years agos-intman-vxworks.ads, [...] (Abort_Task_Signal): Rename to Abort_Task_Interrupt to...
Jose Ruiz [Wed, 6 Jun 2007 10:17:12 +0000 (12:17 +0200)]
s-intman-vxworks.ads, [...] (Abort_Task_Signal): Rename to Abort_Task_Interrupt to be able to keep the same interface as the...

2007-04-20  Jose Ruiz  <ruiz@adacore.com>

* s-intman-vxworks.ads, s-intman-vxworks.adb (Abort_Task_Signal):
Rename to Abort_Task_Interrupt to be able to keep the same interface
as the rest of the targets.

* s-osinte-vxworks.ads s-osinte-vxworks.adb
(To_VxWorks_Priority): Remove explicit "in" mode indicator

* s-osinte-vxworks6.ads, s-vxwork-arm.ads, system-vxworks-arm.ads:
New files.

From-SVN: r125372

17 years agogigi.h, trans.c (Identifier_to_gnu): Change test for deferred constant by adding...
Gary Dismukes [Wed, 6 Jun 2007 10:16:54 +0000 (12:16 +0200)]
gigi.h, trans.c (Identifier_to_gnu): Change test for deferred constant by adding guard that the entity is an...

2007-04-20  Gary Dismukes  <dismukes@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>
    Tristan Gingold  <gingold@adacore.com>
    Olivier Hainque  <hainque@adacore.com>

* gigi.h, trans.c (Identifier_to_gnu): Change test for deferred
constant by adding guard that the entity is an E_Constant before
testing presence of Full_view (and remove now-unnecessary test that
entity is not a type).
For a CONST_DECL used by reference, manually retrieve
the DECL_INITIAL.  Do not invoke fold in the other DECL_P cases either.
(struct language_function): Move from utils.c to here.
(struct parm_attr): New structure.
(parm_attr, parm_attr vector, parm_attr GC vector): New types.
(f_parm_attr_cache): New macro.
(Attribute_to_gnu) <Attr_Length>: When not optimizing, cache the
expressions for the 'First, 'Last and 'Length attributes of the
unconstrained array IN parameters.
(Subprogram_Body_to_gnu): Use gnu_subprog_decl throughout.
Allocate the information structure for the function earlier, as well
as the language-specific part.
If the parameter attributes cache has been populated, evaluate the
cached expressions on entry.
(takes_address): Add OPERAND_TYPE parameter.  Handle N_Function_Call,
N_Procedure_Call_Statement and N_Indexed_Component.
(Pragma_to_gnu): Translate inspection_point to an asm statement
containaing a comment and a reference to the object (either its address
for BLKmode or its value).
(Identifier_to_gnu): Use TREE_CONSTANT instead of CONST_DECL to decide
to go to DECL_INITIAL. Together with the size constraint relaxation
in create_var_decl, enlarges the set of situations in which an
identifier may be used as an initializer without implying elaboration
code.
(Subprogram_Body_to_gnu): Do not fiddle with the debug interface but set
DECL_IGNORED_P on the function if Needs_Debug_Info is not set on the
node.
(maybe_stabilize_reference): Remove lvalues_only parameter.
(gnat_stabilize_reference): Adjust for above change.
(gnat_to_gnu): Do not set location information on the result
if it is a reference.
(add_cleanup): Add gnat_node parameter and set the location of the
cleanup to it.
(Handled_Sequence_Of_Statements_to_gnu): Adjust calls to add_cleanup.
(Exception_Handler_to_gnu_zcx): Likewise.
(gigi): Remove the cgraph node if the elaboration procedure is empty.
(Subprogram_Body_to_gnu): If a stub is attached to the subprogram, emit
the former right after the latter.
(start_stmt_group): Make global.
(end_stmt_group): Likewise.
(gnu_constraint_error_label_stack, gnu_storage_error_label_stack): New
vars.
(gnu_program_error_label_stack): Likewise.
(gigi): Initialize them.
(call_to_gnu, gnat_to_gnu, emit_check): Add new arg to build_call_raise.
(gnat_to_gnu, N_{Push,Pop}_{Constraint,Storage,Program}_Error_Label):
New cases.
(push_exception_label_stack): New function.
(takes_address): New function.

* utils.c (struct language_function): Move to trans.c from here.
(unchecked_convert): Do not wrap up integer constants in
VIEW_CONVERT_EXPRs.
(create_var_decl_1): Decouple TREE_CONSTANT from CONST_DECL. Prevent
the latter for aggregate types, unexpected by later passes, and relax an
arbitrary size constraint on the former.
(create_field_decl): Use tree_int_cst_equal instead of operand_equal_p
to compare the sizes.
(convert_vms_descriptor): When converting to a fat pointer type, be
prepared for a S descriptor at runtime in spite of a SB specification.
(shift_unc_components_for_thin_pointers): New function.
(write_record_type_debug_info): For variable-sized fields, cap the
alignment of the pointer to the computed alignment.
(finish_record_type): Change HAS_REP parameter into REP_LEVEL.
If REP_LEVEL is 2, do not compute the sizes.
(build_vms_descriptor): Adjust for new prototype of finish_record_type.
(build_unc_object_type): Likewise.
(declare_debug_type): New function.

        * ada-tree.def: USE_STMT: removed (not emitted anymore).

        * misc.c (gnat_expand_expr): Call to gnat_expand_stmt removed because
        no statement is expandable anymore.
        (gnat_init_gcc_eh): Do not initialize the DWARF-2 CFI machinery twice.
        (gnat_handle_option): Only allow flag_eliminate_debug_types to be set
        when the user requested it explicitely.
        (gnat_post_options): By default, set flag_eliminate_unused_debug_types
        to 0 for Ada.
        (get_alias_set): Return alias set 0 for a type if
        TYPE_UNIVERSAL_ALIASING_P is set on its main variant.

        * ada-tree.h: (TYPE_UNIVERSAL_ALIASING_P): New macro.
        (DECL_FUNCTION_STUB): New accessor macro.
        (SET_DECL_FUNCTION_STUB): New setter macro.

        * lang.opt (feliminate-unused-debug-types): Intercept this flag for Ada.

* fe.h (Get_Local_Raise_Call_Entity, Get_RT_Exception_Entity): New
declarations.

From-SVN: r125371

17 years agodecl.c (gnat_to_gnu_entity): Manually mark the top of the renamed expression of a...
Eric Botcazou [Wed, 6 Jun 2007 10:16:27 +0000 (12:16 +0200)]
decl.c (gnat_to_gnu_entity): Manually mark the top of the renamed expression of a full renaming at toplevel.

2007-04-20  Eric Botcazou  <ebotcazou@adacore.com>
    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
    Olivier Hainque  <hainque@adacore.com>

* decl.c (gnat_to_gnu_entity) <object>: Manually mark the top of the
renamed expression of a full renaming at toplevel.
(gnat_to_gnu_entity, case object): If not defining, do not look inside
the values the constant is initialized to if it is an N_Allocator.
(gnat_to_gnu_entity) <E_Array_Subtype>: Manually mark the top of the
TYPE_SIZE_UNIT of inner types after the stride is elaborated.
(make_aligning_type): Accept an extra ROOM argument for storage to be
made available before the aligned field, and an extra BASE_ALIGN
argument for callers to pass the alignment guaranteed to be honored for
the whole aligning object. Avoid call to finish_record_type, which only
interferes with the sizes we want to set.
(gnat_to_gnu_entity) <E_Variable>: Pass the required extra arguments to
make_aligning_type for super-aligned objects on stack.
(components_to_record): Pass the adjusted size of the type when creating
fields in the qualified union for the variant part.
(gnat_substitute_in_type): Copy TYPE_USER_ALIGN.
(gnat_to_gnu_entity, case E_Signed_Integer_Subtype): Likewise for
packed array type.
(maybe_pad_type): Set TYPE_USER_ALIGN.
(make_aligning_type): Likewise.
ALIGN argument is unsigned int.
(gnat_to_gnu_entity, case E_Function): Back annotate return mechanism.
(gnat_to_gnu_param): Likewise, for parameters.
(gnat_to_gnu_entity) <object>: Always instantiate the renaming object
if it is constant and stems from a function call.
(gnat_to_gnu_entity) <E_Record_Type>: Set packed to -2 if the alignment
of the record is specified.  Adjust accordingly.
(adjust_packed): New static function.
(gnat_to_gnu_field): Use it to adjust the packedness setting.
(components_to_record): Likewise.
(gnat_to_gnu_entity) <object>: Do not test the renamed expression for
side-effects if the object is deemed constant.
(gnat_to_gnu_entity) <E_Array_Type>: Create a name for the fat pointer
type instead of merely finalizing it.  Tidy.
<E_Access_Subprogram_Type>: Retrieve the type from the TYPE_DECL.
<E_Access_Type>: Likewise.
(defer_debug_incomplete_list): Rename to defer_finalize_list.
(defer_debug_level): Delete.
(gnat_to_gnu_entity) <debug_deferred>: Likewise
<E_Array_Type>: Call rest_of_record_type_compilation on the fat pointer
type.
<E_Record_Type>: Do not explicitly defer finalizing the type.
Adjust for write_record_type_debug_info renaming.
<E_Subprogram_Type>: Likewise.
Finalize deferred types right after deferred incomplete types are
expanded.
(rest_of_type_decl_compilation): New global function.
(components_to_record): Rename defer_debug parameter to do_not_finalize.
(components_to_record): Propagate the packedness to the fields of the
qualified union type if there is a variant part.
(gnat_to_gnu_entity) <E_Array_Type>: Use new function
instead of inline code to adjust the XUT field offsets.
(gnat_to_gnu_entity): Adjust for new prototype of finish_record_type.
<E_Record_Subtype>: Do not let finish_record_type compute the sizes
and write the debug info if the type derives from a discriminated one.
(gnat_to_gnu_entity) <E_Array_Type>: Adjust call to create_index_type.
<E_Array_Subtype>: Likewise.
<E_String_Literal_Subtype>: Likewise.
(gnat_to_gnu_entity): Set TYPE_USER_ALIGN on types only if they have
an alignment clause.
(maybe_pad_type): Update ORIG_SIZE to the minimum required to meet ALIGN
before giving warning.
(prepend_one_attribute_to): New function, helper to prepend an attribute
to an attribute list.
(gnat_to_gnu_entity) <E_Procedure>: Use it.
(prepend_attributes): Likewise.
(gnat_to_gnu_entity) <E_Variable>: Use constants of the proper type.
<E_Array_Type>: Declare the padding type for the element type, if any.
<E_Array_Subtype>: Likewise.
(defer_limited_with): New variable.
(Gigi_Equivalent_Type): New function.
(gnat_to_gnu_entity): Use it at start and use result throughout.
(gnat_to_gnu_entity, case E_Access_Type): Rework to use
Gigi_Equivalent_Type, support Limited_With, allow two levels of
indirection, precompute if unconstrained array to simplify logic, and
use defer_limited_with to defer elaboration of some types from limited
with.
(finalize_from_with_types): New function.

From-SVN: r125370

17 years ago2007-04-20 Vasiliy Fofanov <fofanov@adacore.com>
Vasiliy Fofanov [Wed, 6 Jun 2007 10:15:55 +0000 (12:15 +0200)]
2007-04-20  Vasiliy Fofanov  <fofanov@adacore.com>

* s-osprim-vms.ads, s-osprim-vms.adb
(Initialize) New procedure. Noop on VMS, added for interface
commonality.

From-SVN: r125369

17 years agos-osinte-linux.ads (sigset_t): Bump alignment to match more closely its C counterpart.
Arnaud Charlet [Wed, 6 Jun 2007 10:15:44 +0000 (12:15 +0200)]
s-osinte-linux.ads (sigset_t): Bump alignment to match more closely its C counterpart.

2007-04-20  Arnaud Charlet  <charlet@adacore.com>

* s-osinte-linux.ads (sigset_t): Bump alignment to match more closely
its C counterpart.
Remove references to Unchecked_Conversion, and use Ada.xxx instead.
Replace Unchecked_Conversion by Ada.Unchecked_Conversion.

From-SVN: r125368

17 years agos-osinte-aix.adb: map Ada priorities to target priorities appropriately for different...
Matthew Gingell [Wed, 6 Jun 2007 10:15:34 +0000 (12:15 +0200)]
s-osinte-aix.adb: map Ada priorities to target priorities appropriately for different scheduling...

2007-04-20  Matthew Gingell  <gingell@adacore.com>

* s-osinte-aix.adb: map Ada priorities to target
priorities appropriately for different scheduling policies.

From-SVN: r125367

17 years agomlib-tgt-specific.adb, [...]: New files.
Vincent Celier [Wed, 6 Jun 2007 10:15:24 +0000 (12:15 +0200)]
mlib-tgt-specific.adb, [...]: New files.

2007-04-20  Vincent Celier  <celier@adacore.com>

* mlib-tgt-specific.adb, mlib-tgt-specific.ads,
mlib-tgt-vms.adb, mlib-tgt-vms.ads: New files.

* mlib-tgt.adb, mlib-tgt.ads, mlib-tgt-darwin.adb,
mlib-tgt-vxworks.adb, mlib-tgt-mingw.adb, mlib-tgt-lynxos.adb,
mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb,
mlib-tgt-vms-ia64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-tru64.adb: Make a common body for package
MLib.Tgt, containing the default versions
of the exported subprograms. For each platforms, create a specific
version of the body of new child package MLib.Tgt.Specific that contains
only the bodies of subprograms that are different from the default.
(Archive_Builder_Append_Options): New function

From-SVN: r125366

17 years agosystem-vxworks-sparcv9.ads, [...]: Document mapping between Ada and OS priorities.
Arnaud Charlet [Wed, 6 Jun 2007 10:15:13 +0000 (12:15 +0200)]
system-vxworks-sparcv9.ads, [...]: Document mapping between Ada and OS priorities.

2007-04-20  Arnaud Charlet  <charlet@adacore.com>

* system-vxworks-sparcv9.ads, system-solaris-x86.ads,
system-irix-o32.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads,
system-lynxos-x86.ads, system-vxworks-m68k.ads, system-linux-x86.ads,
system-vxworks-mips.ads, system-vxworks-alpha.ads,
system-vxworks-x86.ads, system-linux-ppc.ads, system-mingw.ads,
system-vms-zcx.ads, system-darwin-ppc.ads, system-vxworks-ppc.ads,
system-interix.ads, system-linux-hppa.ads, system-tru64.ads,
system-hpux.ads, system-irix-n32.ads, system-solaris-sparc.ads,
system-solaris-sparcv9.ads, system-vms.ads, system.ads,
system-vms_64.ads, system-hpux-ia64.ads, system-linux-x86_64.ads,
system-linux-ia64.ads: Document mapping between Ada and OS priorities.
This patch changes the largest non-binary modulus from 2**31-1 to
2**32-1.
(Compiler_System_Version): Removed, no longer used.
Clean up system files by removing flags only used on a single target.
Also remove obsolete flags, only used during bootstrap from system.ads
(Address): Add a pragma Preelaborable_Initialization.

* system-aix.ads:  Ditto.
(GCC_ZCX_Support): Set to true.
Update priority range on AIX and map Ada priorities to target
priorities appropriately for different scheduling policies.

* ttypes.ads: set largest non-binary modulus from 2**31-1 to 2**32-1

From-SVN: r125365

17 years agos-taprop-vms.adb, [...] (Timed_Delay, [...]): Register the base time when entering...
Arnaud Charlet [Wed, 6 Jun 2007 10:14:59 +0000 (12:14 +0200)]
s-taprop-vms.adb, [...] (Timed_Delay, [...]): Register the base time when entering this routine to detect a backward clock...

2007-04-20  Arnaud Charlet  <charlet@adacore.com>

* s-taprop-vms.adb, s-taprop-hpux-dce.adb, s-taprop-vxworks.adb,
s-osprim-posix.adb, s-taprop-posix.adb, s-osprim-vxworks.adb,
s-taprop-solaris.adb, s-osprim-solaris.adb, s-taprop-dummy.adb,
s-osprim-unix.adb, s-osinte-freebsd.adb, s-osinte-freebsd.ads,
s-osinte-lynxos.adb, s-osinte-lynxos.ads, s-taprop-tru64.adb,
s-taprop-lynxos.adb, s-taprop-irix.adb, s-osinte-tru64.adb,
s-osinte-tru64.ads, s-taprop-linux.adb, s-parame.ads,
s-parame-vms-alpha.ads, s-parame-vms-ia64.ads, s-parame-hpux.ads,
s-parame-vms-restrict.ads, s-parame-ae653.ads, s-parame-vxworks.ads,
s-taprop-mingw.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos-3.adb,
        s-osprim-mingw.adb (Timed_Delay, Timed_Sleep): Register the base
time when entering this routine to detect a backward clock setting
(manual setting or DST adjustment), to avoid waiting for a longer delay
than needed.
(Time_Duration, To_Timeval, struct_timeval): Removed when not relevant.
Remove handling of deferred priority change, and replace by setting the
task priority directly, as required by AI-188.
Update comments.
(Max_Task_Image_Length): New constant.
Replace Warnings (Off) by Unreferenced pragma, cleaner.
(Dynamic_Priority_Support): Removed, no longer needed.
(Poll_Base_Priority_Change): Ditto.
(Set_Ceiling): Add this procedure to change the ceiling priority
associated to a lock. This is a dummy implementation because dynamic
priority ceilings are not supported by the underlying system.

* a-dynpri.adb (Set_Priority): Take into account case where Target is
accepting a RV with its priority boosted.
Remove handling of deferred priority change, and replace by setting the
task priority directly, as required by AI-188.

* s-taenca.adb (Try_To_Cancel_Entry_Call): Remove special case for
Succeeded = True.
Remove handling of deferred priority change, and replace by setting the
task priority directly, as required by AI-188.
(Wait_For_Completion, Wait_For_Call, Timed_Selective_Wait): Change state
of Self_Id earlier.

* s-tasini.ads, s-tasini.adb (Wakeup_Entry_Caller): Relax assertion.
(Poll_Base_Priority_Change): Removed.
Code clean up: use SSL.Current_Target_Exception.

* s-tasren.adb (Task_Count): Call Yield to let a chance to other tasks
to run as this is a potentially dispatching point.
(Call_Synchronous): Use Local_Defer_Abort.
(Callable): Relax assertion.
(Selective_Wait): Relax assertion in case abort is not allowed.
Remove handling of deferred priority change, and replace by setting the
task priority directly, as required by AI-188.

* s-tasuti.adb (Make_Passive): Adjust assertions.
Remove handling of deferred priority change, and replace by setting the
task priority directly, as required by AI-188.

From-SVN: r125364

17 years ago2007-04-20 Hristian Kirtchev <kirtchev@adacore.com>
Hristian Kirtchev [Wed, 6 Jun 2007 10:14:46 +0000 (12:14 +0200)]
2007-04-20  Hristian Kirtchev  <kirtchev@adacore.com>

* a-calend.ads, a-calend.adb, a-calend-vms.ads, a-calend-vms.adb ("-"
(Time, Time)): Use To_Relative_Time rather than manual calculation to
express the bounds of Duration as Time. Raise Time_Error when the
result is greater or equal to the higher bound of Duration (on the
margin case).
("+" (Time, Duration)): Reorder code. Remove the declaration of constant
Ada_High_And_Leaps.
("-" (Time, Duration)): Reorder code. Remove the declaration of constant
Ada_High_And_Leaps.
("-" (Time, Time)): Reorder code.
(All_Leap_Seconds): Removed.
(Arithmetic_Operations.Add): Remove sign related kludge.
(Arithmetic_Operations.Difference): Control the leaps seconds processing
with flag Leap_Support.
(Arithmetic_Operations.Subtract): Remove sign related kludge.
(Check_Within_Time_Bounds): New procedure.
(Clock): Control the leap seconds processing with flag Leap_Support.
(Cumulative_Leap_Seconds): Assert that the target supports leap seconds.
(Formatting_Operations.Split): Control the leap seconds processing with
flag Leap_Support.
(Formatting_Operations.Time_Of): Control the leaps seconds processing
with flag Leap_Support. Adjust the year, month and day (if applicable)
when the value of day seconds designates a new day.
(Split): Use parameter associations for better readability. Integrate
flag Is_Ada_05.
(Time_Of): Use parameter associations for better readability. Integrate
flag Is_Ada_05.

* a-calfor.adb (Split): Use parameter associations for better
readability. Integrate flag Is_Ada_05.
(Time_Of): Remove flag Leap_Checks. Use parameter associations for
better readability. Integrate flag Is_Ada_05.

From-SVN: r125363

17 years agoa-intnam-aix.ads: Adjust comment to account for SIGADAABORT change (SIGEMT is now...
Thomas Quinot [Wed, 6 Jun 2007 10:14:35 +0000 (12:14 +0200)]
a-intnam-aix.ads: Adjust comment to account for SIGADAABORT change (SIGEMT is now used instead of...

2007-04-20  Thomas Quinot  <quinot@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>

* a-intnam-aix.ads:
Adjust comment to account for SIGADAABORT change (SIGEMT is now used
instead of SIGTERM on AIX).

* s-osinte-aix.ads (Linker_Options): Use -pthread instead of -lpthreads.
(Time_Slice_Supported): Set to True.
use SIGEMT instead of SIGTERM as SIGADAABORT.

From-SVN: r125362

17 years agog-expect-vms.adb:
Bob Duff [Wed, 6 Jun 2007 10:14:25 +0000 (12:14 +0200)]
g-expect-vms.adb:

2007-04-20  Bob Duff  <duff@adacore.com>

* g-expect-vms.adb:
(Send_Signal, Close): Raise Invalid_Process if the process id is invalid.
* g-expect.ads, g-expect.adb (Send): Avoid useless copy of the string.
(Send_Signal, Close): Raise Invalid_Process if the process id is
invalid.
(Pattern_Matcher_Access): Is now a general access type to be able to
use aliased string.

From-SVN: r125361

17 years agog-string.adb, [...]: Replace GNAT.xxx by System.xxx when appropriate.
Robert Dewar [Wed, 6 Jun 2007 10:14:14 +0000 (12:14 +0200)]
g-string.adb, [...]: Replace GNAT.xxx by System.xxx when appropriate.

2007-04-20  Robert Dewar  <dewar@adacore.com>

* g-string.adb, s-proinf-irix-athread.adb, s-gloloc-mingw.adb,
s-tfsetr-default.adb, gnatfind.adb, gnatxref.adb, gprep.adb,
g-regexp.adb, g-regexp.ads, g-regpat.ads, g-tasloc.adb, g-tasloc.ads,
output.adb, switch-m.ads, tree_in.ads, tree_io.ads, indepsw.ads,
g-utf_32.adb, g-utf_32.ads, a-wichun.adb, a-wichun.ads, a-zchuni.adb,
a-zchuni.ads: Replace GNAT.xxx by System.xxx when appropriate.

* s-utf_32.adb, s-utf_32.ads, s-os_lib.adb, s-os_lib.ads, s-regexp.adb,
s-regexp.ads, s-regpat.adb, s-regpat.ads, s-string.adb, s-string.ads,
s-tasloc.adb, s-tasloc.ads: New files.

From-SVN: r125360

17 years agoa-taster.adb, [...]: Replace Unchecked_* by Ada.Unchecked_*
Robert Dewar [Wed, 6 Jun 2007 10:13:44 +0000 (12:13 +0200)]
a-taster.adb, [...]: Replace Unchecked_* by Ada.Unchecked_*

2007-04-20  Robert Dewar  <dewar@adacore.com>

* a-taster.adb, s-osinte-hpux.ads, s-osinte-solaris-posix.ads,
s-osinte-irix.ads, s-interr-sigaction.adb, s-mastop-irix.adb,
s-osinte-hpux-dce.ads, s-osinte-interix.ads, s-osinte-solaris.ads,
s-taspri-solaris.ads, s-inmaop-vms.adb, s-interr-vms.adb,
s-mastop-vms.adb, s-osinte-vms.ads, s-tpopde-vms.adb,
s-osinte-mingw.ads, s-interr-vxworks.adb, i-cstrea-vms.adb,
a-diocst.adb, a-direio.adb, a-interr.adb, a-sequio.adb, a-siocst.adb,
a-ssicst.adb, a-storio.adb, a-ststio.adb, a-stwima.adb, a-tasatt.adb,
a-taside.adb, a-tiocst.adb, a-witeio.adb, a-wtcstr.adb, g-crc32.adb,
g-dirope.adb, g-dyntab.adb, g-memdum.adb, g-regexp.adb, g-spipat.adb,
g-spitbo.adb, g-string.adb, g-string.ads, g-table.adb, g-thread.adb,
i-cobol.adb, i-cpoint.adb, i-cstrea.adb, i-cstrin.adb, i-pacdec.adb,
s-addima.adb, s-arit64.adb, s-auxdec.adb, s-auxdec.ads,
s-auxdec-vms_64.ads, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
s-direio.adb, s-fileio.adb, s-finimp.ads, s-geveop.adb, s-imgenu.adb,
s-pack03.adb, s-pack05.adb, s-pack06.adb, s-pack07.adb, s-pack09.adb,
s-pack10.adb, s-pack11.adb, s-pack12.adb, s-pack13.adb, s-pack14.adb,
  s-pack15.adb, s-pack17.adb, s-pack18.adb, s-pack19.adb, s-pack20.adb,
s-pack21.adb, s-pack22.adb, s-pack23.adb, s-pack24.adb, s-pack25.adb,
s-pack26.adb, s-pack27.adb, s-pack28.adb, s-pack29.adb, s-pack30.adb,
s-pack31.adb, s-pack33.adb, s-pack34.adb, s-pack35.adb, s-pack36.adb,
s-pack37.adb, s-pack38.adb, s-pack39.adb, s-pack40.adb, s-pack41.adb,
s-pack42.adb, s-pack43.adb, s-pack44.adb, s-pack45.adb, s-pack46.adb,
s-pack47.adb, s-pack48.adb, s-pack49.adb, s-pack50.adb, s-pack51.adb,
s-pack52.adb, s-pack53.adb, s-pack54.adb, s-pack55.adb, s-pack56.adb,
s-pack57.adb, s-pack58.adb, s-pack59.adb, s-pack60.adb, s-pack61.adb,
s-pack62.adb, s-pack63.adb, s-pooloc.adb, s-poosiz.adb, s-scaval.adb,
s-sequio.adb, s-shasto.adb, s-stalib.ads, s-stratt.adb, s-strcom.adb,
s-taasde.adb, s-tasdeb.adb, s-tasuti.ads, s-tataat.ads, s-tpoben.ads,
s-valenu.adb, s-widenu.adb, s-wwdenu.adb, s-addope.adb, a-stzmap.adb,
a-ztcstr.adb, a-ztexio.adb, s-osinte-linux-hppa.ads: Replace
Unchecked_* by Ada.Unchecked_*

From-SVN: r125359

17 years agog-soccon-freebsd.ads, [...]: Add new constant Thread_Blocking_IO...
Thomas Quinot [Wed, 6 Jun 2007 10:13:25 +0000 (12:13 +0200)]
g-soccon-freebsd.ads, [...]:  Add new constant Thread_Blocking_IO...

2007-04-20  Thomas Quinot  <quinot@adacore.com>
    Bob Duff  <duff@adacore.com>

        * g-soccon-freebsd.ads, g-soccon-vxworks.ads:,
g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads,
g-soccon-solaris.ads, g-soccon-vms.ads, g-soccon-tru64.ads:  Add new
constant Thread_Blocking_IO, always True by default, set False
on a per-runtime basis.
(Need_Netdb_Buffer): New constant.

* g-stheme.adb, g-sttsne.ads, g-sttsne-locking.ads,
g-sttsne-locking.adb, g-sttsne-vxworks.ads, g-sttsne-vxworks.adb: New
files.

* g-socthi-vxworks.ads, g-socthi-vxworks.adb,
g-socthi-vms.ads, g-socthi-vms.adb (Safe_Gethostbyname,
Safe_Gethostbyaddr, Safe_Getservbyname, Safe_Getservbyport): Use new
child package Task_Safe_NetDB
(Host_Error_Messages): Add stub body.
(GNAT.Sockets.Thin.Signalling_Fds): New procedure Close.

* g-soccon-mingw.ads: Add Windows-specific constants.
(Need_Netdb_Buffer): New constant.
(GNAT.Sockets.Thin.C_Inet_Addr, Windows version): Remove useless Ada
wrapper and import inet_addr(3) from the standard sockets library
directly instead.
(In_Addr): Add alignment clause.
(GNAT.Sockets.Thin.Signalling_Fds): New procedure Close.

From-SVN: r125358

17 years agoi386.c (enum pta_flags): Move out of struct scope...
Thomas Neumann [Wed, 6 Jun 2007 08:02:56 +0000 (08:02 +0000)]
i386.c (enum pta_flags): Move out of struct scope...

* config/i386/i386.c (enum pta_flags): Move out of struct scope...
(struct pta): ...from here. Change flags to unsigned to avoid excessive
casting (as it is used as a bit mask).
(override_options): Add casts according to the coding convenventions.
(x86_64_elf_unique_section): Likewise.
(examine_argument): Avoid using C++ keywords as variable names.
(construct_container): Likewise.
(legitimize_pic_address): Likewise.
(get_dllimport_decl): Cast according to the coding conventions. Use
type safe memory macros.
(legitimize_address): Cast according to the coding conventions.
(emit_i387_cw_initialization): Corrected the type of slot to enum
ix86_stack_slot.
(ix86_init_machine_status): Use type safe memory macros.
(bdesc_pcmpestr): Use UNKNOWN instead of integer 0.
(bdesc_pcmpistr): Likewise.
(bdesc_crc32): Likewise.
(bdesc_sse_3arg): Likewise.
(bdesc_2arg): Likewise.
(bdesc_1arg): Likewise.
(ix86_expand_sse_pcmpestr): Cast according to the coding conventions.
(ix86_expand_sse_pcmpistr): Likewise.
(ix86_expand_vec_set_builtin): Use EXPAND_NORMAL instead of integer 0.
(ix86_builtin_vectorized_function): Change the type of fn to unsigned
int to match the langhook definition.
(ix86_builtin_conversion): Change the type of code to unsigned init to
match the langhook definition.
(ix86_preferred_reload_class): Avoid using C++ keywords as variable
names.
(ix86_preferred_output_reload_class): Likewise.
(ix86_cannot_change_mode_class): Likewise.
(ix86_memory_move_cost): Likewise.
(ix86_rtx_costs): Cast the outer_code parameter to enum rtx_code to
avoid excessive casting later on.
(x86_output_mi_thunk): Avoid using C++ keywords as variable names.

From-SVN: r125357

17 years agosse.md (sse4_2_pcmpestr_cconly): Prefer pcmpestrm as flags setting insn.
Uros Bizjak [Wed, 6 Jun 2007 06:53:29 +0000 (08:53 +0200)]
sse.md (sse4_2_pcmpestr_cconly): Prefer pcmpestrm as flags setting insn.

* config/i386/sse.md (sse4_2_pcmpestr_cconly): Prefer pcmpestrm
as flags setting insn.
(sse4_2_pcmpistr_cconly): Prefer pcmpistrm as flags setting insn.

* config/i386/i386.md (UNSPEC_ROUNDP, UNSPEC_ROUNDS): Remove.
(UNSPEC_ROUND): New.
("sse4_1_round<mode>2"): New insn pattern.
("rint<mode>2"): Expand using "sse4_1_round<mode>2" pattern for
SSE4.1 targets.
("floor<mode>2"): Rename from floordf2 and floorsf2.  Macroize
expander using SSEMODEF mode macro.  Expand using
"sse4_1_round<mode>2" pattern for SSE4.1 targets.
("ceil<mode>2"): Rename from ceildf2 and ceilsf2.  Macroize
expander using SSEMODEF mode macro.  Expand using
"sse4_1_round<mode>2" pattern for SSE4.1 targets.
("btrunc<mode>2"): Rename from btruncdf2 and btruncsf2.  Macroize
expander using SSEMODEF mode macro.  Expand using
"sse4_1_round<mode>2" pattern for SSE4.1 targets.
* config/i386/sse.md ("sse4_1_roundpd", "sse4_1_roundps"): Use
UNSPEC_ROUND instead of UNSPEC_ROUNDP.
("sse4_1_roundsd", "sse4_1_roundss"): Use UNSPEC_ROUND instead of
UNSPEC_ROUNDS.

From-SVN: r125356

17 years agolambda.h (build_linear_expr): New.
Jan Sjodin [Wed, 6 Jun 2007 06:08:58 +0000 (06:08 +0000)]
lambda.h (build_linear_expr): New.

* lambda.h (build_linear_expr): New.
* lambda-code.c (lbv_to_gcc_expression, lle_to_gcc_expression):
Use build_linear_expr, call fold and force_gimple_operand.
(lambda_loopnest_to_gcc_loopnest): Check that there is
something to insert.
* testsuite/gcc.dg/tree-ssa/ltrans-6.c: New.

Co-Authored-By: Sebastian Pop <sebpop@gmail.com>
From-SVN: r125355

17 years agore PR fortran/18923 (segfault after subroutine name confusion)
Jerry DeLisle [Wed, 6 Jun 2007 01:21:29 +0000 (01:21 +0000)]
re PR fortran/18923 (segfault after subroutine name confusion)

2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR testsuite/18923
* gfortran.dg/invalid_contains_1.f90: New test.
* gfortran.dg/invalid_contains_2.f90: New test.

From-SVN: r125353

17 years agore PR testsuite/32057 (Random failure on gfortran.dg/secnds.f)
Jerry DeLisle [Wed, 6 Jun 2007 00:54:30 +0000 (00:54 +0000)]
re PR testsuite/32057 (Random failure on gfortran.dg/secnds.f)

2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR testsuite/32057
* gfortran.dg/secnds.f: Update test to avoid roundoff errors and
midnight issues.

From-SVN: r125352

17 years agoDaily bump.
GCC Administrator [Wed, 6 Jun 2007 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r125350

17 years agore PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
Manuel López-Ibáñez [Tue, 5 Jun 2007 22:30:24 +0000 (22:30 +0000)]
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)

2007-06-05  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR testsuite/25241
testsuite/
* gcc.dg/invalid-call-1.c: Use dg-warning to match the warning and
dg-message to match de note.
* gcc.dg/pr26570.c: Use dg-message for a note.
* gcc.dg/pr29254.c: Use dg-message for generic output and use
dg-error instead of dg-warning because of -Werror.
* gcc.dg/glibc-uclibc-1.c: Use dg-message for output that is
neither an error, nor a warning.
* gcc.dg/glibc-uclibc-2.c: Likewise
* gcc.dg/cpp/19940712-1.c: Likewise.

From-SVN: r125347

17 years agore PR preprocessor/23479 (Implement binary constants with a "0b" prefix)
Joerg Wunsch [Tue, 5 Jun 2007 22:25:27 +0000 (22:25 +0000)]
re PR preprocessor/23479 (Implement binary constants with a "0b" prefix)

2007-06-05  Joerg Wunsch  <j.gnu@uriah.heep.sax.de>

PR preprocessor/23479
gcc/
* doc/extend.texi: Document the 0b-prefixed binary integer
constant extension.

libcpp/
* expr.c (cpp_classify_number): Implement 0b-prefixed binary
integer constants.
(append_digit): Likewise.
* include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed
binary integer constants.

testsuite/
* testsuite/gcc.dg/binary-constants-1.c: Add test suites for
the 0b-prefixed binary integer constants.
* testsuite/gcc.dg/binary-constants-2.c: Ditto.
* testsuite/gcc.dg/binary-constants-3.c: Ditto.
* testsuite/gcc.dg/binary-constants-4.c: Ditto.

From-SVN: r125346

17 years agore PR tree-optimization/32215 (ICE in supportable_narrowing_operation, at tree-vector...
Uros Bizjak [Tue, 5 Jun 2007 20:23:58 +0000 (22:23 +0200)]
re PR tree-optimization/32215 (ICE in supportable_narrowing_operation, at tree-vectorizer.c:1907)

        PR tree-optimization/32215
        * tree-vectorizer.c (supportable_widening_operation): Return false
        for unsupported FIX_TRUNC_EXPR tree code.
        (supportable_narrowing_operation): Ditto for FLOAT_EXPR tree code.

From-SVN: r125343

17 years agore PR fortran/18923 (segfault after subroutine name confusion)
Jerry DeLisle [Tue, 5 Jun 2007 20:23:44 +0000 (20:23 +0000)]
re PR fortran/18923 (segfault after subroutine name confusion)

2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/18923
* parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
for ST_FUNCTION since it is called in reject_statement.
(parse_contained): If error, loop back after reject_statement and try
again.  Free the namespace if an error occured.

From-SVN: r125342

17 years agors6000.h (FIXED_SCRATCH): Use r0 as a scratch register on SPE targets.
Nathan Froyd [Tue, 5 Jun 2007 19:46:23 +0000 (19:46 +0000)]
rs6000.h (FIXED_SCRATCH): Use r0 as a scratch register on SPE targets.

* config/rs6000/rs6000.h (FIXED_SCRATCH): Use r0 as a scratch
register on SPE targets.  Change documentation to reflect
reality.
* config/rs6000/rs6000.c (rs6000_conditional_register_usage):
Change FIXED_SCRATCH to 14 and document why we're keeping r14
out of the register allocation pool.
(rs6000_reg_live_or_pic_offset_p): New function.
(rs6000_emit_prologue): Move the actual saving of LR up to free
r0 for holding r11.  Split saving of SPE 64-bit registers into
its own case.  Ensure that offsets will always be in-range for
'evstdd' by using r11 as a scratch register to point at the start
of the SPE save area.  Save r11 if necessary, as it is the static
chain register.
(rs6000_emit_epilogue): Split restoring of SPE 64-bit registers
into its own case.  Ensure that offsets will always be in-range
for 'evldd' by using r11 as a scratch register to point at the
start of the SPE save area.  Also adjust r11 when restoring
the stack pointer to compensate for pre-loading r11.

From-SVN: r125340

17 years agodecl.c (grokdeclarator): Readability change.
Simon Baldwin [Tue, 5 Jun 2007 18:29:42 +0000 (18:29 +0000)]
decl.c (grokdeclarator): Readability change.

        * decl.c (grokdeclarator): Readability change.  Moved case labels into
direct switch statement scope.

From-SVN: r125339

17 years agotypo
Thomas Neumann [Tue, 5 Jun 2007 16:16:23 +0000 (16:16 +0000)]
typo

From-SVN: r125338

17 years agocfg.c (init_flow): Use type safe memory macros.
Thomas Neumann [Tue, 5 Jun 2007 15:41:04 +0000 (15:41 +0000)]
cfg.c (init_flow): Use type safe memory macros.

* cfg.c (init_flow): Use type safe memory macros.
(alloc_block): Likewise.
(unchecked_make_edge): Likewise.
(dump_flow_info): Avoid using C++ keywords as variable names.
(copy_original_table_clear): Cast according to the coding conventions.
(copy_original_table_set): Likewise.
* cfgexpand (label_rtx_for_bb): Likewise.
(expand_gimüle_basic_block): Likewise.
* cfghooks.c (dump_bb): Likewise.
(lv_adjust_loop_header_phi): Avoid using C++ keywords as variable names.
(lv_add_condition_to_bb): Likewise.
* cfglayout (relink_block_chain): Cast according to the coding
conventions.
(fixup_reorder_chain): Likewise.
(fixup_fallthru_exit_predecessor): Likewise.
* cfgloop.c (glb_enum_p): Likewise.
(get_exit_description): Likewise.
(dump_recorded_exit): Likewise.
* cfgloop.h (enum loop_estimation): Move out of struct scope...
(struct loop): ... from here.
* cfgloopmanip (rpe_enum_p): Cast according to the coding conventions.
* cfgrtl.c (rtl_create_basic_block): Likewise.
(rtl_split_block): Likewise.
(rtl_dump_bb): Likewise.
(cfg_layout_split_block): Likewise.
(init_rtl_bb_info): Use typesafe memory macros.

* graphds.h (struct graph_edge): Renamed edge to graph_edge.
* graphds.h: Updated all usages of edge to graph_edge.
* graphds.c: Likewise.
* cfgloopanal.c: Likewise.

From-SVN: r125336

17 years agotree-vrp.c (compare_values_warnv): Check TREE_NO_WARNING on a PLUS_EXPR or MINUS_EXPR...
Ian Lance Taylor [Tue, 5 Jun 2007 13:18:22 +0000 (13:18 +0000)]
tree-vrp.c (compare_values_warnv): Check TREE_NO_WARNING on a PLUS_EXPR or MINUS_EXPR node before setting...

./: * tree-vrp.c (compare_values_warnv): Check TREE_NO_WARNING on a
PLUS_EXPR or MINUS_EXPR node before setting *strict_overflow_p.
(extract_range_from_assert): Set TREE_NO_WARNING when creating an
expression.
(test_for_singularity): Likewise.
testsuite/:
* gcc.dg/Wstrict-overflow-19.c: New test.

From-SVN: r125334

17 years agoconstraints.md ("Y2"): Replaced by ...
H.J. Lu [Tue, 5 Jun 2007 12:54:41 +0000 (12:54 +0000)]
constraints.md ("Y2"): Replaced by ...

2007-06-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/constraints.md ("Y2"): Replaced by ...
("Yt"): This.
* config/i386/i386.md: Likewise.
* config/i386/mmx.md: Likewise.
* config/i386/sse.md: Likewise.

From-SVN: r125333

17 years agoconstraints.md ("z"): Replaced by ...
H.J. Lu [Tue, 5 Jun 2007 12:53:27 +0000 (05:53 -0700)]
constraints.md ("z"): Replaced by ...

2007-06-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/constraints.md ("z"): Replaced by ...
("Y0"): This.
* config/i386/sse.md (sse4_1_blendvpd): Likewise.
(sse4_1_blendvps): Likewise.
(sse4_1_pblendvb): Likewise.
(sse4_2_pcmpestr): Likewise.
(sse4_2_pcmpestrm): Likewise.
(sse4_2_pcmpestr_cconly): Likewise.
(sse4_2_pcmpistr): Likewise.
(sse4_2_pcmpistrm): Likewise.
(sse4_2_pcmpistr_cconly): Likewise.

Move testsuite ChangeLog to testsuite/ChangeLog.

From-SVN: r125332

17 years agomatrix-reorg.c (transform_access_sites): Fix computation.
Razya Ladelsky [Tue, 5 Jun 2007 10:48:33 +0000 (10:48 +0000)]
matrix-reorg.c (transform_access_sites): Fix computation.

2007-06-05  Razya Ladelsky  <razya@il.ibm.com>

        * matrix-reorg.c (transform_access_sites): Fix computation.
        (transform_allocation_sites): Same.
        * testsuite/gcc.dg/matrix/matrix-6.c: Remove conversion.

From-SVN: r125331

17 years agoi386.c (override_options): Use TARGET_SUBTARGET32_ISA_DEFAULT to select default ix86_...
Uros Bizjak [Tue, 5 Jun 2007 06:44:17 +0000 (08:44 +0200)]
i386.c (override_options): Use TARGET_SUBTARGET32_ISA_DEFAULT to select default ix86_isa_flags.

* config/i386/i386.c (override_options): Use
TARGET_SUBTARGET32_ISA_DEFAULT to select default ix86_isa_flags.

From-SVN: r125328

17 years agomd (reg_not_xmm0_operand): New predicate.
Uros Bizjak [Tue, 5 Jun 2007 05:35:39 +0000 (07:35 +0200)]
md (reg_not_xmm0_operand): New predicate.

* config/i386/predicates/md (reg_not_xmm0_operand): New predicate.
(nonimm_not_xmm0_operand): Ditto.
* config/i386/sse.md ("sse4_1_blendvpd"): Use "reg_not_xmm0_operand"
as operand[0] and operand[1] predicate.  Use "nonimm_not_xmm0_operand"
as operand[2] predicate.  Require "z" class XMM register for
operand[3].  Adjust asm template.
("sse4_1_blendvpd"): Ditto.
("sse4_1_pblendvb"): Ditto.
  * config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Do not
force op2 into xmm0 register for variable blend instructions.

From-SVN: r125327

17 years agoDaily bump.
GCC Administrator [Tue, 5 Jun 2007 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r125325

17 years agoc-tree.h (start_enum): Update.
Tom Tromey [Mon, 4 Jun 2007 23:19:19 +0000 (23:19 +0000)]
c-tree.h (start_enum): Update.

* c-tree.h (start_enum): Update.
(build_enumerator): Likewise.
* c-decl.c (enum_next_value): Removed.
(enum_overflow): Likewise.
(start_enum): Add c_enum_contents argument.  Don't use globals.
(build_enumerator): Likewise.
* c-tree.h (struct c_enum_contents): New struct.

From-SVN: r125322

17 years ago* c-common.c (c_common_get_alias_set): Fix indentation.
Tom Tromey [Mon, 4 Jun 2007 22:13:40 +0000 (22:13 +0000)]
* c-common.c (c_common_get_alias_set): Fix indentation.

From-SVN: r125321

17 years agotree-vrp.c (adjust_range_with_scev): When loop is not expected to overflow, reduce...
Ian Lance Taylor [Mon, 4 Jun 2007 21:56:10 +0000 (21:56 +0000)]
tree-vrp.c (adjust_range_with_scev): When loop is not expected to overflow, reduce overflow infinity to regular infinity.

./: * tree-vrp.c (adjust_range_with_scev): When loop is not expected
to overflow, reduce overflow infinity to regular infinity.
(vrp_var_may_overflow): New static function.
(vrp_visit_phi_node): Check vrp_var_may_overflow.
testsuite/:
* gcc.dg/Wstrict-overflow-18.c: New test.

From-SVN: r125319

17 years ago* stor-layout.c (layout_type): Remove duplicate code.
Kazu Hirata [Mon, 4 Jun 2007 21:29:01 +0000 (21:29 +0000)]
* stor-layout.c (layout_type): Remove duplicate code.

From-SVN: r125318

17 years agore PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
Manuel López-Ibáñez [Mon, 4 Jun 2007 21:11:51 +0000 (21:11 +0000)]
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)

2007-06-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR testsuite/25241
testsuite/
* gcc.dg/cpp/mi1.c: Use dg-message for output that is not an error.
* gcc.dg/cpp/mi5.c: Likewise.
* gcc.dg/cpp/mi7.c: Likewise.

From-SVN: r125317

17 years agotrans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust to operate on a stack...
Lee Millward [Mon, 4 Jun 2007 20:59:49 +0000 (20:59 +0000)]
trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust to operate on a stack allocated array for the intrinsic arguments...

2007-06-04 Lee Millward <lee.millward@codesourcery.com>

* trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
to operate on a stack allocated array for the intrinsic arguments
instead of creating a TREE_LIST. Add two new parameters for the
array and the number of elements. Update all callers to allocate
an array of the correct length to pass in. Update comment.
(gfc_intrinsic_argument_list_length): New function.
(gfc_conv_intrinsic_mnimax): Call it.
(gfc_conv_intrinsic_merge): Likewise.
(gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
constructors.
(gfc_conv_intrinsic_cmplx): Likewise.
(gfc_conv_intrinsic_ctime): Likewise.
(gfc_covn_intrinsic_fdate): Likewise.
(gfc_conv_intrinsic_ttynam): Likewise.
(gfc_conv_intrinsic_ishftc): Likewise.
(gfc_conv_intrinsic_index): Likewise.
(gfc_conv_intrinsic_scan): Likewise.
(gfc_conv_intrinsic_verify): Likewise.
(gfc_conv_intrinsic_trim): Likewise.
(gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
(gfc_conv_intrinsic_exponent): Likewise.
(gfc_conv_intrinsic_bound): Likewise.
(gfc_conv_intrinsic_abs): Likewise.
(gfc_conv_intrinsic_mod): Likewise.
(gfc_conv_intrinsic_sign): Likewise.
(gfc_conv_intrinsic_len): Likewise.
(gfc_conv_intrinsic_adjust): Likewise.
(gfc_conv_intrinsic_si_kind): Likewise.

From-SVN: r125316

17 years agocall.c (convert_like_real): Remove pointless code.
Paolo Carlini [Mon, 4 Jun 2007 20:40:43 +0000 (20:40 +0000)]
call.c (convert_like_real): Remove pointless code.

2007-06-04  Paolo Carlini  <pcarlini@suse.de>

* call.c (convert_like_real): Remove pointless code.

From-SVN: r125315

17 years agore PR c/32191 (ICE with complex __float128)
Uros Bizjak [Mon, 4 Jun 2007 20:07:37 +0000 (22:07 +0200)]
re PR c/32191 (ICE with complex __float128)

        PR c/32191
        * gcc/c-common.c (c_define_builtins): Call targetm.init_builtins ()
        before build_common_builtin_nodes ().

testsuite/ChangeLog:

        PR c/32191
        * gcc.dg/pr32191.c: New test.

From-SVN: r125314

17 years ago* trans-array.c (gfc_conv_array_parameter): Initialize tmp.
Steve Ellcey [Mon, 4 Jun 2007 16:00:00 +0000 (16:00 +0000)]
* trans-array.c (gfc_conv_array_parameter): Initialize tmp.

From-SVN: r125313

17 years agore PR target/31733 (ICE in rtl_verify_flow_info, at cfgrtl.c:2050: {return_internal...
Steve Ellcey [Mon, 4 Jun 2007 15:58:12 +0000 (15:58 +0000)]
re PR target/31733 (ICE in rtl_verify_flow_info, at cfgrtl.c:2050: {return_internal} (nil))

PR target/31733
* cfgrtl.c (rtl_verify_flow_info): Skip notes when looking for barrier.

From-SVN: r125312

17 years agoacinclude.m4: Accept GCJ and JIKES.
Matthias Klose [Mon, 4 Jun 2007 10:05:52 +0000 (10:05 +0000)]
acinclude.m4: Accept GCJ and JIKES.

2007-06-04  Matthias Klose  <doko@ubuntu.com>

        * m4/acinclude.m4: Accept GCJ and JIKES.
        * configure: Regenerate.

From-SVN: r125310

17 years agomh-ppc-aix: Add default ADAFLAGS to BOOT_ADAFLAGS.
Olivier Hainque [Mon, 4 Jun 2007 07:48:28 +0000 (07:48 +0000)]
mh-ppc-aix: Add default ADAFLAGS to BOOT_ADAFLAGS.

* mh-ppc-aix: Add default ADAFLAGS to BOOT_ADAFLAGS.

From-SVN: r125309

17 years agotree-predcom.c (replace_ref_with, [...]): Call build_gimple_modify_stmt instead of...
Jan Hubicka [Mon, 4 Jun 2007 07:20:01 +0000 (09:20 +0200)]
tree-predcom.c (replace_ref_with, [...]): Call build_gimple_modify_stmt instead of _stat version.

* tree-predcom.c (replace_ref_with, initialize_root_vars_lm,
reassociate_to_the_same_stmt): Call build_gimple_modify_stmt
instead of _stat version.

From-SVN: r125308

17 years agoDaily bump.
GCC Administrator [Mon, 4 Jun 2007 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r125305

17 years agolibjava/classpath/ChangeLog.gcj:
Matthias Klose [Sun, 3 Jun 2007 23:18:43 +0000 (23:18 +0000)]
libjava/classpath/ChangeLog.gcj:

2007-05-31  Matthias Klose  <doko@ubuntu.com>

        * javax/management/NotificationBroadcasterSupport.java
        (getNotificationInfo): Add cast.
        * native/jni/qt-peer/Makefile.am (AM_CXXFLAGS): Add libstdc++ include
        directories.
        * native/jni/qt-peer/Makefile.in: Regenerate.

libjava/ChangeLog:

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        * java/io/natFileWin32.cc (setFilePermissions): New (stub only).
        _access: Handle EXEC query, stub only.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        Merged from classpath:
        * gnu/java/nio/SelectorProviderImpl.java: Whitespace merge.
        * java/lang/System.java(inheritedChannel): New.
        * java/lang/Character.java: Remove stray`;'.
        * java/net/MulticastSocket.java: Merged.
        * java/text/DateFormatSymbols.java(getInstance): New, comment updates.
        * java/text/Collator.java(getInstance): Merged.
        * java/util/Calendar.java: New attributes ALL_STYLES, SHORT, LONG.
        getDisplayName, getDisplayNames: New.
        * java/util/logging/Logger.java: Merged.
        * Regenerate .class and .h files.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        * java/io/File.java: Merge with classpath-0.95, new method
        setFilePermissions, new attribute EXEC.
        * java/io/natFilePosix.cc (setFilePermissions): New.
        _access: Handle EXEC query.
        * classpath/lib/java/io/File.class, java/io/File.h: Regenerate.

2007-06-03  Matthias Klose  <doko@ubuntu.com>

        Imported GNU Classpath 0.95.

        * classpath/Makefile.in,
        classpath/native/jni/midi-dssi/Makefile.in,
        classpath/native/jni/classpath/Makefile.in,
        classpath/native/jni/Makefile.in,
        classpath/native/jni/gconf-peer/Makefile.in,
        classpath/native/jni/java-io/Makefile.in,
        classpath/native/jni/native-lib/Makefile.in,
        classpath/native/jni/java-util/Makefile.in,
        classpath/native/jni/midi-alsa/Makefile.in,
        classpath/native/jni/java-lang/Makefile.in,
        classpath/native/jni/java-nio/Makefile.in,
        classpath/native/jni/java-net/Makefile.in,
        classpath/native/jni/xmlj/Makefile.in,
        classpath/native/jni/qt-peer/Makefile.in,
        classpath/native/jni/gtk-peer/Makefile.in,
        classpath/native/Makefile.in, classpath/native/jawt/Makefile.in,
        classpath/native/fdlibm/Makefile.in,
        classpath/native/plugin/Makefile.in,
        classpath/resource/Makefile.in, classpath/scripts/Makefile.in,
        classpath/tools/Makefile.in, classpath/doc/Makefile.in,
        classpath/doc/api/Makefile.in, classpath/lib/Makefile.in,
        classpath/external/Makefile.in, classpath/external/jsr166/Makefile.in,
        classpath/external/sax/Makefile.in,
        classpath/external/w3c_dom/Makefile.in,
        classpath/external/relaxngDatatype/Makefile.in,
        classpath/include/Makefile.in,
        classpath/examples/Makefile.in: Regenerate.
        * classpath/config.guess, classpath/config.sub,
        classpath/ltmain.sh : Update.
        * classpath/configure, classpath/depcomp, classpath/missing,
        classpath/aclocal.m4, classpath/install-sh: Regenerate.

        * gnu/classpath/Configuration.java (CLASSPATH_VERSION): Now 0.95.
        * sources.am: Regenerate.
        * Makefile.in: Regenerate.

        * Update the .class files and generated CNI header files, add new
        .class and generated CNI header files.
        * Remove generated files for removed java source files:
        classpath/gnu/java/net/BASE64.java,
        classpath/gnu/java/security/util/Base64.java,
        classpath/gnu/java/awt/peer/gtk/GThreadMutex.java,
        classpath/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java,
        classpath/gnu/java/awt/font/autofit/Scaler.java,
        classpath/gnu/classpath/jdwp/util/Value.java,
        classpath/gnu/javax/net/ssl/Base64.java.
        * Remove empty directories.

        * Makefile.am(nat_source_files): Add natVMOperatingSystemMXBeanImpl.cc.
        * java/lang/Class.java(setAccessible): Merge from classpath.
        * java/util/Locale.java: Remove.
        * gnu/java/lang/management/VMOperatingSystemMXBeanImpl.java,
        gnu/java/lang/management/natVMOperatingSystemMXBeanImpl.cc: New.
        * gcj/javaprims.h: Update class declarations.
        * scripts/classes.pl: Update usage.
        * HACKING: Mention to build all peers.

From-SVN: r125302

17 years agoconfigure.ac: Fix a typo in *-*-darwin clause.
Andrew Pinski [Sun, 3 Jun 2007 20:38:37 +0000 (20:38 +0000)]
configure.ac: Fix a typo in *-*-darwin clause.

2007-06-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * configure.ac: Fix a typo in *-*-darwin clause.
        * configure: Regenerated.

From-SVN: r125301

17 years agore PR tree-optimization/32194 (ice for legal code with -O3 with complex in loop)
Zdenek Dvorak [Sun, 3 Jun 2007 19:21:12 +0000 (21:21 +0200)]
re PR tree-optimization/32194 (ice for legal code with -O3 with complex in loop)

PR tree-optimization/32194
* tree-predcom.c (determine_offset): Check that both references have
the same type.

From-SVN: r125298

17 years agocfgloopmanip.c (remove_path, [...]): Change dom_bbs to vector.
Zdenek Dvorak [Sun, 3 Jun 2007 19:10:44 +0000 (21:10 +0200)]
cfgloopmanip.c (remove_path, [...]): Change dom_bbs to vector.

* cfgloopmanip.c (remove_path, loopify, duplicate_loop_to_header_edge):
Change dom_bbs to vector.  Add argument to iterate_fix_dominators call.
* loop-unroll.c (unroll_loop_runtime_iterations): Ditto.
* tree-cfg.c (tree_duplicate_sese_region): Change doms to vector.
Add argument to iterate_fix_dominators call.
(remove_edge_and_dominated_blocks): Pass vector to bbs_to_fix_dom.
* gcse.c (hoist_code): Change domby to vector.
* cfghooks.c (make_forwarder_block): Change doms_to_fix to vector.
Add argument to iterate_fix_dominators call.
* loop-doloop.c (doloop_modify): Changed recount_dominator to
recompute_dominator.
* lambda-code.c (perfect_nestify): Ditto.
* cfgloopanal.c: Include graphds.h.
(struct edge, struct vertex, struct graph, dump_graph, new_graph,
add_edge, dfs, for_each_edge, free_graph): Moved to graphds.c.
(mark_irreducible_loops): Use graphds_scc.  Remove argument from
add_edge call.
* graphds.c: New file.
* graphds.h: New file.
* dominance.c: Include vecprim.h, pointer-set.h and graphds.h.
(get_dominated_by, get_dominated_by_region): Change return type to
vector.
(verify_dominators): Recompute all dominators and compare the results.
(recount_dominator): Renamed to ...
(recompute_dominator): ... this.  Do not check that the block is
dominated by entry.
(iterate_fix_dominators): Reimplemented.
(prune_bbs_to_update_dominators, root_of_dom_tree,
determine_dominators_for_sons): New functions.
* et-forest.c (et_root): New function.
* et-forest.h (et_root): Declare.
* Makefile.in (graphds.o): Add.
(cfgloopanal.o): Add graphds.h dependency.
(dominance.o): Add graphds.h, vecprim.h and pointer-set.h dependency.
* basic-block.h (get_dominated_by, get_dominated_by_region,
iterate_fix_dominators): Declaration changed.
(recount_dominator): Renamed to ...
(recompute_dominator): ... this.
* tree-ssa-threadupdate.c (thread_block): Free dominance info.
(thread_through_all_blocks): Do not free dominance info.

From-SVN: r125297

17 years agom68k.c (override_options): Don't override REAL_MODE_FORMAT.
Andreas Schwab [Sun, 3 Jun 2007 14:32:43 +0000 (14:32 +0000)]
m68k.c (override_options): Don't override REAL_MODE_FORMAT.

* config/m68k/m68k.c (override_options): Don't override
REAL_MODE_FORMAT.
* config/m68k/m68k-modes.def (SF, DF): Define to use
motorola_single_format and motorola_double_format, resp.
* real.c (motorola_single_format): Renamed from
coldfire_single_format.
(motorola_double_format): Renamed from coldfire_double_format.
(encode_ieee_extended): Generate a proper canonical NaN image
respecting canonical_nan_lsbs_set.
(ieee_extended_motorola_format): Set canonical_nan_lsbs_set to
true.
* real.h: Adjust declarations.

From-SVN: r125295

17 years agore PR fortran/32124 (Execution stops with stat= in ALLOCATE)
Tobias Burnus [Sun, 3 Jun 2007 07:25:54 +0000 (09:25 +0200)]
re PR fortran/32124 (Execution stops with stat= in ALLOCATE)

2007-05-28  Tobias Burnus  <burnus@net-b.de>

       PR fortran/32124
       * gfortran.dg/allocate_stat_1.f90: Remove.

From-SVN: r125293

17 years agore PR target/32163 (Compiling with stack protector causes reigster spill failure)
Kaz Kojima [Sun, 3 Jun 2007 04:38:52 +0000 (04:38 +0000)]
re PR target/32163 (Compiling with stack protector causes reigster spill failure)

PR target/32163
* config/sh/sh.md (symGOT_load): Don't schedule insns when
the symbol is generated with the stack protector.

From-SVN: r125292

17 years agom68k.c (m68k_attribute_table): Add "interrupt".
Kazu Hirata [Sun, 3 Jun 2007 00:43:21 +0000 (00:43 +0000)]
m68k.c (m68k_attribute_table): Add "interrupt".

* config/m68k/m68k.c (m68k_attribute_table): Add "interrupt".
(m68k_get_function_kind): Return m68k_fk_interrupt_handler on
"interrupt".
* doc/extend.texi (interrupt): Mention m68k.

From-SVN: r125290

17 years agoDaily bump.
GCC Administrator [Sun, 3 Jun 2007 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r125288

17 years agorevert: sse.md ("sse4_1_blendvpd"): Require "z" class XMM register for operand[3].
Uros Bizjak [Sat, 2 Jun 2007 18:29:03 +0000 (20:29 +0200)]
revert: sse.md ("sse4_1_blendvpd"): Require "z" class XMM register for operand[3].

Revert:

 2007-06-02  Uros Bizjak  <ubizjak@gmail.com>

       * config/i386/sse.md ("sse4_1_blendvpd"): Require "z" class XMM
       register for operand[3].  Adjust asm template.
       ("sse4_1_blendvpd"): Ditto.
       ("sse4_1_pblendvb"): Ditto.
        * config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Do not
       force operands[3] into xmm0 register for variable blend instructions.

From-SVN: r125285

17 years agoFix a typo in ChangeLog.
H.J. Lu [Sat, 2 Jun 2007 17:44:29 +0000 (10:44 -0700)]
Fix a typo in ChangeLog.

From-SVN: r125284

17 years agotype_traits (is_reference, [...]): Remove.
Paolo Carlini [Sat, 2 Jun 2007 17:24:09 +0000 (17:24 +0000)]
type_traits (is_reference, [...]): Remove.

2007-06-02  Paolo Carlini  <pcarlini@suse.de>

* include/tr1_impl/type_traits (is_reference, add_reference,
remove_reference): Remove.
* include/tr1/type_traits (is_reference, add_reference,
remove_reference): Add.
* include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
is_reference, remove_reference, add_lvalue_reference,
add_rvalue_reference): Add.
* include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
* testsuite/20_util/add_lvalue_reference/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
* testsuite/20_util/add_rvalue_reference/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
* testsuite/20_util/is_lvalue_reference/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_lvalue_reference/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
* testsuite/20_util/is_rvalue_reference/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_rvalue_reference/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
* testsuite/20_util/is_reference/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_reference/value.cc: Likewise.
* testsuite/20_util/remove_reference/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/remove_reference/value.cc: Likewise.

* testsuite/tr1/4_metaprogramming/add_const/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
* testsuite/tr1/4_metaprogramming/add_cv/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
* testsuite/tr1/4_metaprogramming/add_pointer/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
* testsuite/tr1/4_metaprogramming/add_reference/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
* testsuite/tr1/4_metaprogramming/add_volatile/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
* testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
typedefs.cc: Move...
* testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.

From-SVN: r125283

17 years agoconfigure.ac: Fix a typo.
H.J. Lu [Sat, 2 Jun 2007 16:15:04 +0000 (16:15 +0000)]
configure.ac: Fix a typo.

2007-06-02  H.J. Lu  <hongjiu.lu@intel.com>

* configure.ac: Fix a typo.
* configure: Regenerated.

From-SVN: r125282

17 years agosse4_2-check.h: New.
H.J. Lu [Sat, 2 Jun 2007 13:45:18 +0000 (13:45 +0000)]
sse4_2-check.h: New.

2007-06-02  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/sse4_2-check.h: New.
* gcc.target/i386/sse4_2-crc32b.c: Likewise.
* gcc.target/i386/sse4_2-crc32.h: Likewise.
* gcc.target/i386/sse4_2-crc32l.c: Likewise.
* gcc.target/i386/sse4_2-crc32q.c: Likewise.
* gcc.target/i386/sse4_2-crc32w.c: Likewise.
* gcc.target/i386/sse4_2-pcmpestri-1.c: Likewise.
* gcc.target/i386/sse4_2-pcmpestri-2.c: Likewise.
* gcc.target/i386/sse4_2-pcmpestrm-1.c: Likewise.
* gcc.target/i386/sse4_2-pcmpestrm-2.c: Likewise.
* gcc.target/i386/sse4_2-pcmpgtq.c: Likewise.
* gcc.target/i386/sse4_2-pcmpistri-1.c: Likewise.
* gcc.target/i386/sse4_2-pcmpistri-2.c: Likewise.
* gcc.target/i386/sse4_2-pcmpistrm-1.c: Likewise.
* gcc.target/i386/sse4_2-pcmpistrm-2.c: Likewise.
* gcc.target/i386/sse4_2-pcmpstr.h: Likewise.
* gcc.target/i386/sse4_2-popcnt.h: Likewise.
* gcc.target/i386/sse4_2-popcntl.c: Likewise.
* gcc.target/i386/sse4_2-popcntq.c: Likewise.

From-SVN: r125281

17 years agoi386.md ("sse4_1_blendvpd"): Require "z" class XMM register for operand[3].
Uros Bizjak [Sat, 2 Jun 2007 12:49:07 +0000 (14:49 +0200)]
i386.md ("sse4_1_blendvpd"): Require "z" class XMM register for operand[3].

        * config/i386/i386.md ("sse4_1_blendvpd"): Require "z" class XMM
        register for operand[3].  Adjust asm template.
        ("sse4_1_blendvpd"): Ditto.
        ("sse4_1_pblendvb"): Ditto.
        * config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Call
        safe_vector_operand() if input operand is VECTOR_MODE_P operand. Do not
        force operands[3] into xmm0 register for variable blend instructions.
        (ix86_expand_sse_pcmpestr): Do not check operands for
        "register_operand", when insn operand predicate is "register_operand".
        (ix86_expand_sse_pcmpistr): Ditto.

From-SVN: r125280

17 years agoi386.h (enum reg_class): New.
H.J. Lu [Sat, 2 Jun 2007 09:07:00 +0000 (09:07 +0000)]
i386.h (enum reg_class): New.

        * config/i386/i386.h (enum reg_class) [SSE_FIRST_REG]: New.
        (SSE_CLASS_P): Use reg_class_subset_p between SSE_REGS.
        (REG_CLASS_NAMES): Add "FIRST_SSE_REG" string.
        (REG_CLASS_CONTENTS): Add members of FIRST_SSE_REG class.
        * config/i386/constraints.md ("z"): New register constraint
        for members of SSE_FIRST_REG class.
        * config/i386/i386-modes.def (CCA, CCC, CCO, CCS): New compare modes.
        * config/i386/i386.c (regclass_map): Change class of %xmm0 to
        SSE_FIRST_REG class.
        (put_condition_code) [EQ, NE]: Output suffixes for new compare modes.
        (ix86_cc_modes_compatible): Handle CCA, CCC, CCO and CCS modes.
        (IX86_BUILTIN_PCMPESTRI128): New for SSE4.2.
        (IX86_BUILTIN_PCMPESTRM128): Likewise.
        (IX86_BUILTIN_PCMPESTRA128): Likewise.
        (IX86_BUILTIN_PCMPESTRC128): Likewise.
        (IX86_BUILTIN_PCMPESTRO128): Likewise.
        (IX86_BUILTIN_PCMPESTRS128): Likewise.
        (IX86_BUILTIN_PCMPESTRZ128): Likewise.
        (IX86_BUILTIN_PCMPISTRI128): Likewise.
        (IX86_BUILTIN_PCMPISTRM128): Likewise.
        (IX86_BUILTIN_PCMPISTRA128): Likewise.
        (IX86_BUILTIN_PCMPISTRC128): Likewise.
        (IX86_BUILTIN_PCMPISTRO128): Likewise.
        (IX86_BUILTIN_PCMPISTRS128): Likewise.
        (IX86_BUILTIN_PCMPISTRZ128): Likewise.
        (struct builtin_description): Change "flag" field to unsigned.
        (bdesc_pcmpestr): New builtin description table.
        (bdesc_pcmpistr): Likewise.
        (ix86_init_mmx_sse_builtins): Define int_ftype_v16qi_int_v16qi_int_int,
        v16qi_ftype_v16qi_int_v16qi_int_int and int_ftype_v16qi_v16qi_int.
        Initialize pcmp[ei]str[im] insns for SSE4.2.
        (ix86_expand_sse_pcmpestr): New subroutine of ix86_expand_builtin.
        (ix86_expand_sse_pcmpistr): Likewise.
        (ix86_expand_builtin): Expand pcmp[ei]str[im] builtins for SSE4.2.
        * config/i386/i386.md (UNSPEC_PCMPESTR): New for SSE4.2.
        (UNSPEC_PCMPISTR): Likewise.
        * config/i386/sse.md (sse4_2_pcmpestr): New insn patern and splitter.
        (sse4_2_pcmpestri):New isns pattern.
        (sse4_2_pcmpestrm): Likewise.
        (sse4_2_pcmpestr_cconly): Likewise.
        (sse4_2_pcmpistr): New insn patern and splitter.
        (sse4_2_pcmpistri):New isns pattern.
        (sse4_2_pcmpistrm): Likewise.
        (sse4_2_pcmpistr_cconly): Likewise.
        * config/i386/smmintrin.h: Enable pcmp[ei]str[im] intrinsics
        in SSE4.2.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r125279

17 years agoconfigure: Regenerate.
Paolo Bonzini [Sat, 2 Jun 2007 08:18:15 +0000 (08:18 +0000)]
configure: Regenerate.

boehm-gc:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libffi:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libgfortran:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libgomp:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libjava:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libmudflap:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libobjc:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libssp:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

libstdc++-v3:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

zlib:
2007-06-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

From-SVN: r125278

17 years agomips.c (mips_output_mi_thunk): Only load gp if not LOADGP_ABSOLUTE and not binds_local_p.
David Daney [Sat, 2 Jun 2007 04:27:40 +0000 (04:27 +0000)]
mips.c (mips_output_mi_thunk): Only load gp if not LOADGP_ABSOLUTE and not binds_local_p.

* config/mips/mips.c (mips_output_mi_thunk): Only load gp if not
LOADGP_ABSOLUTE and not binds_local_p.

From-SVN: r125276

17 years agoMakefile.in: Replace all uses of libext with libsuffix.
Andrew Pinski [Sat, 2 Jun 2007 01:35:59 +0000 (01:35 +0000)]
Makefile.in: Replace all uses of libext with libsuffix.

2007-06-01  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * Makefile.in: Replace all uses of libext with libsuffix.
        * configure.ac: Likewise.
        * configure: Regenerate.

        Revert:
        * Makefile.in: Remove all uses of $(libext).

From-SVN: r125275

17 years agoDaily bump.
GCC Administrator [Sat, 2 Jun 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r125273

17 years agodarwin.h (LINK_SPEC): Pass -fpie through to the linker.
Geoffrey Keating [Fri, 1 Jun 2007 22:58:14 +0000 (22:58 +0000)]
darwin.h (LINK_SPEC): Pass -fpie through to the linker.

2007-06-01  Geoffrey Keating  <geoffk@apple.com>

* config/darwin.h (LINK_SPEC): Pass -fpie through to the linker.

Index: testsuite/ChangeLog
2007-06-01  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/pie-link.c: New test.

From-SVN: r125270

17 years agotree-vrp.c (compare_name_with_value): Always set used_strict_overflow if we get a...
Ian Lance Taylor [Fri, 1 Jun 2007 22:47:02 +0000 (22:47 +0000)]
tree-vrp.c (compare_name_with_value): Always set used_strict_overflow if we get a result from the variable itself.

./: * tree-vrp.c (compare_name_with_value): Always set
used_strict_overflow if we get a result from the variable itself.
testsuite/:
* gcc.dg/Wstrict-overflow-17.c: New test.

From-SVN: r125269

17 years agobuiltin-return-1.c (g): New.
Kazu Hirata [Fri, 1 Jun 2007 19:48:46 +0000 (19:48 +0000)]
builtin-return-1.c (g): New.

* gcc.dg/builtin-return-1.c (g): New.
(main): Allocate at least 64 bytes on the stack.

From-SVN: r125268

17 years agowhat-big.cc: New.
Benjamin Kosnik [Fri, 1 Jun 2007 17:03:22 +0000 (17:03 +0000)]
what-big.cc: New.

2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/19_diagnostics/logic_error/what-big.cc: New.
* testsuite/19_diagnostics/logic_error/what-3.cc: Same.
* testsuite/19_diagnostics/runtime_error/what-big.cc: Same.
* testsuite/19_diagnostics/runtime_error/what-3.cc: Same.

* testsuite/18_support/14493.cc: Break into...
* testsuite/18_support/exception/what.cc: ...this.
* testsuite/18_support/bad_cast/what.cc: ...this.
* testsuite/18_support/bad_alloc/what.cc: ...this.
* testsuite/18_support/bad_typeid/what.cc: ...this.
* testsuite/18_support/bad_exception/what.cc: ...this.

* testsuite/19_diagnostics/bad_exception/23591_thread-1.c: Move...
* testsuite/18_support/bad_exception/23591_thread-1.c: ...here.

* testsuite/18_support/14026.cc: Move...
* testsuite/18_support/uncaught_exception/14026.cc: ...here.

From-SVN: r125267

17 years agore PR rtl-optimization/31455 (lower subreg causes a performance regression in the...
Ian Lance Taylor [Fri, 1 Jun 2007 15:06:19 +0000 (15:06 +0000)]
re PR rtl-optimization/31455 (lower subreg causes a performance regression in the inner loop sometimes)

PR rtl-optimization/31455
* lower-subreg.c (find_decomposable_subregs): Don't decompose
subregs which have a cast between modes which are not tieable.

From-SVN: r125265

17 years agoFix ChangeLog entry.
H.J. Lu [Fri, 1 Jun 2007 13:46:37 +0000 (06:46 -0700)]
Fix ChangeLog entry.

From-SVN: r125264

17 years agolibtool.m4 (LT_CMD_MAX_LEN): Try using getconf to set lt_cv_sys_max_cmd_len.
Steve Ellcey [Fri, 1 Jun 2007 11:32:07 +0000 (11:32 +0000)]
libtool.m4 (LT_CMD_MAX_LEN): Try using getconf to set lt_cv_sys_max_cmd_len.

2007-06-01  Steve Ellcey  <sje@cup.hp.com>

* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
to set lt_cv_sys_max_cmd_len.

From-SVN: r125262

17 years agothrow_allocator.h (__throw_allocator::allocate): Throw bad_alloc for out of memory...
Benjamin Kosnik [Fri, 1 Jun 2007 10:09:40 +0000 (10:09 +0000)]
throw_allocator.h (__throw_allocator::allocate): Throw bad_alloc for out of memory conditions.

2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/throw_allocator.h (__throw_allocator::allocate):
Throw bad_alloc for out of memory conditions.
* testsuite/ext/throw_allocator/deallocate_global.cc: New.
* testsuite/ext/throw_allocator/check_delete.cc: Same.
* testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
* testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
* testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
* testsuite/ext/throw_allocator/check_new.cc: Same.
* testsuite/ext/throw_allocator/deallocate_local.cc: Same.

From-SVN: r125261

17 years agoRemove conflict marker.
Andreas Schwab [Fri, 1 Jun 2007 08:51:05 +0000 (08:51 +0000)]
Remove conflict marker.

From-SVN: r125260

17 years agoexpr.c (force_operand): Remove breaks after return statements.
Uros Bizjak [Fri, 1 Jun 2007 05:59:23 +0000 (07:59 +0200)]
expr.c (force_operand): Remove breaks after return statements.

* expr.c (force_operand) [DIV, MOD, UDIV, UMOD, ASHIFTRT]: Remove
breaks after return statements.

From-SVN: r125259

17 years agosh.c (fpscr_set_from_mem): Call get_free_reg only after no_new_pseudos.
Kaz Kojima [Fri, 1 Jun 2007 04:58:23 +0000 (04:58 +0000)]
sh.c (fpscr_set_from_mem): Call get_free_reg only after no_new_pseudos.

* config/sh/sh.c (fpscr_set_from_mem): Call get_free_reg
only after no_new_pseudos.

From-SVN: r125258

17 years agoFixup whitespacing
Mike Stump [Fri, 1 Jun 2007 02:12:37 +0000 (02:12 +0000)]
Fixup whitespacing

From-SVN: r125255

17 years agodecl.c (get_atexit_fn_ptr_type): New function.
Mark Mitchell [Fri, 1 Jun 2007 00:44:36 +0000 (00:44 +0000)]
decl.c (get_atexit_fn_ptr_type): New function.

* decl.c (get_atexit_fn_ptr_type): New function.
(get_atexit_node): Use it.
(start_cleanup_fn): Likewise.
(register_dtor_fn): Use the object's destructor, instead of a
separate cleanup function, where possible.
* cp-tree.h (CPTI_ATEXIT_FN_PTR_TYPE): New enumerator.
(atexit_fn_ptr_type_node): New macro.
* decl2.c (build_cleanup): Use build_address.
* g++.dg/init/cleanup3.C: New test.

From-SVN: r125253

17 years agoDaily bump.
GCC Administrator [Fri, 1 Jun 2007 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r125249

17 years agoexpr.c (convert_move): Assert that we don't have a BLKmode operand.
Eric Christopher [Fri, 1 Jun 2007 00:08:26 +0000 (00:08 +0000)]
expr.c (convert_move): Assert that we don't have a BLKmode operand.

2007-05-31  Eric Christopher  <echristo@apple.com>

* expr.c (convert_move): Assert that we don't have a BLKmode
operand.
(store_expr): Handle BLKmode moves by calling emit_block_move.

From-SVN: r125246

17 years agore PR libstdc++/31426 (TR1 includes do not work with -std=c++0x)
Paolo Carlini [Thu, 31 May 2007 23:37:56 +0000 (23:37 +0000)]
re PR libstdc++/31426 (TR1 includes do not work with -std=c++0x)

2007-05-31  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/31426
* include/bits/c++config: Remove namespace association bits
from tr1 to std.

* include/ext/type_traits.h (__promote, __promote2,
__promote3, __promote4): Add.

* include/bits/hashtable.h: New.
* include/bits/functional_hash.h: Likewise.
* include/tr1/hashtable.h: Likewise.

* include/tr1_impl/random: New.
* include/tr1_impl/cinttypes: Likewise.
* include/tr1_impl/cstdlib: Likewise.
* include/tr1_impl/unordered_map: Likewise.
* include/tr1_impl/cstdio: Likewise.
* include/tr1_impl/boost_shared_ptr.h: Likewise.
* include/tr1_impl/cctype: Likewise.
* include/tr1_impl/random.tcc: Likewise.
* include/tr1_impl/tuple: Likewise.
* include/tr1_impl/functional_hash.h: Likewise.
* include/tr1_impl/hashtable: Likewise.
* include/tr1_impl/cmath: Likewise.
* include/tr1_impl/type_traitsfwd.h: Likewise.
* include/tr1_impl/hashtable_policy.h: Likewise.
* include/tr1_impl/cfenv: Likewise.
* include/tr1_impl/unordered_set: Likewise.
* include/tr1_impl/functional: Likewise.
* include/tr1_impl/utility: Likewise.
* include/tr1_impl/complex: Likewise.
* include/tr1_impl/type_traits: Likewise.
* include/tr1_impl/cwchar: Likewise.
* include/tr1_impl/cstdint: Likewise.
* include/tr1_impl/regex: Likewise.
* include/tr1_impl/array: Likewise.
* include/tr1_impl/cwctype: Likewise.

* include/tr1/type_traitsfwd.h: Remove.
* include/tr1/boost_shared_ptr.h: Likewise.
* include/tr1/common.h: Likewise.
* include/tr1/hashtable: Likewise.
* include/tr1/hashtable_policy.h: Likewise.
* include/tr1/random.tcc: Likewise.

* include/c_global/cinttypes: Include tr1_impl/cinttypes.
* include/c_global/cstdlib: Likewise for cstdlib.
* include/c_global/cstdio: Likewise for cstdio.
* include/c_global/cctype: Likewise for cctype.
* include/c_global/cmath: Likewise for cmath.
* include/c_global/cfenv: Likewise for cfenv.
* include/c_global/cwchar: Likewise for cwchar.
* include/c_global/cstdint: Likewise for cstdint.
* include/c_global/cwctype: Likewise for cwctype.
* include/tr1/cinttypes: Likewise for cinttypes.
* include/tr1/cstdlib: Likewise for cstdlib.
* include/tr1/cstdio: Likewise for cstdio.
* include/tr1/cctype: Likewise for cctype.
* include/tr1/cmath: Likewise for cmath.
* include/tr1/cfenv: Likewise for cfenv.
* include/tr1/cwchar: Likewise for cwchar.
* include/tr1/cstdint: Likewise for cstdint.
* include/tr1/cwctype: Likewise for cwctype.
* include/tr1/functional_hash.h: Likewise for functional_hash.

* include/std/tuple: Include tr1_impl/tuple.
* include/std/utility: Likewise for utility.
* include/std/type_traits: Likewise for type_traits.
(is_pod): Just forward to __is_pod.
(has_trivial_default_constructor): Just forward to
__has_trivial_constructor.
(has_trivial_copy_constructor): Just forward to __has_trivial_copy.
(has_trivial_assign): Just forward to __has_trivial_assign.
(has_trivial_destructor): Just forward to __has_trivial_destructor.
(has_nothrow_default_constructor): Just forward to
__has_nothrow_constructor.
(has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
(has_nothrow_assign): Just forward to __has_nothrow_assign.
(is_base_of): Just forward to __is_base_of.
(is_signed, is_unsigned): Implement according to the C++0x
specifications.
* include/std/memory: Likewise for memory.
* include/std/regex: Likewise for regex.
* include/std/random: Likewise for random.
* include/std/unordered_map: Likewise for unordered_map.
* include/std/unordered_set: Likewise for unordered_set.
* include/std/functional: Likewise for functional.
* include/std/complex: Likewise for complex.
* include/std/array: Likewise for array.
* include/tr1/tuple: Likewise for tuple.
* include/tr1/utility: Likewise for utility.
* include/tr1/type_traits: Likewise for type_traits
* include/tr1/memory: Likewise for memory.
* include/tr1/regex: Likewise for regex.
* include/tr1/random: Likewise for random.
* include/tr1/unordered_map: Likewise for unordered_map.
* include/tr1/unordered_set: Likewise for unordered_set.
* include/tr1/functional: Likewise for functional.
* include/tr1/complex: Likewise for complex.
* include/tr1/array: Likewise for array.

* include/c_global/ctgmath: Tweak.
* include/c_global/cstdarg: Likewise.
* include/c_global/ctime: Likewise.
* include/c_global/climits: Likewise.
* include/c_global/cfloat: Likewise.
* include/c_global/ccomplex: Likewise.
* include/c_global/cstdbool: Likewise.

* include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
* include/tr1/riemann_zeta.tcc: Likewise.
* include/tr1/beta_function.tcc: Likewise.
* include/tr1/exp_integral.tcc: Likewise.
* include/tr1/hypergeometric.tcc: Likewise.
* include/tr1/modified_bessel_func.tcc: Likewise.
* include/tr1/legendre_function.tcc: Likewise.
* include/tr1/special_function_util.h: Likewise.
* include/tr1/bessel_function.tcc: Likewise.
* include/tr1/poly_hermite.tcc: Likewise.
* include/tr1/ell_integral.tcc: Likewise.
* include/tr1/gamma.tcc: Likewise.
* include/tr1/stdlib.h: Likewise.
* include/tr1/math.h: Likewise.

* include/tr1/complex.h: Minor tweaks.
* include/tr1/wctype.h: Likewise.
* include/tr1/wchar.h: Likewise.
* include/tr1/inttypes.h: Likewise.
* include/tr1/tgmath.h: Likewise.
* include/tr1/cstdbool: Likewise.
* include/tr1/cfloat: Likewise.
* include/tr1/ccomplex: Likewise.
* include/tr1/ctime: Likewise.
* include/tr1/climits: Likewise.
* include/tr1/ctgmath: Likewise.
* include/tr1/cstdarg: Likewise.

* testsuite/tr1/headers.cc: Move...
* testsuite/tr1/headers/all.cc: ... here.
* testsuite/tr1/using_namespace_std_tr1.cc: Move...
* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
* testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.

* testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
Adjust namespace.
* testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
the C++0x requirements.
* testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
* testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.

* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error lines.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
Un-xfail.

* testsuite/20_util/is_signed/value.cc: New.
* testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_unsigned/value.cc: Likewise..
* testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
Likewise.

* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.

From-SVN: r125244

17 years agolimits-caselabels.c: Fix for targets where int is 16 bits.
Rask Ingemann Lambertsen [Thu, 31 May 2007 22:56:32 +0000 (00:56 +0200)]
limits-caselabels.c: Fix for targets where int is 16 bits.

2007-05-31  Rask Ingemann Lambertsen  <rask@sygehus.dk>

* gcc.c-torture/compile/limits-caselabels.c: Fix for targets where
int is 16 bits.

From-SVN: r125243

17 years agotrans-expr.c (gfc_conv_expr_op): Use zero constant that matches the lse type.
Richard Guenther [Thu, 31 May 2007 21:14:52 +0000 (21:14 +0000)]
trans-expr.c (gfc_conv_expr_op): Use zero constant that matches the lse type.

2007-05-31  Richard Guenther  <rguenther@suse.de>

* trans-expr.c (gfc_conv_expr_op): Use zero constant
that matches the lse type.
(gfc_trans_string_copy): Use sizetype zero constant.
* intrinsic.c (add_functions): The sizeof intrinsic has
index type result.
* trans-types.c (gfc_get_dtype): Convert size to index
type before shifting.
* trans-array.c (gfc_trans_array_constructor_value): Use
index type for offset computation.
* trans-intrinsic.c (gfc_conv_associated): Use correct type
for zero constant.

From-SVN: r125242

17 years agore PR fortran/32156 (ICE with characters)
Paul Thomas [Thu, 31 May 2007 21:12:10 +0000 (21:12 +0000)]
re PR fortran/32156 (ICE with characters)

2007-05-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/32156
* trans-array.c (gfc_trans_array_constructor): Treat the case
where the ss expression charlen is missing.

2007-05-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/32156
* gfortran.dg/char_array_constructor_3.f90: New test.

From-SVN: r125241