gcc.git
16 years agoinit.c: Enable stack probing on ppc-linux.
Tristan Gingold [Tue, 20 May 2008 12:47:13 +0000 (14:47 +0200)]
init.c: Enable stack probing on ppc-linux.

2008-05-20  Tristan Gingold  <gingold@adacore.com>

* init.c: Enable stack probing on ppc-linux.

* tracebak.c: Add symbolic traceback for ppc-linux.

* system-linux-ppc.ads: Enable stack probing on ppc-linux.

From-SVN: r135630

16 years ago2008-05-20 Vincent Celier <celier@adacore.com>
Vincent Celier [Tue, 20 May 2008 12:47:03 +0000 (14:47 +0200)]
2008-05-20  Vincent Celier  <celier@adacore.com>

* gnatname.adb
(Scan_Args): Rewrite to take into account new switch --and to separate
arguments into sections.
(Gnatname): Call Prj.Makr.Initialize, then Prj.Makr.Process for each
section, then Finalize.

From-SVN: r135629

16 years ago2008-05-20 Ed Schonberg <schonberg@adacore.com>
Ed Schonberg [Tue, 20 May 2008 12:46:54 +0000 (14:46 +0200)]
2008-05-20  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb
(Freeze_Enumeration_Type): For a subtype that inherits a foreign
convention from its base type, do not set the type to that of integer,
because it may inherit a size clause.
Warn on a size clause with a size different
from that of Integer, if the type has convention C.

From-SVN: r135628

16 years agoexp_smem.ads, [...]: Construction of access and assign routines has been replaced...
Kevin Pouget [Tue, 20 May 2008 12:46:42 +0000 (14:46 +0200)]
exp_smem.ads, [...]: Construction of access and assign routines has been replaced by an...

2008-05-20  Kevin Pouget  <pouget@adacore.com>

* exp_smem.ads, exp_smem.adb: Construction of access and assign
routines has been replaced by an instantiation of
System.Shared_Storage.Shared_Var_Procs generic package, while expanding
shared variable declaration.
Calls to access and assign routines have been replaced by calls to
Read/Write routines of System.Shared_Storage.Shared_Var_Procs
instantiated package.

* rtsfind.ads: RE_Shared_Var_Procs entry has been added in RE_Unit_Table
It identifies the new generic package added in s-shasto.

* s-shasto.adb, s-shasto.ads: A new generic package has been added, it
is instantiated for each shared passive variable. It provides
supporting procedures called upon each read or write access by the
expanded code.

* sem_attr.adb:
For this runtime unit (always compiled in GNAT mode), we allow
stream attributes references for limited types for the case where
shared passive objects are implemented using stream attributes,
which is the default in GNAT's persistent storage implementation.

From-SVN: r135627

16 years ago2008-05-20 Thomas Quinot <quinot@adacore.com>
Thomas Quinot [Tue, 20 May 2008 12:46:31 +0000 (14:46 +0200)]
2008-05-20  Thomas Quinot  <quinot@adacore.com>

* exp_dist.adb
(GARLIC_Support.Add_RACW_Read_Attribute): When a zero value is received,
and the RACW is null-excluding, raise CONSTRAINT_ERROR instead of
assigning NULL into the result, to avoid a spurious warning.
(Add_RACW_Features, case Same_Scope): Add assertion that designated type
is not frozen.
(Add_Stub_Type): Set entity flag Is_RACW_Stub_Type on generated stub
type.
(Build_From_Any_Function, Build_To_Any_Function,
Build_TypeCode_Function): For a type that has user-specified stream
attributes, use an opaque sequence of octets as the representation.

From-SVN: r135626

16 years agoexp_disp.adb (Make_DT, [...]): Avoid generating dispatch tables of locally defined...
Javier Miranda [Tue, 20 May 2008 12:46:19 +0000 (14:46 +0200)]
exp_disp.adb (Make_DT, [...]): Avoid generating dispatch tables of locally defined tagged types statically.

2008-05-20  Javier Miranda  <miranda@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* exp_disp.adb (Make_DT, Make_Secondary_DT, Make_Tags): Avoid
generating dispatch tables of locally defined tagged types statically.
Remove implicit if-statement that is no longer required.
(Expand_Dispatching_Call): If this is a call to an instance of the
generic dispatching constructor, the type of the first argument may be
a subtype of Tag, so always use the base type to recognize this case.

From-SVN: r135625

16 years agoexp_ch6.adb (Expand_Call): Add guard to ensure that both the parent and the derived...
Hristian Kirtchev [Tue, 20 May 2008 12:46:06 +0000 (14:46 +0200)]
exp_ch6.adb (Expand_Call): Add guard to ensure that both the parent and the derived type are of the same kind.

2008-05-20  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Expand_Call): Add guard to ensure that both the parent
and the derived type are of the same kind.
(Expand_Call): Generate type conversions for actuals of
record or array types when the parent and the derived types differ in
size and/or packed status.

From-SVN: r135624

16 years agoprj.adb (Hash (Project_Id)): New function
Vincent Celier [Tue, 20 May 2008 12:45:54 +0000 (14:45 +0200)]
prj.adb (Hash (Project_Id)): New function

2008-05-20  Vincent Celier  <celier@adacore.com>

* prj.adb (Hash (Project_Id)): New function
(Project_Empty): Add new component Interfaces_Defined

* prj.ads (Source_Data): New component Object_Linked
(Language_Config): New components Object_Generated and Objects_Linked
(Hash (Project_Id)): New function
(Source_Data): New Boolean components In_Interfaces and
Declared_In_Interfaces.
(Project_Data): New Boolean component Interfaces_Defined

* prj-attr.adb:
New project level attribute Object_Generated and Objects_Linked
Add new project level attribute Interfaces

* prj-dect.adb: Use functions Present and No throughout
(Parse_Variable_Declaration): If a string type is specified as a simple
name and is not found in the current project, look for it also in the
ancestors of the project.

* prj-makr.adb:
Replace procedure Make with procedures Initialize, Process and Finalize
to implement H414-023: process different directories with different
patterns.
Use functions Present and No throughout

* prj-makr.ads:
Replace procedure Make with procedures Initialize, Process and Finalize

* prj-nmsc.adb
(Add_Source): Set component Object_Exists and Object_Linked accordnig to
the language configuration.
(Process_Project_Level_Array_Attributes): Process new attributes
Object_Generated and Object_Linked.
(Report_No_Sources): New Boolean parameter Continuation, defaulted to
False, to indicate that the erreor/warning is a continuation.
(Check): Call Report_No_Sources with Contnuation = True after the first
call.
(Error_Msg): Process successively contnuation character and warning
character.
(Find_Explicit_Sources): Check that all declared sources have been found
(Check_File): Indicate in hash table Source_Names when a declared source
is found.
(Check_File): Set Other_Part when found
(Find_Explicit_Sources): In multi language mode, check if all exceptions
to the naming scheme have been found. For Ada, report an error if an
exception has not been found. Otherwise, disregard the exception.
(Check_Interfaces): New procedure
(Add_Source): When Other_Part is defined, set mutual pointers in spec
and body.
(Check): In multi-language mode, call Check_Interfaces
(Process_Sources_In_Multi_Language_Mode): Set In_Interfaces to False
for an excluded source.
(Remove_Source): A source replacing a source in the interfaces is also
in the interfaces.

* prj-pars.adb: Use function Present

* prj-part.adb: Use functions Present and No throughout
(Parse_Single_Project): Set the parent project for child projects
(Create_Virtual_Extending_Project): Register project with no qualifier
(Parse_Single_Project): Allow an abstract project to be extend several
times. Do not allow an abstract project to extend a non abstract
project.

* prj-pp.adb: Use functions Present and No throughout
(Print): Take into account the full associative array attribute
declarations.

* prj-proc.adb: Use functions Present and No throughout
(Expression): Call itself with the same From_Project_Node for the
default value of an external reference.

* prj-strt.adb: Use functions Present and No throughout
(Parse_Variable_Reference): If a variable is specified as a simple name
and is not found in the current project, look for it also in the
ancestors of the project.

* prj-tree.ads, prj-tree.adb (Present): New function
(No): New function
Use functions Present and No throughout
(Parent_Project_Of): New function
(Set_Parent_Project_Of): New procedure

* snames.ads, snames.adb:
Add new standard names Object_Generated and Objects_Linked

From-SVN: r135623

16 years agoexp_ch5.adb (Expand_Assign_Record): Within an initialization procedure for a derived...
Ed Schonberg [Tue, 20 May 2008 12:45:38 +0000 (14:45 +0200)]
exp_ch5.adb (Expand_Assign_Record): Within an initialization procedure for a derived type retrieve the discriminant...

2008-05-20  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb (Expand_Assign_Record): Within an initialization
procedure for a derived type retrieve the discriminant values from the
parent using the corresponding discriminant.
(Expand_N_Assignment_Statement): Skip generation of implicit
if-statement associated with controlled types if we are
compiling with restriction No_Finalization.

From-SVN: r135622

16 years ago2008-05-20 Gary Dismukes <dismukes@adacore.com>
Gary Dismukes [Tue, 20 May 2008 12:45:27 +0000 (14:45 +0200)]
2008-05-20  Gary Dismukes  <dismukes@adacore.com>
    Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch3.adb
(Expand_N_Object_Declaration): Correct the condition which triggers the
generation of a call to Displace when initializing a class-wide object.
(Build_Dcheck_Functions): Build discriminant-checking for null variants
when Frontend_Layout_On_Target is true to ensure that they're available
for calling when a record variant size function is built in Layout.

From-SVN: r135621

16 years ago2008-05-20 Javier Miranda <miranda@adacore.com>
Javier Miranda [Tue, 20 May 2008 12:45:15 +0000 (14:45 +0200)]
2008-05-20  Javier Miranda  <miranda@adacore.com>

* exp_aggr.adb
(Build_Record_Aggr_Code): Fix wrong tests checking progenitors. Previous
tests did not covered the case in which the type of the aggregate has
no progenitors but some its parents has progenitors.

From-SVN: r135620

16 years agore PR ada/30740 (Improper semantics in gnat's compilation of certain expressions...
Robert Dewar [Tue, 20 May 2008 12:44:55 +0000 (14:44 +0200)]
re PR ada/30740 (Improper semantics in gnat's compilation of certain expressions involving modular arithmetic)

2008-05-20  Robert Dewar  <dewar@adacore.com>

PR ada/30740
* einfo.ads, einfo.adb (Non_Binary_Modulus): Applies to all types and
subtypes, always False for non-modular types.
Shared_Var_Assign_Proc (node22) and Shared_Var_Read_Proc (node 15)
entry nodes have been replaced by Shared_Var_Procs_Instance (node22)
for Shared_Storage package.
(Is_RACW_Stub_Type): New entity flag.

* exp_ch4.adb
(Expand_N_Op_Expon): Avoid incorrect optimization of a*(2**b) in the
case where we have a modular type with a non-binary modules.
Comments reformattings.

* sem_intr.adb: Simplify code not that Non_Binary_Modulus applies to
all types.

From-SVN: r135619

16 years agodecl.c: Do not emit a variable for a object that has an address representation clause...
Tristan Gingold [Tue, 20 May 2008 12:44:43 +0000 (14:44 +0200)]
decl.c: Do not emit a variable for a object that has an address representation clause...

2008-05-20  Tristan Gingold  <gingold@adacore.com>

* decl.c: Do not emit a variable for a object that has an address
representation clause whose value is known at compile time.
When a variable has an address clause whose value is known at compile
time, refer to this variable by using directly the address instead of
dereferencing a pointer.

From-SVN: r135618

16 years agocstand.adb (Print_Standard): Issue the correct Size clause for type Wide_Wide_Character.
Vincent Celier [Tue, 20 May 2008 12:44:33 +0000 (14:44 +0200)]
cstand.adb (Print_Standard): Issue the correct Size clause for type Wide_Wide_Character.

2008-05-20  Vincent Celier  <celier@adacore.com>

* cstand.adb (Print_Standard): Issue the correct Size clause for type
Wide_Wide_Character.

From-SVN: r135617

16 years agochecks.adb (Apply_Arithmetic_Overflow_Check): Avoid intermediate overflow if result...
Robert Dewar [Tue, 20 May 2008 12:44:23 +0000 (14:44 +0200)]
checks.adb (Apply_Arithmetic_Overflow_Check): Avoid intermediate overflow if result converted to wider integer type.

2008-05-20  Robert Dewar  <dewar@adacore.com>
    Gary Dismukes  <dismukes@adacore.com>

* checks.adb (Apply_Arithmetic_Overflow_Check): Avoid intermediate
overflow if result converted to wider integer type.
(Apply_Type_Conversion_Checks): Don't emit checks on conversions to
discriminated types when discriminant checks are suppressed.

From-SVN: r135616

16 years agoali.adb: Correct casing of ASCII.NUL
Robert Dewar [Tue, 20 May 2008 12:44:12 +0000 (14:44 +0200)]
ali.adb: Correct casing of ASCII.NUL

2008-05-20  Robert Dewar  <dewar@adacore.com>

* ali.adb: Correct casing of ASCII.NUL

* styleg-c.adb (Check_Identifier): Handle case of names in ASCII
properly.

From-SVN: r135615

16 years agore PR ada/24533 (FAIL: a85013b: *** glibc detected *** free(): invalid pointer...
Arnaud Charlet [Tue, 20 May 2008 12:43:59 +0000 (14:43 +0200)]
re PR ada/24533 (FAIL:   a85013b: *** glibc detected *** free(): invalid pointer: 0x00062a00 ***)

2008-05-20  Arnaud Charlet  <charlet@adacore.com>

* s-linux-hppa.ads (atomic_lock_t): Put back proper alignment now that
the underlying issue with malloc/free has been fixed. Remove associated
comments.
Minor reformatting.
Related to PR ada/24533

From-SVN: r135614

16 years agoi-cobol.ads: Interfaces.COBOL should be preelaborate.
Santiago Uruena [Tue, 20 May 2008 12:43:44 +0000 (14:43 +0200)]
i-cobol.ads: Interfaces.COBOL should be preelaborate.

2008-05-20  Santiago Uruena  <uruena@adacore.com>

* i-cobol.ads: Interfaces.COBOL should be preelaborate.

From-SVN: r135613

16 years agoMakefile.rtl (GNAT.Sockets.Thin_Common): New unit.
Thomas Quinot [Tue, 20 May 2008 12:43:29 +0000 (14:43 +0200)]
Makefile.rtl (GNAT.Sockets.Thin_Common): New unit.

2008-05-20  Thomas Quinot  <quinot@adacore.com>

* Makefile.rtl (GNAT.Sockets.Thin_Common): New unit.

* g-sttsne-vxworks.adb: Add missing dependency on Sockets.Constants.
Add missing "with" of Ada.Unchecked_Conversion

* g-soccon-linux-ppc.ads, g-soccon-linux-64.ads, g-soccon-lynxos.ads,
g-soccon-linux-x86.ads, g-soccon-hpux-ia64.ads,
g-soccon-solaris-64.ads, g-soccon-tru64.ads, g-soccon-aix.ads,
g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads,
g-soccon-vms.ads, g-soccon-mingw.ads, g-soccon-vxworks.ads,
g-socthi-vxworks.adb, g-soccon-freebsd.ads, g-soccon.ads:
Move common code out of GNAT.Sockets.Thin implementations and into
Thin_Common.
New constant SIZEOF_fd_set
New flag Has_Sockaddr_Len
New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6

* g-stsifd-sockets.adb
(Create): Remove call to Set_Length; use Set_Family to set the family
and (on appropriate platforms) length fields in struct sockaddr.

* g-socthi.adb, g-socthi.ads, g-socthi-vms.ads, g-socthi-vms.adb,
g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vxworks.adb,
g-soccon-darwin.ads, g-soccon-darwin.ads: New constant SIZEOF_fd_set
Move common code out of GNAT.Sockets.Thin implementations and into
Thin_Common.

* g-socket.ads, g-socket.adb:
Move common code out of GNAT.Sockets.Thin implementations and into
Thin_Common.
(Connect_Socket, Accept_Socket): Provide new versions of these two
routines that operate with a user specified timeout.
(Bind_Socket, Connect_Socket, Send_Socket): Remove calls to Set_Length,
this is now handled automatically by Set_Family on platforms that
require it.

* gen-soccon.c:
Move common code out of GNAT.Sockets.Thin implementations and into
Thin_Common.
(SIZEOF_sockaddr_in6): On platforms where IPv6 is not supported, define
this constant to 0 (not -1) because we use it to initialize an
unsigned_char value.
Align values for numeric constants only.
Handle the case of systems that do not support AF_INET6.
New constant SIZEOF_fd_set
New flag Has_Sockaddr_Len
New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6

* gsocket.h: New flag Has_Sockaddr_Len
New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6

From-SVN: r135612

16 years agotree-ssa-reassoc.c (fini_reassoc): Use the statistics infrastructure.
Richard Guenther [Tue, 20 May 2008 12:34:06 +0000 (12:34 +0000)]
tree-ssa-reassoc.c (fini_reassoc): Use the statistics infrastructure.

2008-05-20  Richard Guenther  <rguenther@suse.de>

* tree-ssa-reassoc.c (fini_reassoc): Use the statistics
infrastructure.
* tree-ssa-sccvn.c (process_scc): Likewise.
* tree-ssa-sink.c (execute_sink_code): Likewise.
* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.
* tree-vrp.c (process_assert_insertions): Likewise.
* tree-ssa-dce.c (eliminate_unnecessary_stmts): Likewise.
(perform_tree_ssa_dce): Likewise.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Likewise.
(dump_dominator_optimization_stats): Likewise.
* tree-vectorizer.c (vectorize_loops): Likewise.

* gcc.dg/tree-ssa/ssa-sink-1.c: Adjust.
* gcc.dg/tree-ssa/ssa-sink-2.c: Likewise.
* gcc.dg/tree-ssa/ssa-sink-3.c: Likewise.
* gcc.dg/tree-ssa/ssa-sink-4.c: Likewise.

From-SVN: r135611

16 years ago20061214-1.c: New test.
Sandra Loosemore [Tue, 20 May 2008 12:14:02 +0000 (08:14 -0400)]
20061214-1.c: New test.

2008-05-20  Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.c-torture/compile/20061214-1.c: New test.

From-SVN: r135610

16 years agoFinally reverted parts of my escaped patch. (quilt sucks).
Kai Tietz [Tue, 20 May 2008 10:24:43 +0000 (12:24 +0200)]
Finally reverted parts of my escaped patch. (quilt sucks).

From-SVN: r135607

16 years ago2008-05-20 Kai Tietz <kai.tietz@onevision.com>
Kai Tietz [Tue, 20 May 2008 10:08:42 +0000 (12:08 +0200)]
2008-05-20  Kai Tietz  <kai.tietz@onevision.com>

Reverted escaped patch.

From-SVN: r135606

16 years agotree-vn.c (vn_lookup_with_vuses): Do not use the alias oracle.
Richard Guenther [Tue, 20 May 2008 10:03:27 +0000 (10:03 +0000)]
tree-vn.c (vn_lookup_with_vuses): Do not use the alias oracle.

2008-05-20  Richard Guenther  <rguenther@suse.de>

* tree-vn.c (vn_lookup_with_vuses): Do not use the alias oracle.

* gcc.c-torture/execute/20080519-1.c: New testcase.

From-SVN: r135605

16 years agoi386-protos.h (ix86_return_in_memory): Removed.
Kai Tietz [Tue, 20 May 2008 10:00:20 +0000 (10:00 +0000)]
i386-protos.h (ix86_return_in_memory): Removed.

2008-05-20  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/i386-protos.h (ix86_return_in_memory): Removed.
(ix86_i386elf_return_in_memory): Likewise.
(ix86_i386interix_return_in_memory): Likewise.
* config/i386/i386-interix.h (TARGET_RETURN_IN_MEMORY): Removed.
(SUBTARGET_RETURN_IN_MEMORY): New.
* config/i386/i386elf.h: Likewise.
* config/i386/ptx4-i.h: Likewise.
* config/i386/sol2-10.h: Likewise.
* config/i386/sysv4.h: Likewise.
* config/i386/vx-common.h: Likewise.
* config/i386/i386.h (TARGET_RETURN_IN_MEMORY): Removed.
* config/i386/i386.c (ix86_return_in_memory): Made static and
make use of optional SUBTARGET_RETURN_IN_MEMORY macro.
(ix86_i386elf_return_in_memory): Removed.
(ix86_i386interix_return_in_memory): Removed.
(TARGET_RETURN_IN_MEMORY): Declared within i386.c only.
* target-def.h (TARGET_RETURN_IN_MEMORY): Remove protection #ifdef.

From-SVN: r135604

16 years ago* cselib.c (cselib_record_sets): Use correct mode for IF_THEN_ELSE.
Alexandre Oliva [Tue, 20 May 2008 06:44:59 +0000 (06:44 +0000)]
* cselib.c (cselib_record_sets): Use correct mode for IF_THEN_ELSE.

From-SVN: r135601

16 years agoRevert r135493 & r135463
Xinliang David Li [Tue, 20 May 2008 04:28:57 +0000 (04:28 +0000)]
Revert r135493 & r135463

From-SVN: r135599

16 years agoDaily bump.
GCC Administrator [Tue, 20 May 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135596

16 years agotree.c (substitute_placeholder_in_expr) <tcc_vl_exp>: Minor tweak.
Eric Botcazou [Mon, 19 May 2008 22:24:38 +0000 (22:24 +0000)]
tree.c (substitute_placeholder_in_expr) <tcc_vl_exp>: Minor tweak.

From-SVN: r135591

16 years agoFix a typo.
H.J. Lu [Mon, 19 May 2008 22:07:24 +0000 (15:07 -0700)]
Fix a typo.

From-SVN: r135589

16 years agotree.c (substitute_in_expr): Fix thinko.
Eric Botcazou [Mon, 19 May 2008 21:42:48 +0000 (21:42 +0000)]
tree.c (substitute_in_expr): Fix thinko.

* tree.c (substitute_in_expr) <tcc_vl_exp>: Fix thinko.

From-SVN: r135582

16 years agoi386.c (ix86_expand_vector_init_concat): Change sizes of operand array from 8/4 to...
H.J. Lu [Mon, 19 May 2008 19:42:11 +0000 (19:42 +0000)]
i386.c (ix86_expand_vector_init_concat): Change sizes of operand array from 8/4 to 4/2.

2008-05-19  H.J. Lu  <hongjiu.lu@intel.com>

* gcc/config/i386/i386.c (ix86_expand_vector_init_concat): Change
sizes of operand array from 8/4 to 4/2.
(ix86_expand_vector_init_general): Change size of operand array
from 32 to 16.  Remove op0, op1 and half_mode.

From-SVN: r135579

16 years agoi386.c (ix86_expand_vector_init_concat): New.
H.J. Lu [Mon, 19 May 2008 18:54:44 +0000 (18:54 +0000)]
i386.c (ix86_expand_vector_init_concat): New.

2008-05-19  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_vector_init_concat): New.
(ix86_expand_vector_init_interleave): Likewise.
(ix86_expand_vector_init_general): Use them.  Assert word_mode
== SImode when n_words == 4.

From-SVN: r135578

16 years agore PR fortran/36265 (character issue with gfortran)
Francois-Xavier Coudert [Mon, 19 May 2008 15:57:28 +0000 (15:57 +0000)]
re PR fortran/36265 (character issue with gfortran)

PR fortran/36265

* trans-expr.c (gfc_conv_string_tmp): Pick the correct type for
the temporary variable.

* gfortran.dg/char_length_11.f90: New test.

From-SVN: r135576

16 years agowidechar_intrinsics_5.f90: Add dg-do directive and use -fbackslash option.
Francois-Xavier Coudert [Mon, 19 May 2008 15:19:05 +0000 (15:19 +0000)]
widechar_intrinsics_5.f90: Add dg-do directive and use -fbackslash option.

* gfortran.dg/widechar_intrinsics_5.f90: Add dg-do directive and
use -fbackslash option.

From-SVN: r135575

16 years agochar_cast_2.f90: Adjust count in scanning the tree dump file.
Francois-Xavier Coudert [Mon, 19 May 2008 14:28:19 +0000 (14:28 +0000)]
char_cast_2.f90: Adjust count in scanning the tree dump file.

* gfortran.dg/char_cast_2.f90: Adjust count in scanning the tree
dump file.

From-SVN: r135574

16 years ago* gfortran.dg/bind_c_module.f90: Adjust expected error messages.
Francois-Xavier Coudert [Mon, 19 May 2008 14:01:40 +0000 (14:01 +0000)]
* gfortran.dg/bind_c_module.f90: Adjust expected error messages.

From-SVN: r135530

16 years agoforgot to save changelog back when updating the doc on saturday.
Kenneth Zadeck [Mon, 19 May 2008 14:01:28 +0000 (14:01 +0000)]
forgot to save changelog back when updating the doc on saturday.

From-SVN: r135529

16 years agosimplify.c (gfc_simplify_dble, [...]): Initialize result variable to avoid warnings.
Francois-Xavier Coudert [Mon, 19 May 2008 12:22:39 +0000 (12:22 +0000)]
simplify.c (gfc_simplify_dble, [...]): Initialize result variable to avoid warnings.

* simplify.c (gfc_simplify_dble, gfc_simplify_real): Initialize
result variable to avoid warnings.

From-SVN: r135528

16 years agochar_cast_1.f90: Adjust count in scanning the tree dump file.
Francois-Xavier Coudert [Mon, 19 May 2008 10:58:39 +0000 (10:58 +0000)]
char_cast_1.f90: Adjust count in scanning the tree dump file.

* gfortran.dg/char_cast_1.f90: Adjust count in scanning the tree
dump file.

From-SVN: r135527

16 years agoi386.c (ix86_secondary_reload): New static function.
Uros Bizjak [Mon, 19 May 2008 08:14:04 +0000 (10:14 +0200)]
i386.c (ix86_secondary_reload): New static function.

        * config/i386/i386.c (ix86_secondary_reload): New static function.
        (TARGET_SECONDARY_RELOAD): New define.
        * config/i386/i386.h (SECONDARY_OUTPUT_RELOAD_CLASS): Remove.
        * config/i386/i386.md (reload_outqi): Remove.

From-SVN: r135526

16 years agoAdd file omitted from last checkin.
Kaveh Ghazi [Mon, 19 May 2008 06:57:43 +0000 (06:57 +0000)]
Add file omitted from last checkin.

From-SVN: r135525

16 years agoDaily bump.
GCC Administrator [Mon, 19 May 2008 00:17:38 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135521

16 years agore PR middle-end/35509 (builtin isinf() mismatch to compile-time substitution)
Kaveh R. Ghazi [Sun, 18 May 2008 23:19:38 +0000 (23:19 +0000)]
re PR middle-end/35509 (builtin isinf() mismatch to compile-time substitution)

PR middle-end/35509

* builtins.c (mathfn_built_in_1): Renamed from mathfn_built_in.
Add `implicit' parameter.  Handle BUILT_IN_SIGNBIT.
(mathfn_built_in): Rewrite in terms of mathfn_built_in_1.
(fold_builtin_classify): Handle BUILT_IN_ISINF_SIGN.
(fold_builtin_1): Likewise.
* builtins.def (BUILT_IN_ISINF_SIGN): New.
c-common.c (check_builtin_function_arguments): Handle
BUILT_IN_ISINF_SIGN.
* doc/extend.texi: Document __builtin_isinf_sign.
* fold-const.c (operand_equal_p): Handle COND_EXPR.

testsuite:
* gcc.dg/builtins-error.c: Test __builtin_isinf_sign.
* gcc.dg/tg-tests.h: Likewise.  Mark variables volatile.
* gcc.dg/torture/builtin-isinf_sign-1.c: New test.

From-SVN: r135517

16 years agointrinsic.c (char_conversions, ncharconv): New static variables.
Francois-Xavier Coudert [Sun, 18 May 2008 22:45:05 +0000 (22:45 +0000)]
intrinsic.c (char_conversions, ncharconv): New static variables.

* intrinsic.c (char_conversions, ncharconv): New static variables.
(find_char_conv): New function.
(add_functions): Add simplification functions for ADJUSTL and
ADJUSTR. Don't check the kind of their argument. Add checking for
LGE, LLE, LGT and LLT.
(add_subroutines): Fix argument type for SLEEP. Fix argument name
for SYSTEM.
(add_char_conversions): New function.
(gfc_intrinsic_init_1): Call add_char_conversions.
(gfc_intrinsic_done_1): Free char_conversions.
(check_arglist): Use kind == 0 as a signal that we don't want
the kind value to be checked.
(do_simplify): Also simplify character functions.
(gfc_convert_chartype): New function
* trans-array.c (gfc_trans_array_ctor_element): Don't force the
use of default character type.
(gfc_trans_array_constructor_value): Likewise.
(get_array_ctor_var_strlen): Use integer kind to build an integer
instead of a character kind!
(gfc_build_constant_array_constructor): Don't force the use of
default character type.
(gfc_conv_loop_setup): Likewise.
* trans-expr.c (gfc_conv_string_tmp): Don't force the use of
default character type. Allocate enough memory for wide strings.
(gfc_conv_concat_op): Make sure operand kind are the same.
(string_to_single_character): Remove gfc_ prefix. Reindent.
Don't force the use of default character type.
(gfc_conv_scalar_char_value): Likewise.
(gfc_build_compare_string): Call string_to_single_character.
(fill_with_spaces): New function
(gfc_trans_string_copy): Add kind arguments. Use them to deal
with wide character kinds.
(gfc_conv_statement_function): Whitespace fix. Call
gfc_trans_string_copy with new kind arguments.
(gfc_conv_substring_expr): Call gfc_build_wide_string_const
instead of using gfc_widechar_to_char.
(gfc_conv_string_parameter): Don't force the use of default
character type.
(gfc_trans_scalar_assign): Pass kind args to gfc_trans_string_copy.
* intrinsic.h (gfc_check_lge_lgt_lle_llt, gfc_convert_char_constant,
gfc_resolve_adjustl, gfc_resolve_adjustr): New prototypes.
* decl.c (gfc_set_constant_character_len): Don't assert the
existence of a single character kind.
* trans-array.h (gfc_trans_string_copy): New prototype.
* gfortran.h (gfc_check_character_range, gfc_convert_chartype):
New prototypes.
* error.c (print_wide_char_into_buffer): New function lifting
code from gfc_print_wide_char. Fix order to output '\x??' instead
of 'x\??'.
(gfc_print_wide_char): Call print_wide_char_into_buffer.
(show_locus): Call print_wide_char_into_buffer with buffer local
to this function.
* trans-const.c (gfc_build_wide_string_const): New function.
(gfc_conv_string_init): Deal with wide characters strings
constructors.
(gfc_conv_constant_to_tree): Call gfc_build_wide_string_const.
* trans-stmt.c (gfc_trans_label_assign): Likewise.
(gfc_trans_character_select): Deal with wide strings.
* expr.c (gfc_check_assign): Allow conversion between character
kinds on assignment.
* trans-const.h (gfc_build_wide_string_const): New prototype.
* trans-types.c (gfc_get_character_type_len_for_eltype,
gfc_get_character_type_len): Create too variants of the old
gfc_get_character_type_len, one getting kind argument and the
other one directly taking a type tree.
* trans.h (gfor_fndecl_select_string_char4,
gfor_fndecl_convert_char1_to_char4,
gfor_fndecl_convert_char4_to_char1): New prototypes.
* trans-types.h (gfc_get_character_type_len_for_eltype): New
prototype.
* resolve.c (resolve_operator): Exit early when kind mismatches
are detected, because that makes us issue an error message later.
(validate_case_label_expr): Fix wording of error message.
* iresolve.c (gfc_resolve_adjustl, gfc_resolve_adjustr): New
functions.
(gfc_resolve_pack): Call _char4 variants of library function
when dealing with wide characters.
(gfc_resolve_reshape): Likewise.
(gfc_resolve_spread): Likewise.
(gfc_resolve_transpose): Likewise.
(gfc_resolve_unpack): Likewise.
* target-memory.c (size_character): Take character kind bit size
correctly into account (not that it changes anything for now, but
it's more generic).
(gfc_encode_character): Added gfc_ prefix. Encoding each
character of a string by calling native_encode_expr for the
corresponding unsigned integer.
(gfc_target_encode_expr): Add gfc_ prefix to encode_character.
* trans-decl.c (gfc_build_intrinsic_function_decls): Build
gfor_fndecl_select_string_char4, gfor_fndecl_convert_char1_to_char4
and gfor_fndecl_convert_char4_to_char1.
* target-memory.h (gfc_encode_character): New prototype.
* arith.c (gfc_check_character_range): New function.
(eval_intrinsic): Allow non-default character kinds.
* check.c (gfc_check_access_func): Only allow default
character kind arguments.
(gfc_check_chdir): Likewise.
(gfc_check_chdir_sub): Likewise.
(gfc_check_chmod): Likewise.
(gfc_check_chmod_sub): Likewise.
(gfc_check_lge_lgt_lle_llt): New function.
(gfc_check_link): Likewise.
(gfc_check_link_sub): Likewise.
(gfc_check_symlnk): Likewise.
(gfc_check_symlnk_sub): Likewise.
(gfc_check_rename): Likewise.
(gfc_check_rename_sub): Likewise.
(gfc_check_fgetputc_sub): Likewise.
(gfc_check_fgetput_sub): Likewise.
(gfc_check_stat): Likewise.
(gfc_check_stat_sub): Likewise.
(gfc_check_date_and_time): Likewise.
(gfc_check_ctime_sub): Likewise.
(gfc_check_fdate_sub): Likewise.
(gfc_check_gerror): Likewise.
(gfc_check_getcwd_sub): Likewise.
(gfc_check_getarg): Likewise.
(gfc_check_getlog): Likewise.
(gfc_check_hostnm): Likewise.
(gfc_check_hostnm_sub): Likewise.
(gfc_check_ttynam_sub): Likewise.
(gfc_check_perror): Likewise.
(gfc_check_unlink): Likewise.
(gfc_check_unlink_sub): Likewise.
(gfc_check_system_sub): Likewise.
* primary.c (got_delim): Perform correct character range checking
for all kinds.
* trans-intrinsic.c (gfc_conv_intrinsic_conversion): Generate
calls to library functions convert_char4_to_char1 and
convert_char1_to_char4 for character conversions.
(gfc_conv_intrinsic_char): Allow all character kings.
(gfc_conv_intrinsic_strcmp): Fix whitespace.
(gfc_conv_intrinsic_repeat): Take care of all character kinds.
* intrinsic.texi: For all GNU intrinsics accepting character
arguments, mention that they're restricted to the default kind.
* simplify.c (simplify_achar_char): New function.
(gfc_simplify_achar, gfc_simplify_char): Call simplify_achar_char.
gfc_simplify_ichar): Don't error out for wide characters.
(gfc_convert_char_constant): New function.

* gfortran.dg/achar_3.f90: Adjust error messages.
* gfortran.dg/achar_5.f90: New test.
* gfortran.dg/achar_6.F90: New test.
* gfortran.dg/widechar_1.f90: New test.
* gfortran.dg/widechar_2.f90: New test.
* gfortran.dg/widechar_3.f90: New test.
* gfortran.dg/widechar_4.f90: New test.
* gfortran.dg/widechar_intrinsics_1.f90: New test.
* gfortran.dg/widechar_intrinsics_2.f90: New test.
* gfortran.dg/widechar_intrinsics_3.f90: New test.
* gfortran.dg/widechar_intrinsics_4.f90: New test.
* gfortran.dg/widechar_intrinsics_5.f90: New test.
* gfortran.dg/widechar_select_1.f90: New test.
* gfortran.dg/widechar_select_2.f90: New test.

From-SVN: r135515

16 years agotree-ssa-dom.c (tree_ssa_dominator_optimize): If some blocks need EH cleanup at the...
Eric Botcazou [Sun, 18 May 2008 22:36:30 +0000 (22:36 +0000)]
tree-ssa-dom.c (tree_ssa_dominator_optimize): If some blocks need EH cleanup at the end of the pass...

* tree-ssa-dom.c (tree_ssa_dominator_optimize): If some blocks need
EH cleanup at the end of the pass, search for those that have been
turned into forwarder blocks and do the cleanup on their successor.

From-SVN: r135514

16 years agoUpdate ChangeLog which was forgotten in the check in:
Tobias Burnus [Sun, 18 May 2008 21:44:42 +0000 (23:44 +0200)]
Update ChangeLog which was forgotten in the check in:

> r135512 | tkoenig | 2008-05-18 22:39:04 +0200 (Sun, 18 May 2008) | 158 lines

From-SVN: r135513

16 years agoin_pack.m4 (internal_pack_'rtype_code`): Destination pointer is restrict.
Thomas Koenig [Sun, 18 May 2008 20:39:04 +0000 (20:39 +0000)]
in_pack.m4 (internal_pack_'rtype_code`): Destination pointer is restrict.

2008-05-18  Thomas Koenig  <tkoenig@gcc.gnu.org>

* m4/in_pack.m4 (internal_pack_'rtype_code`):  Destination
pointer is restrict.
* m4/transpose.m4 (transpose_'rtype_code`):  Likewise.
* m4/pack.m4 (pack_'rtype_code`):  Likewise.
* m4/spread.m4 (spread_'rtype_code`):  Likewise.
(spread_scalar_'rtype_code`): Likewise.
* m4/iforeach.m4 (name`'rtype_qual`_'atype_code):  Likewise.
* m4/eoshift1.m4 (eoshift1):  Likewise.
* m4/eoshift3.m4 (eoshift3):  Likewise.
* m4/in_unpack.m4 (internal_unpack_'rtype_ccode`):  Likewise.
* m4/unpack.m4 (unpack0_'rtype_code`):  Likewise.
(unpack1_'rtype_code`):  Likewise.
* intrinsics/pack_generic.c (pack_generic.c):  Likewise.
* intrinsics/unpack_generic.c (unpack_internal):  Likewise.
* intrinsics/eoshift0.c (eoshift0):  Likewise.
* intrinsics/eoshift2.c (eoshift2):  Likewise.
* intrinsics/reshape_generic.c (reshape_internal):  Likewise.
* intrinsics/reshape_packed.c (reshape_packed):  Likewise.
* generated/eoshift1_16.c: Regenerated.
* generated/eoshift1_4.c: Regenerated.
* generated/eoshift1_8.c: Regenerated.
* generated/eoshift3_16.c: Regenerated.
* generated/eoshift3_4.c: Regenerated.
* generated/eoshift3_8.c: Regenerated.
* generated/in_pack_c10.c: Regenerated.
* generated/in_pack_c16.c: Regenerated.
* generated/in_pack_c4.c: Regenerated.
* generated/in_pack_c8.c: Regenerated.
* generated/in_pack_i1.c: Regenerated.
* generated/in_pack_i16.c: Regenerated.
* generated/in_pack_i2.c: Regenerated.
* generated/in_pack_i4.c: Regenerated.
* generated/in_pack_i8.c: Regenerated.
* generated/in_pack_r10.c: Regenerated.
* generated/in_pack_r16.c: Regenerated.
* generated/in_pack_r4.c: Regenerated.
* generated/in_pack_r8.c: Regenerated.
* generated/in_unpack_c10.c: Regenerated.
* generated/in_unpack_c16.c: Regenerated.
* generated/in_unpack_c4.c: Regenerated.
* generated/in_unpack_c8.c: Regenerated.
* generated/in_unpack_i1.c: Regenerated.
* generated/in_unpack_i16.c: Regenerated.
* generated/in_unpack_i2.c: Regenerated.
* generated/in_unpack_i4.c: Regenerated.
* generated/in_unpack_i8.c: Regenerated.
* generated/in_unpack_r10.c: Regenerated.
* generated/in_unpack_r16.c: Regenerated.
* generated/in_unpack_r4.c: Regenerated.
* generated/in_unpack_r8.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/pack_c10.c: Regenerated.
* generated/pack_c16.c: Regenerated.
* generated/pack_c4.c: Regenerated.
* generated/pack_c8.c: Regenerated.
* generated/pack_i1.c: Regenerated.
* generated/pack_i16.c: Regenerated.
* generated/pack_i2.c: Regenerated.
* generated/pack_i4.c: Regenerated.
* generated/pack_i8.c: Regenerated.
* generated/pack_r10.c: Regenerated.
* generated/pack_r16.c: Regenerated.
* generated/pack_r4.c: Regenerated.
* generated/pack_r8.c: Regenerated.
* generated/spread_c10.c: Regenerated.
* generated/spread_c16.c: Regenerated.
* generated/spread_c4.c: Regenerated.
* generated/spread_c8.c: Regenerated.
* generated/spread_i1.c: Regenerated.
* generated/spread_i16.c: Regenerated.
* generated/spread_i2.c: Regenerated.
* generated/spread_i4.c: Regenerated.
* generated/spread_i8.c: Regenerated.
* generated/spread_r10.c: Regenerated.
* generated/spread_r16.c: Regenerated.
* generated/spread_r4.c: Regenerated.
* generated/spread_r8.c: Regenerated.
* generated/transpose_c10.c: Regenerated.
* generated/transpose_c16.c: Regenerated.
* generated/transpose_c4.c: Regenerated.
* generated/transpose_c8.c: Regenerated.
* generated/transpose_i16.c: Regenerated.
* generated/transpose_i4.c: Regenerated.
* generated/transpose_i8.c: Regenerated.
* generated/transpose_r10.c: Regenerated.
* generated/transpose_r16.c: Regenerated.
* generated/transpose_r4.c: Regenerated.
* generated/transpose_r8.c: Regenerated.
* generated/unpack_c10.c: Regenerated.
* generated/unpack_c16.c: Regenerated.
* generated/unpack_c4.c: Regenerated.
* generated/unpack_c8.c: Regenerated.
* generated/unpack_i1.c: Regenerated.
* generated/unpack_i16.c: Regenerated.
* generated/unpack_i2.c: Regenerated.
* generated/unpack_i4.c: Regenerated.
* generated/unpack_i8.c: Regenerated.
* generated/unpack_r10.c: Regenerated.
* generated/unpack_r16.c: Regenerated.
* generated/unpack_r4.c: Regenerated.
* generated/unpack_r8.c: Regenerated.

From-SVN: r135512

16 years agore PR target/36090 (ppc64 cacoshl miscompilation)
Jakub Jelinek [Sun, 18 May 2008 20:19:03 +0000 (22:19 +0200)]
re PR target/36090 (ppc64 cacoshl miscompilation)

PR target/36090
* gcc.c-torture/execute/20080502-1.c: New test.

From-SVN: r135508

16 years agostat_1.f90: Skip on mingw.
Francois-Xavier Coudert [Sun, 18 May 2008 17:55:39 +0000 (17:55 +0000)]
stat_1.f90: Skip on mingw.

* gfortran.dg/stat_1.f90: Skip on mingw.
* gfortran.dg/stat_2.f90: Skip on mingw.

From-SVN: r135506

16 years agorevert: i386.c (ix86_secondary_reload): New static function.
Uros Bizjak [Sun, 18 May 2008 17:00:00 +0000 (19:00 +0200)]
revert: i386.c (ix86_secondary_reload): New static function.

Revert:
2008-05-18  Uros Bizjak  <ubizjak@gmail.com>

        * config/i386/i386.c (ix86_secondary_reload): New static function.
        (TARGET_SECONDARY_RELOAD): New define.
        * config/i386/i386.h (SECONDARY_OUTPUT_RELOAD_CLASS): Remove.
        * config/i386/i386.md (reload_outqi): Remove.

From-SVN: r135505

16 years agotree-cfg.c (verify_gimple_expr): Allow conversions from pointers to sizetype and...
Richard Guenther [Sun, 18 May 2008 16:34:39 +0000 (16:34 +0000)]
tree-cfg.c (verify_gimple_expr): Allow conversions from pointers to sizetype and vice versa.

2008-05-18  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_gimple_expr): Allow conversions from
pointers to sizetype and vice versa.

From-SVN: r135504

16 years agoi386.c (ix86_secondary_reload): New static function.
Uros Bizjak [Sun, 18 May 2008 13:42:01 +0000 (15:42 +0200)]
i386.c (ix86_secondary_reload): New static function.

* config/i386/i386.c (ix86_secondary_reload): New static function.
(TARGET_SECONDARY_RELOAD): New define.
* config/i386/i386.h (SECONDARY_OUTPUT_RELOAD_CLASS): Remove.
* config/i386/i386.md (reload_outqi): Remove.

From-SVN: r135499

16 years agoselect.c: Moved content to select_inc.c.
Francois-Xavier Coudert [Sun, 18 May 2008 12:00:20 +0000 (12:00 +0000)]
select.c: Moved content to select_inc.c.

        * runtime/select.c: Moved content to select_inc.c. Include it.
        Add macros for different character types.
        * runtime/select_inc.c: New file.
        * runtime/convert_char.c: New file.
        * intrinsics/pack_generic.c (pack_char4, pack_s_char4): New
        functions.
        * intrinsics/transpose_generic.c (transpose_char4): New function.
        * intrinsics/spread_generic.c (spread_char4, spread_char4_scalar):
        New functions.
        * intrinsics/unpack_generic.c (unpack1_char4, unpack0_char4):
        New functions.
        * intrinsics/reshape_generic.c (reshape_char): Use
        gfc_charlen_type as type for length variables.
        (reshape_char4): New function.
        * gfortran.map (GFORTRAN_1.1): Add _gfortran_select_string_char4,
        _gfortran_convert_char1_to_char4, _gfortran_convert_char4_to_char1,
        _gfortran_transpose_char4, _gfortran_spread_char4,
        _gfortran_spread_char4_scalar, _gfortran_reshape_char4,
        _gfortran_pack_char4, _gfortran_pack_s_char4,
        _gfortran_unpack0_char4 and _gfortran_unpack1_char4.
        * Makefile.am: Add runtime/convert_char.c.
        * Makefile.in: Regenerate.

From-SVN: r135496

16 years agore PR fortran/36251 (PUBLIC and PRIVATE abuse)
Tobias Burnus [Sun, 18 May 2008 11:10:11 +0000 (13:10 +0200)]
re PR fortran/36251 (PUBLIC and PRIVATE abuse)

2008-05-18  Steven G. Kargl  <kargls@comcast.net>

        PR fortran/36251
        * symbol.c (check_conflict): Issue errors for abuse of PUBLIC,
        * PRIVATE,
        and BIND(C).
        * resolve.c (gfc_verify_binding_labels): Fix NULL pointer
        * dereference.

2008-05-18  Steven G. Kargl  <kargls@comcast.net>

        PR fortran/36251
        gfortran.dg/public_private_module.f90: new test.
        gfortran.dg/bind_c_module.f90: new test.

From-SVN: r135495

16 years agocomment/style fixes
Xinliang David Li [Sun, 18 May 2008 04:37:59 +0000 (04:37 +0000)]
comment/style fixes

From-SVN: r135493

16 years agoDaily bump.
GCC Administrator [Sun, 18 May 2008 00:18:07 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r135490

16 years agosh.c (sh_output_mi_thunk): Update the use of init_flow.
Kaz Kojima [Sat, 17 May 2008 23:27:27 +0000 (23:27 +0000)]
sh.c (sh_output_mi_thunk): Update the use of init_flow.

* config/sh/sh.c (sh_output_mi_thunk): Update the use of
init_flow.

From-SVN: r135483

16 years agointrinsic.texi: Correct description of GET_COMMAND_ARGUMENT and GET_ENVIRONMENT_VARIA...
Tobias Burnus [Sat, 17 May 2008 22:28:51 +0000 (00:28 +0200)]
intrinsic.texi: Correct description of GET_COMMAND_ARGUMENT and GET_ENVIRONMENT_VARIABLE...

2008-05-16  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.texi: Correct description of GET_COMMAND_ARGUMENT
        and GET_ENVIRONMENT_VARIABLE; fix keyword= name for GETENV,
        GETLOG, GMTIME, HOSTNM, IRAND, ITIME, KILL.
        Move LOG_GAMMA after LOG10.

From-SVN: r135482

16 years agolist_read.c (list_formatted_read_scalar): Declare type as volatile to shut up compile...
Thomas Koenig [Sat, 17 May 2008 22:24:06 +0000 (22:24 +0000)]
list_read.c (list_formatted_read_scalar): Declare type as volatile to shut up compiler warning.

2008-05-17  Thomas Koenig  <tkoenig@gcc.gnu.org>

* io/list_read.c (list_formatted_read_scalar):  Declare
type as volatile to shut up compiler warning.

From-SVN: r135480

16 years agoinitialization_19.f90: New test.
Tobias Burnus [Sat, 17 May 2008 21:32:06 +0000 (23:32 +0200)]
initialization_19.f90: New test.

2008-05-17  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/initialization_19.f90: New test.

From-SVN: r135479

16 years agortl.texi (RTL_CONST_CALL_P, [...]): Fixed typos.
Kenneth Zadeck [Sat, 17 May 2008 21:03:29 +0000 (21:03 +0000)]
rtl.texi (RTL_CONST_CALL_P, [...]): Fixed typos.

2008-05-17  Kenneth Zadeck <zadeck@naturalbridge.com>

* doc/rtl.texi (RTL_CONST_CALL_P, RTL_PURE_CALL_P): Fixed typos.
* df-problems.c (simulation routines): Fixed block comment to
properly say how to add forwards scanning functions.

From-SVN: r135478

16 years agoRemove bogus lines added in previous (Rev.
Tobias Burnus [Sat, 17 May 2008 13:54:12 +0000 (15:54 +0200)]
Remove bogus lines added in previous (Rev.

Remove bogus lines added in previous (Rev. 135471)
commit.

From-SVN: r135472

16 years agointrinsic.c (add_functions): Change FLUSH(C) to FLUSH(UNIT).
Tobias Burnus [Sat, 17 May 2008 13:49:44 +0000 (15:49 +0200)]
intrinsic.c (add_functions): Change FLUSH(C) to FLUSH(UNIT).

2008-05-16  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.c (add_functions): Change FLUSH(C) to FLUSH(UNIT).
        * intrinsic.texi: Change INTEGER(*) to INTEGER; fix keyword=  name for
        ABS, ADJUSTL, AINT, ALLOCATED, ANINT, ASSOCIATED, C_ASSOCIATED,
        CEILING, DBLE, DFLOAT, DOT_PRODUCT, DREAL, FLOAT, FLOOR, GET_COMMAND.

From-SVN: r135471

16 years agotree-inline.c (setup_one_parameter): Remove dead code.
Eric Botcazou [Sat, 17 May 2008 13:32:23 +0000 (13:32 +0000)]
tree-inline.c (setup_one_parameter): Remove dead code.

* tree-inline.c (setup_one_parameter): Remove dead code.

From-SVN: r135470

16 years agofold-const.c (fold_unary): Fold the cast into a BIT_AND_EXPR only for an INTEGER_TYPE.
Eric Botcazou [Sat, 17 May 2008 13:06:21 +0000 (13:06 +0000)]
fold-const.c (fold_unary): Fold the cast into a BIT_AND_EXPR only for an INTEGER_TYPE.

* fold-const.c (fold_unary) <CASE_CONVERT>: Fold the cast into
a BIT_AND_EXPR only for an INTEGER_TYPE.

From-SVN: r135467

16 years agotrans.c (gnat_to_gnu): Account for dummy types pointed to by the converted pointer...
Eric Botcazou [Sat, 17 May 2008 08:21:08 +0000 (08:21 +0000)]
trans.c (gnat_to_gnu): Account for dummy types pointed to by the converted pointer types.

* trans.c (gnat_to_gnu) <N_Validate_Unchecked_Conversion>: Account
for dummy types pointed to by the converted pointer types.

From-SVN: r135464

16 years agoCheck in tree-dce enh to trunk
Xinliang David Li [Sat, 17 May 2008 07:36:10 +0000 (07:36 +0000)]
Check in tree-dce enh to trunk

From-SVN: r135463

16 years agolinux.h (NO_PROFILE_COUNTERS): Undef before overriding.
David S. Miller [Sat, 17 May 2008 00:19:28 +0000 (00:19 +0000)]
linux.h (NO_PROFILE_COUNTERS): Undef before overriding.

* config/sparc/linux.h (NO_PROFILE_COUNTERS): Undef before
overriding.
* config/sparc/linux64.h (NO_PROFILE_COUNTERS): Likewise.

From-SVN: r135459

16 years agoDaily bump.
GCC Administrator [Sat, 17 May 2008 00:17:32 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135457

16 years agosystem_error: Align to current draft specifications.
Benjamin Kosnik [Fri, 16 May 2008 21:55:00 +0000 (21:55 +0000)]
system_error: Align to current draft specifications.

2008-05-16  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/system_error: Align to current draft specifications.
* src/system_error.cc: Same.
* src/functexcept.cc: Adjust for corrected system_error construction.
* include/std/ostream: Adjust error_code inserter.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Remove sys_nerr test.
* config/abi/pre/gnu.ver: Add new exports.

* testsuite/util/testsuite_error.h: Consolidate error testing
utilities here.
* testsuite/19_diagnostics/error_code/cons/1.cc: Use
testsuite_error, adjust line numbers and constructor calls.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
* testsuite/19_diagnostics/error_category/cons/default.cc: Same.
* testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
* testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
* testsuite/19_diagnostics/system_error/cons_virtual_derivation.cc:
Same.
* testsuite/19_diagnostics/system_error/cons-1.cc: Same.
* testsuite/19_diagnostics/system_error/what-1.cc: Same.
* testsuite/19_diagnostics/system_error/what-2.cc: Same.
* testsuite/19_diagnostics/system_error/what-big.cc: Same.
* testsuite/19_diagnostics/system_error/what-3.cc: Same.
* testsuite/19_diagnostics/system_error/what-4.cc: Same.

From-SVN: r135446

16 years agore PR fortran/35756 (incorrect WHERE for functions in ELSEWHERE and overlaps)
Paul Thomas [Fri, 16 May 2008 21:12:04 +0000 (21:12 +0000)]
re PR fortran/35756 (incorrect WHERE for functions in ELSEWHERE and overlaps)

2008-05-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35756
PR fortran/35759
* trans-stmt.c (gfc_trans_where): Tighten up the dependency
check for calling gfc_trans_where_3.

PR fortran/35743
* trans-stmt.c (gfc_trans_where_2): Set the mask size to zero
if it is calculated to be negative.

PR fortran/35745
* trans-stmt.c (gfc_trans_where_3, gfc_trans_where_assign): Set
ss->where for scalar right hand sides.
* trans-array.c (gfc_add_loop_ss_code): If ss->where is set do
not evaluate scalars outside the loop.  Clean up whitespace.
* trans.h : Add a bitfield 'where' to gfc_ss.

2008-05-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35756
PR fortran/35759
* gfortran.dg/where_1.f90: New test.

PR fortran/35743
PR fortran/35745
* gfortran.dg/where_2.f90: New test.

From-SVN: r135443

16 years agolibgfortran.h: Increase GFC_MAX_DIMENSIONS to 15.
Tobias Burnus [Fri, 16 May 2008 21:05:08 +0000 (23:05 +0200)]
libgfortran.h: Increase GFC_MAX_DIMENSIONS to 15.

2008-05-16  Tobias Burnus  <burnus@net-b.de>

        * libgfortran.h: Increase GFC_MAX_DIMENSIONS to 15.
        * array.c (gfc_match_array_spec): Error with -std=f2003 if rank > 7.

2008-05-16  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/rank_1.f90
        * gfortran.dg/rank_2.f90

From-SVN: r135442

16 years ago[multiple changes]
Jerry DeLisle [Fri, 16 May 2008 20:20:08 +0000 (20:20 +0000)]
[multiple changes]

2008-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* gfortran.dg/missing_parens_1.f90: Update test.
* gfortran.dg/fmt_t_7.f: Update test.

2008-05-16  Steven G. Kargl  <kargls@comcast.net>

* gfortran.dg/int_3.f90: New test.
* gfortran.dg/and_or_xor.f90: New test.

From-SVN: r135441

16 years agore PR fortran/27997 (Fortran 2003: Support type-spec for array constructor)
Daniel Kraft [Fri, 16 May 2008 19:50:04 +0000 (21:50 +0200)]
re PR fortran/27997 (Fortran 2003: Support type-spec for array constructor)

2008-04-16  Daniel Kraft  <d@domob.eu>

        PR fortran/27997
        * gfortran.h:  Added field "length_from_typespec" to gfc_charlength.
        * aray.c (gfc_match_array_constructor):  Added code to parse
        * typespec.
        (check_element_type, check_constructor_type, gfc_check_constructor_type):
        Extended to support explicit typespec on constructor.
        (gfc_resolve_character_array_constructor):  Pad strings correctly for
        explicit, constant character length.
        * trans-array.c:  New static global variable
        * "typespec_chararray_ctor"
        (gfc_trans_array_constructor):  New code to support explicit but dynamic
        character lengths.

2008-04-16  Daniel Kraft  <d@domob.eu>

        PR fortran/27997
        * gfortran.dg/array_constructor_type_1.f03:  New test
        * gfortran.dg/array_constructor_type_2.f03:  New test
        * gfortran.dg/array_constructor_type_3.f03:  New test
        * gfortran.dg/array_constructor_type_4.f03:  New test
        * gfortran.dg/array_constructor_type_5.f03:  New test
        * gfortran.dg/array_constructor_type_6.f03:  New test
        * gfortran.dg/array_constructor_type_7.f03:  New test
        * gfortran.dg/array_constructor_type_8.f03:  New test
        * gfortran.dg/array_constructor_type_9.f:  New test
        * gfortran.dg/array_constructor_type_10.f03:  New test
        * gfortran.dg/array_constructor_type_11.f03:  New test
        * gfortran.dg/array_constructor_type_12.f03:  New test
        * gfortran.dg/array_constructor_type_13.f90:  New test
        * gfortran.dg/array_constructor_type_14.f03:  New test
        * gfortran.dg/array_constructor_type_15.f03:  New test
        * gfortran.dg/array_constructor_type_16.f03:  New test
        * gfortran.dg/array_constructor_type_17.f03:  New test
        * gfortran.dg/array_constructor_type_18.f03:  New test

From-SVN: r135439

16 years agore PR target/36246 (Reload chooses too wide mode for reg->mem->xmmreg reload)
Uros Bizjak [Fri, 16 May 2008 18:34:04 +0000 (20:34 +0200)]
re PR target/36246 (Reload chooses too wide mode for reg->mem->xmmreg reload)

PR target/36246
* config/i386/i386.h (SECONDARY_MEMORY_NEEDED_MODE): New define.

testsuite/ChangeLog:

PR target/36246
* gcc.target/i386/pr36246.c: New test.

From-SVN: r135437

16 years agoRotate ChangeLog, hopefully restoring svn blame history for older commits.
Janne Blomqvist [Fri, 16 May 2008 18:25:27 +0000 (21:25 +0300)]
Rotate ChangeLog, hopefully restoring svn blame history for older commits.

From-SVN: r135436

16 years agoPart 1.1 of PR25561.
Janne Blomqvist [Fri, 16 May 2008 17:42:44 +0000 (20:42 +0300)]
Part 1.1 of PR25561.

2008-05-15  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/25561
* io/io.h (struct fbuf): Change pointer to position offset.
* io/fbuf.c (fbuf_init): Reduce default size of buffer, ptr=>pos
changes.
(fbuf_reset): ptr=>pos changes.
(fbuf_alloc): If the request doesn't fit, don't waste memory by
keeping flushed bytes. ptr=>pos changes.
(fbuf_flush): ptr=>pos changes.
(fbuf_seek): Don't seek past the left tab limit, don't update active
byte count.
* io/open.c (new_unit): If RECL has been specified, used that as
initial buffer size.

From-SVN: r135433

16 years agoFix fallout from part 1 of PR25561 patch.
Janne Blomqvist [Fri, 16 May 2008 17:37:30 +0000 (20:37 +0300)]
Fix fallout from part 1 of PR25561 patch.

2008-05-16  Janne Blomqvist  <jb@gcc.gnu.org>

        PR libfortran/35632
        * io/open.c (new_unit): Set stream position to correct value.

From-SVN: r135432

16 years agore PR fortran/34325 (Wrong error message for syntax error)
Jerry DeLisle [Fri, 16 May 2008 16:44:28 +0000 (16:44 +0000)]
re PR fortran/34325 (Wrong error message for syntax error)

2008-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

    PR fortran/34325
    * decl.c (match_attr_spec): Check for matching pairs of parenthesis.
    * expr.c (gfc_specification_expr): Supplement the error message with the
    type that was found.
    * resolve.c (gfc_resolve_index): Likewise.
    * match.c (gfc_match_parens): Clarify error message with "at or before".
    (gfc_match_do): Check for matching pairs of parenthesis.

From-SVN: r135428

16 years agointrinsic.texi: Write Fortran 77/90/95 instead of F77/90/95...
Tobias Burnus [Fri, 16 May 2008 16:29:36 +0000 (18:29 +0200)]
intrinsic.texi: Write Fortran 77/90/95 instead of F77/90/95...

2008-05-16  Tobias Burnus  <burnus@net-b.de

        * intrinsic.texi: Write Fortran 77/90/95 instead of F77/90/95;
        add missing KIND argument to ACHAR and NINT; and state that
        the KIND argument is a F2003 extension for ACHAR, COUNT, IACHAR,
        ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND, VERIFY.

From-SVN: r135427

16 years agore PR tree-optimization/36228 (redundant runtime check while vectorizing)
Sebastian Pop [Fri, 16 May 2008 16:02:02 +0000 (16:02 +0000)]
re PR tree-optimization/36228 (redundant runtime check while vectorizing)

2008-05-16  Sebastian Pop  <sebastian.pop@amd.com>
    Jan Sjodin  <jan.sjodin@amd.com>

PR tree-optimization/36228
* tree-data-ref.c (initialize_data_dependence_relation): Fast dependence
test when the references are the same, call compute_self_dependence.
* tree-data-ref.h (struct data_dependence_relation): Add self_reference_p.
(DDR_SELF_REFERENCE): New.

* testsuite/gcc.dg/vect/pr36228.c: New.

Co-Authored-By: Jan Sjodin <jan.sjodin@amd.com>
From-SVN: r135426

16 years agof2003_io_4.f03, [...]: Gate test on effective_target fd_truncate.
Hans-Peter Nilsson [Fri, 16 May 2008 14:07:37 +0000 (14:07 +0000)]
f2003_io_4.f03, [...]: Gate test on effective_target fd_truncate.

* gfortran.dg/f2003_io_4.f03, gfortran.dg/f2003_io_5.f03,
gfortran.dg/f2003_io_7.f03, gfortran.dg/namelist_45.f90,
gfortran.dg/namelist_46.f90, gfortran.dg/namelist_47.f90,
gfortran.dg/f2003_io_1.f03: Gate test on effective_target
fd_truncate.
* gfortran.dg/fmt_t_7.f: Ditto.  Apply dos2unix.

From-SVN: r135423

16 years agoifcvt.c (dead_or_predicable): Rename df_simulate_one_insn_backwards to df_simulate_on...
Kenneth Zadeck [Fri, 16 May 2008 13:54:34 +0000 (13:54 +0000)]
ifcvt.c (dead_or_predicable): Rename df_simulate_one_insn_backwards to df_simulate_one_insn.

2008-05-16  Kenneth Zadeck <zadeck@naturalbridge.com>

* ifcvt.c (dead_or_predicable): Rename
df_simulate_one_insn_backwards to df_simulate_one_insn.
* recog.c (peephole2_optimize): Ditto.
* rtl-factoring.c (collect_pattern_seqs, clear_regs_live_in_seq):
Ditto.
* df.h: Rename df_simulate_one_insn_backwards to
df_simulate_one_insn.  and delete df_simulate_one_insn_forwards.
* df-problems.c (df_simulate_artificial_refs_at_top) Reversed
scanning of defs and uses.
(df_simulate_one_insn_backwards): Renamed to df_simulate_one_insn.
(df_simulate_one_insn_forwards): Removed.

From-SVN: r135422

16 years agoreal.c (real_to_decimal, [...]): Distinguish QNaN & SNaN.
Doug Kwan [Fri, 16 May 2008 13:41:24 +0000 (13:41 +0000)]
real.c (real_to_decimal, [...]): Distinguish QNaN & SNaN.

2008-05-16  Doug Kwan  <dougkwan@google.com>

* real.c (real_to_decimal, real_to_hexadecimal): Distinguish
QNaN & SNaN.
(real_from_string): Handle NaNs and Inf as approriate.

From-SVN: r135421

16 years ago[multiple changes]
Diego Novillo [Fri, 16 May 2008 13:40:25 +0000 (09:40 -0400)]
[multiple changes]

2008-05-16  Nathan Froyd  <froydnj@codesourcery.com>

* doc/gty.texi (Source Files Containing Type Information): Note
that headers should appear first in the gtfiles list.

2008-05-16  Kenneth Zadeck <zadeck@naturalbridge.com>

* tree.def (COND_EXEC): Properly documented this code.

2008-05-16  Diego Novillo  <dnovillo@google.com>

* dwarf2asm.c (dw2_assemble_integer): Clarify comment.
* tree-nested.c (get_trampoline_type): Set DECL_CONTEXT for
the new field.

From-SVN: r135420

16 years agotree-ssa-dse (max_stmt_uid): Removed.
Kenneth Zadeck [Fri, 16 May 2008 13:38:13 +0000 (09:38 -0400)]
tree-ssa-dse (max_stmt_uid): Removed.

2008-05-16  Kenneth Zadeck <zadeck@naturalbridge.com>

* tree-ssa-dse (max_stmt_uid): Removed.
(get_stmt_uid, dse_possible_dead_store_p, dse_optimize_stmt,
tree_ssa_dse): Encapsulate all uses of stmt_ann->uid.
* tree-ssa-sccvn.c (compare_ops, init_scc_vn): Ditto.
* function.h (cfun.last_stmt_uid): New field.
* tree-flow-inline.h (set_gimple_stmt_uid, gimple_stmt_uid,
gimple_stmt_max_uid, set_gimple_stmt_max_uid,
inc_gimple_stmt_max_uid): New functions.
* tree-dfa.c (renumber_gimple_stmt_uids): New function.
(create_stmt_ann): Initialize the ann->uid field.
* tree-ssa-pre.c (compute_avail): Encapsulate the stmt_ann->uid
with new calls.
* tree-flow.h (renumber_gimple_stmt_uids): New function.

From-SVN: r135419

16 years ago[multiple changes]
Diego Novillo [Fri, 16 May 2008 13:36:26 +0000 (09:36 -0400)]
[multiple changes]

2008-05-16  Nathan Froyd  <froydnj@codesourcery.com>

* tree-flow.h (init_empty_tree_cfg_for_function): Declare.
* tree-cfg.c (init_empty_tree_cfg_for_function): Define.
(init_empty_tree_cfg): Call it.

2008-05-16  Kenneth Zadeck <zadeck@naturalbridge.com>

* cfg.c (init_flow): Add argument THE_FUN.  Use it
instead of cfun.  Update all users.

From-SVN: r135418

16 years agoinvoke.text (-fdump-tree-*-verbose): New option.
Kenneth Zadeck [Fri, 16 May 2008 13:34:34 +0000 (13:34 +0000)]
invoke.text (-fdump-tree-*-verbose): New option.

2008-05-16  Kenneth Zadeck <zadeck@naturalbridge.com>

* doc/invoke.text (-fdump-tree-*-verbose): New option.
* tree-dump.c (dump_options): New verbose option.
* tree-pretty-print.c (dump_phi_nodes, dump_generic_bb_buff):
Add verbose dump.
* tree-pass.h (TDF_VERBOSE): New dump flag.
* print-tree.c (print_node): Added code to be able to print
PHI_NODES.
(tree-flow.h): Added include.
Makefile.in (print-tree.o):  Added TREE_FLOW_H.

From-SVN: r135417

16 years agobfin.c (bfin_discover_loops): Delete empty loops.
Bernd Schmidt [Fri, 16 May 2008 11:03:23 +0000 (11:03 +0000)]
bfin.c (bfin_discover_loops): Delete empty loops.

* config/bfin/bfin.c (bfin_discover_loops): Delete empty loops.

From-SVN: r135414

16 years agoFrom Jie Zhang <jie.zhang@analog.com>
Bernd Schmidt [Fri, 16 May 2008 10:28:50 +0000 (10:28 +0000)]
From Jie Zhang  <jie.zhang@analog.com>
        * config/bfin/t-bfin-elf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Remove mcpu=bf532-0.3,
mcpu=bf561-none and mcpu=bf561-0.2.
* config/bfin/t-bfin-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Likewise.
* config/bfin/t-bfin-linux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Likewise.
* config/bfin/bfin-protos.h (enum bfin_cpu_type): Add
BFIN_CPU_UNKNOWN.
* config/bfin/elf.h (STARTFILE_SPEC): Use specific CRT for
BF561.
(LIB_SPEC): Use proper linker script for bf561.  Error if no mcpu
option.
* config/bfin/bfin.c (bfin_cpu_type): Set to BFIN_CPU_UNKNOWN.
(cputype_selected): Remove.
(bfin_handle_option): Don't use cputype_selected.
(override_options): When no mcpu option, enable all workarounds.
Don't use bfin_workarounds.
* config/bfin/bfin.h (DRIVER_SELF_SPECS): Don't set default
processor type.
(DEFAULT_CPU_TYPE): Don't define.

From-SVN: r135413

16 years agotree-ssa-propagate.c (substitute_and_fold): Fix stmt walking on deletion of the last...
Richard Guenther [Fri, 16 May 2008 08:38:12 +0000 (08:38 +0000)]
tree-ssa-propagate.c (substitute_and_fold): Fix stmt walking on deletion of the last stmt.

2008-05-16  Richard Guenther  <rguenther@suse.de>

* tree-ssa-propagate.c (substitute_and_fold): Fix stmt walking
on deletion of the last stmt.

From-SVN: r135412

16 years agoparallel_mode.xml: Documented the new choices, factoring out common tags.
Johannes Singler [Fri, 16 May 2008 07:10:26 +0000 (07:10 +0000)]
parallel_mode.xml: Documented the new choices, factoring out common tags.

2008-05-16  Johannes Singler  <singler@ira.uka.de>

         * doc/xml/manual/parallel_mode.xml:
         Documented the new choices, factoring out common tags.
         * include/parallel/multiway_merge.h:
         Place comparison functor at the end, to comply with
         established convention.
         (parallel_multiway_merge) Pass number of threads explicitly.
         Introduce new compile-time variants, make exact splitting the
         default.
         * include/parallel/tags.h:
         Extend exact_tag, introduce sampling_tag.
         * include/parallel/merge.h:
         (parallel_merge_advance) Adapt to changed interface.
         * include/parallel/multiway_mergesort.h: Likewise.

From-SVN: r135411

16 years agoprimary.c: New private structure "gfc_structure_ctor_component".
Daniel Kraft [Fri, 16 May 2008 06:52:14 +0000 (08:52 +0200)]
primary.c: New private structure "gfc_structure_ctor_component".

2008-05-16  Daniel Kraft  <d@domob.eu>

        * primary.c:  New private structure "gfc_structure_ctor_component".
        (gfc_free_structure_ctor_component):  New helper function.
        (gfc_match_structure_constructor):  Extended largely to support named
        arguments and default initialization for structure constructors.

2008-05-16  Daniel Kraft  <d@domob.eu>

        * gfortran.dg/private_type_6.f90:  Adapted expected error messages.
        * gfortran.dg/structure_constructor_1.f03:  New test.
        * gfortran.dg/structure_constructor_2.f03:  New test.
        * gfortran.dg/structure_constructor_3.f03:  New test.
        * gfortran.dg/structure_constructor_4.f03:  New test.
        * gfortran.dg/structure_constructor_5.f03:  New test.
        * gfortran.dg/structure_constructor_6.f03:  New test.
        * gfortran.dg/structure_constructor_7.f03:  New test.
        * gfortran.dg/structure_constructor_8.f03:  New test.
        * gfortran.dg/structure_constructor_9.f90:  New test.

From-SVN: r135410

16 years agoi386.c (ix86_expand_vector_init_general): Optimize V8HImode for SSE2 and V16QImode...
H.J. Lu [Fri, 16 May 2008 06:19:39 +0000 (06:19 +0000)]
i386.c (ix86_expand_vector_init_general): Optimize V8HImode for SSE2 and V16QImode for SSE4.1.

gcc/

2008-05-15  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_vector_init_general): Optimize
V8HImode for SSE2 and V16QImode for SSE4.1.

gcc/testsuite/

2008-05-15  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/m128-check.h: New.
* gcc.target/i386/set-v16qi-1.h: Likewise.
* gcc.target/i386/set-v16qi-2.h: Likewise.
* gcc.target/i386/set-v8hi-1.h: Likewise.
* gcc.target/i386/set-v8hi-2.h: Likewise.
* gcc.target/i386/sse2-set-v16qi-1.c: Likewise.
* gcc.target/i386/sse2-set-v16qi-2.c: Likewise.
* gcc.target/i386/sse2-set-v8hi-1.c: Likewise.
* gcc.target/i386/sse2-set-v8hi-2.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-1.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-2.c: Likewise.

* gcc.target/i386/sse2-check.h: Include m128-check.h. Don't
include <stdio.h>.
* gcc.target/i386/sse4_1-check.h: Likewise.

From-SVN: r135409

16 years ago[multiple changes]
Steven G. Kargl [Fri, 16 May 2008 03:41:17 +0000 (03:41 +0000)]
[multiple changes]

2008-05-15  Steven G. Kargl  <kargls@comcast.net>

* simplify.c (gfc_simplify_dble, gfc_simplify_float,
simplify_bound, gfc_simplify_nearest, gfc_simplify_real): Plug
possible memory leaks.
(gfc_simplify_reshape): Plug possible memory leaks and dereferencing
of NULL pointers.

2008-05-15  Steven G. Kargl  <kargls@comcast.net>

PR fortran/36239
* simplify.c (gfc_simplify_int, gfc_simplify_intconv): Replaced hand
rolled integer conversion with gfc_int2int, gfc_real2int, and
gfc_complex2int.
(gfc_simplify_intconv): Renamed to simplify_intconv.

2008-05-15  Steven G. Kargl,   <kargl@comcast.net>
* gfortran.dg/and_or_xor.f90: New test

* fortran/simplify.c (gfc_simplify_and, gfc_simplify_or,
gfc_simplify_xor): Don't range check logical results.

From-SVN: r135408

16 years agoDaily bump.
GCC Administrator [Fri, 16 May 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135405

16 years agocgraph.h (compute_inline_parameters): Made public.
Kenneth Zadeck [Thu, 15 May 2008 22:58:03 +0000 (22:58 +0000)]
cgraph.h (compute_inline_parameters): Made public.

2008-05-15  Kenneth Zadeck <zadeck@naturalbridge.com>

* cgraph.h (compute_inline_parameters): Made public.
* tree-pass.h (ipa_opt_pass): Removed function_generate_summary,
variable_generate_summary, function_write_summary,
variable_write_summary, variable_read_summary.  Added
generate_summary, write_summary, read_summary.
* cgraphunit.c (cgraph_process_new_functions): Changed call from
pass_ipa_inline.function_generate_summary, to
compute_inline_parameters.
* ipa-inline.c (compute_inline_parameters): Made public and added
node parameter.
(compute_inline_parameters_for_current): New function.
(pass_inline_param): Now calls
compute_inline_parameters_for_current.
(inline_generate_summary): Removed parameter and made to loop over
all cgraph nodes.
(pass_ipa_inline): Updated for new IPA_PASS structure.
* passes.c (execute_ipa_summary_passes): Now is called once per
pass rather than once per node*pass.

From-SVN: r135401

16 years agoconfigure.ac: Don't check AC_LIBTOOL_DLOPEN if using newlib.
Bernd Schmidt [Thu, 15 May 2008 22:54:29 +0000 (22:54 +0000)]
configure.ac: Don't check AC_LIBTOOL_DLOPEN if using newlib.

* configure.ac: Don't check AC_LIBTOOL_DLOPEN if using newlib.
* configure: Regenerate.

From-SVN: r135400

16 years agotrans-expr.c (gfc_conv_concat_op): Take care of nondefault character kinds.
Francois-Xavier Coudert [Thu, 15 May 2008 21:12:53 +0000 (21:12 +0000)]
trans-expr.c (gfc_conv_concat_op): Take care of nondefault character kinds.

* trans-expr.c (gfc_conv_concat_op): Take care of nondefault
character kinds.
(gfc_build_compare_string): Add kind argument and use it.
(gfc_conv_statement_function): Fix indentation.
* gfortran.h (gfc_character_info): New structure.
(gfc_character_kinds): New array.
* trans-types.c (gfc_character_kinds, gfc_character_types,
gfc_pcharacter_types): New array.
(gfc_init_kinds): Fill character kinds array.
(validate_character): Take care of nondefault character kinds.
(gfc_build_uint_type): New function.
(gfc_init_types): Take care of nondefault character kinds.
(gfc_get_char_type, gfc_get_pchar_type): New functions.
(gfc_get_character_type_len): Use gfc_get_char_type.
* trans.h (gfc_build_compare_string): Adjust prototype.
(gfor_fndecl_compare_string_char4, gfor_fndecl_concat_string_char4,
gfor_fndecl_string_len_trim_char4, gfor_fndecl_string_index_char4,
gfor_fndecl_string_scan_char4, gfor_fndecl_string_verify_char4,
gfor_fndecl_string_trim_char4, gfor_fndecl_string_minmax_char4,
gfor_fndecl_adjustl_char4, gfor_fndecl_adjustr_char4): New
prototypes.
* trans-types.h (gfc_get_char_type, gfc_get_pchar_type): New
prototypes.
* trans-decl.c (gfor_fndecl_compare_string_char4,
gfor_fndecl_string_len_trim_char4, gfor_fndecl_string_index_char4,
gfor_fndecl_string_scan_char4, gfor_fndecl_string_verify_char4,
gfor_fndecl_string_trim_char4, gfor_fndecl_string_minmax_char4,
gfor_fndecl_adjustl_char4, gfor_fndecl_adjustr_char4,
gfor_fndecl_concat_string_char4): New function decls.
(gfc_build_intrinsic_function_decls): Define new *_char4 function
decls.
* trans-intrinsic.c (gfc_conv_intrinsic_minmax_char,
gfc_conv_intrinsic_len_trim, gfc_conv_intrinsic_ichar,
gfc_conv_intrinsic_strcmp, gfc_conv_intrinsic_trim,
gfc_conv_intrinsic_function): Deal with nondefault character kinds.

From-SVN: r135397