OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years ago * pex-win32.c (pex_win32_pipe): Add _O_NOINHERIT.
jules [Wed, 29 Apr 2009 11:48:33 +0000 (11:48 +0000)]
* pex-win32.c (pex_win32_pipe): Add _O_NOINHERIT.
(pex_win32_exec_child): Ensure each process has only one handle open
on pipe endpoints. Close standard input after creating child for
symmetry with standard output/standard error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146953 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/bfin/bfin.c (bfin_optimize_loop): Unify handling of
bernds [Wed, 29 Apr 2009 10:55:25 +0000 (10:55 +0000)]
* config/bfin/bfin.c (bfin_optimize_loop): Unify handling of
problematic last insns.  Test for TYPE_CALL rather than CALL_P.
Remove special case testing for last insn of inner loops. Don't fail if
the loop ends with a jump, emit an extra nop instead.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146952 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 10:54:12 +0000 (10:54 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
with_clauses generated for the same unit through rtsfind, and that
appear in the context of different units.

* rtsfind.adb: New attribute First_Implicit_With, component of the
Unit_Record that stores information about a unit loaded through rtsfind.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146951 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMinor improvements.
charlet [Wed, 29 Apr 2009 10:50:37 +0000 (10:50 +0000)]
Minor improvements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146950 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Gary Dismukes <dismukes@adacore.com>
charlet [Wed, 29 Apr 2009 10:49:15 +0000 (10:49 +0000)]
2009-04-29  Gary Dismukes  <dismukes@adacore.com>

* exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
(other conditions permitting), so that abstract stream subprograms will
be declared for them.

2009-04-29  Bob Duff  <duff@adacore.com>

* g-expect.adb (Expect_Internal): Fix check for overfull buffer.

* g-expect.ads: Minor comment fixes.

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
dispatching operation is a body without previous spec, update the list
of primitive operations to ensure that cross-reference information is
up-to-date.

2009-04-29  Albert Lee  <lee@adacore.com>

* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
(GNAT.Sockets.Thin.C_Readv,
GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
(GNAT.Sockets.Thin.C_Recvmsg,
GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
sendmsg(2).
(GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146949 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 10:39:26 +0000 (10:39 +0000)]
2009-04-29  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/39941
* tree-ssa-pre.c (eliminate): Schedule update-ssa after
eliminating an indirect call.

* gcc.c-torture/compile/pr39941.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146948 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 10:37:14 +0000 (10:37 +0000)]
2009-04-29  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_types_in_gimple_reference): Add require_lvalue
parameter.  Allow invariants as base if !require_lvalue.
(verify_gimple_assign_single): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146947 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMinor clean ups.
charlet [Wed, 29 Apr 2009 10:30:53 +0000 (10:30 +0000)]
Minor clean ups.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146946 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 10:28:55 +0000 (10:28 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Check_Dispatching_Operation): if the dispatching
operation is a body without previous spec, update the list of
primitive operations to ensure that cross-reference information is
up-to-date.

* sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
new compilation unit node for the instance declaration, keep the
context items of the original unit on it, so that the context of the
instance body only holds the context inherited from the generic body.

2009-04-29  Bob Duff  <duff@adacore.com>

* sem_res.adb: Minor comment fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146945 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 29 Apr 2009 10:19:14 +0000 (10:19 +0000)]
2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_elim.adb: Minor reformatting

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Convert_To_Positional): if the current unit is a
predefined unit, allow arbitrary number of components in static
aggregate, to ensure that the same level of constant folding applies
for Ada 95 and Ada 05 versions of the file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146944 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 10:12:51 +0000 (10:12 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_elim.adb (Check_Eliminated): Handle new improved eliminate
information: no need for full scope check.
(Eliminate_Error): Do not emit error in a generic context.

2009-04-29  Ed Falis  <falis@adacore.com>

* adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
VxWorks 653 POS does not support rmdir.

2009-04-29  Matteo Bordin  <bordin@adacore.com>

* s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
results are printed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146943 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Arnaud Charlet <charlet@adacore.com>
charlet [Wed, 29 Apr 2009 10:05:44 +0000 (10:05 +0000)]
2009-04-29  Arnaud Charlet  <charlet@adacore.com>

* s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
unused assignment.

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* make.adb: Minor reformatting.
Minor code reorganization throughout.

2009-04-29  Matteo Bordin  <bordin@adacore.com>

* s-stausa.ads: Changed visibility of type Task_Result: moved to
public part to give application visibility over it.
This is for future improvement and to build a public API on top of it.
Changed record components name of type Task_Result to reflect the new
way of reporting.

* s-stausa.adb: Actual_Size_Str changed to reflect the new way of
reporting Stack usage.

* gnat_ugn.texi: Update doc of stack usage report.

* g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.

* Makefile.rtl: Add new run-time files.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146942 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Pascal Obry <obry@adacore.com>
charlet [Wed, 29 Apr 2009 09:55:37 +0000 (09:55 +0000)]
2009-04-29  Pascal Obry  <obry@adacore.com>

* initialize.c: Do not expand quoted arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146941 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Emmanuel Briot <briot@adacore.com>
charlet [Wed, 29 Apr 2009 09:52:34 +0000 (09:52 +0000)]
2009-04-29  Emmanuel Briot  <briot@adacore.com>

* prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.

* clean.adb (Ultimate_Extension_Of): removed, since duplicate of
 Prj.Ultimate_Extending_Project_Of

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146940 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 09:51:28 +0000 (09:51 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Build_Final_List): If the designated type is a Taft
Amendment type, add the with_clause for Finalization.List_Controller
only if the current context is a package body.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146939 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 29 Apr 2009 09:45:57 +0000 (09:45 +0000)]
2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_ch12.adb: Minor reformatting

* sem_aggr.adb: Minor reformatting

* sem_ch6.adb, sem_cat.ads: Minor reformatting

* sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting

2009-04-29  Quentin Ochem  <ochem@adacore.com>

* prj.ads (Source_Id): Now general pointer type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146938 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 29 Apr 2009 09:41:23 +0000 (09:41 +0000)]
2009-04-29  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb, rtsfind.adb: Minor reformatting

* sem_res.adb: Minor reformatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146937 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 29 Apr 2009 09:37:01 +0000 (09:37 +0000)]
2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb (Static_Concatenation): An N_Op_Concat with static
operands is static only if it is a predefined concatenation operator.

* sem_util.adb: Minor reformatting

* sem_ch12.adb (Save_References): When propagating semantic information
from generic copy back to generic template, for the case of an
identifier that has been rewritten to an explicit dereference whose
prefix is either an object name or a parameterless funcion call
denoting a global object or function, properly capture the denoted
global entity: perform the corresponding rewriting in the template,
and point the rewritten identifier to the correct global entity (not
to the associated identifier in the generic copy).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146936 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Robert Dewar <dewar@adacore.com>
charlet [Wed, 29 Apr 2009 09:32:55 +0000 (09:32 +0000)]
2009-04-29  Robert Dewar  <dewar@adacore.com>

* rtsfind.adb, prj-env.adb: Minor reformatting
Minor code reorganization

2009-04-29  Emmanuel Briot  <briot@adacore.com>

* make.adb: Fix comment

* prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
is given as argument, as might happen in gnatmake.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146935 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 09:31:29 +0000 (09:31 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
an abstract operation of a progenitor is not properly overridden by an
operation of a derived synchronized type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146934 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Robert Dewar <dewar@adacore.com>
charlet [Wed, 29 Apr 2009 09:28:07 +0000 (09:28 +0000)]
2009-04-29  Robert Dewar  <dewar@adacore.com>

* mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
prj-proc.adb: Minor reformatting
Minor code reorganization

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146933 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMinor message improvement.
charlet [Wed, 29 Apr 2009 09:24:02 +0000 (09:24 +0000)]
Minor message improvement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146932 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Bob Duff <duff@adacore.com>
charlet [Wed, 29 Apr 2009 09:22:32 +0000 (09:22 +0000)]
2009-04-29  Bob Duff  <duff@adacore.com>

* exp_ch7.adb (Build_Final_List): For an access type that designates a
Taft Amendment type, if the access type needs finalization, make sure
the implicit with clause for List_Controller occurs on the package spec.

* rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
with's created for the pseudo-children of Text_IO and friends. In
particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
Ada.Text_IO.Integer_IO both with-ing each other.

* sem.adb (Walk_Library_Items): Suppress assertion failure in certain
oddball cases when pragma Extend_System is used.

* sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
the case where a package spec instantiates a generic whose body with's
this package, so Walk_Library_Items won't complain about cyclic with's.

2009-04-29  Emmanuel Briot  <briot@adacore.com>

* gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
(Project_Id): now a real pointer to Project_Data, instead of an index
into the Projects_Table. This simplifies the API significantly, avoiding
extra lookups in this table and the need to pass the Project_Tree_Ref
parameter in several cases

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146931 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Nicolas Setton <setton@adacore.com>
charlet [Wed, 29 Apr 2009 09:11:35 +0000 (09:11 +0000)]
2009-04-29  Nicolas Setton  <setton@adacore.com>

* gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146930 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
bernds [Wed, 29 Apr 2009 08:41:32 +0000 (08:41 +0000)]
gcc/
* config/bfin/bfin.md (sp_or_sm, spm_string, spm_name): New macro.
(ss<spm_name>hi3, ss<spm_name>hi3_parts, ss<spm_name>hi3_low_parts,
ss<spm_name_hi3_high_parts): New patterns, replacing ssaddhi3, ssubhi3,
ssaddhi3_parts and sssubhi3_parts.
(flag_mulhi3_parts): Produce a HImode output rather than trying to set
a VEC_SELECT.
* config/bfin/bfin.c (bfin_expand_builtin, case BFIN_BUILTIN_CPLX_SQU):
Adjust accordingly.

gcc/testsuite/
* gcc.target/bfin/20090411-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146929 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-29 Anmol P. Paralkar <anmol@freescale.com>
rguenth [Wed, 29 Apr 2009 08:34:21 +0000 (08:34 +0000)]
2009-04-29  Anmol P. Paralkar  <anmol@freescale.com>

        PR target/39565
        * gcc.dg/pr39565.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146928 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 08:10:15 +0000 (08:10 +0000)]
2009-04-28  Richard Guenther  <rguenther@suse.de>

* tree-vect-loop.c (get_initial_def_for_induction): Use
correct types for pointer increment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146927 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/i386/sse4_1-roundps-1.c: Skip for vxworks kernel.
nathan [Wed, 29 Apr 2009 08:03:33 +0000 (08:03 +0000)]
* gcc.target/i386/sse4_1-roundps-1.c: Skip for vxworks kernel.
* gcc.target/i386/sse4_1-roundpd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundps-3.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundss-1.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundss-3.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundps-2.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundss-2.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundss-4.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-4.c: Likewise.
* gcc.target/i386/pr37191.c: Likewise.
* gcc.target/i386/reload-1.c: Likewise.
* g++.old-deja/g++.pt/repo1.C: Skip for vxworks kernel.
* g++.old-deja/g++.pt/repo2.C: Likewise.
* g++.old-deja/g++.pt/repo3.C: Likewise.
* g++.old-deja/g++.pt/repo4.C: Likewise.
* g++.old-deja/g++.pt/instantiate4.C: Likewise.
* g++.old-deja/g++.pt/instantiate6.C: Likewise.
* g++.dg/template/repo1.C: Likewise.
* g++.dg/template/repo2.C: Likewise.
* g++.dg/template/repo3.C: Likewise.
* g++.dg/template/repo4.C: Likewise.
* g++.dg/template/repo5.C: Likewise.
* g++.dg/template/repo6.C: Likewise.
* g++.dg/template/repo7.C: Likewise.
* g++.dg/template/repo8.C: Likewise.
* g++.dg/template/repo9.C: Likewise.
* g++.dg/rtti/repo1.C: Likewise.
* gcc.dg/cpp/_Pragma6.c: Skip for vxworks.
* g++.dg/cpp/_Pragma1.C: Skip for vxworks.
* gcc.dg/pthread-init-1.c: Xfail for vxworks rtp.
* g++.dg/other/PR23205.C: Skip for vxworks.
* g++.dg/ext/visibility/class1.C: Requires PIC.
* g++.dg/eh/async-unwind2.C: Requires PIC.
* lib/target-supports.exp (check_cxa_atexit_available): Vxworks
does not have cxa_exit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146926 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Apr 2009 05:12:00 +0000 (05:12 +0000)]
2009-04-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/39868
* scripts/run_doxygen: Uncomment removal of includes.
(problematic): Rewrite __cxxabiv1 namespace to abi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146923 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * toplev.c (print_version): Update GMP version string calculation.
ghazi [Wed, 29 Apr 2009 04:19:38 +0000 (04:19 +0000)]
* toplev.c (print_version): Update GMP version string calculation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146921 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 29 Apr 2009 00:17:05 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146920 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/39938
ebotcazou [Tue, 28 Apr 2009 21:29:58 +0000 (21:29 +0000)]
PR rtl-optimization/39938
* resource.c (init_resource_info): Add call to df_analyze.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146915 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR testsuite/39790
jingyu [Tue, 28 Apr 2009 20:39:11 +0000 (20:39 +0000)]
PR testsuite/39790
* lib/target-supports.exp (check_effective_target_tls): Remove
comment of caching.
(check_effective_target_tls_native): Likewise.
(check_effective_target_tls_runtime): Likewise.
* gcc.dg/tls/alias-1.c (dg-require-effective-target): Change target
tls to tls_runtime.
* gcc.dg/tls/opt-2.c: Add dg-require-effective-target tls_runtime.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146913 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/alpha/alpha.md (usegp): Cast the result of
uros [Tue, 28 Apr 2009 19:58:17 +0000 (19:58 +0000)]
* config/alpha/alpha.md (usegp): Cast the result of
alpha_find_lo_sum_using_gp to enum attr_usegp.
* config/alpha/alpha.c (override_options): Remove end-of-structure
marker element from cpu_table.  Use array size of cpu_table to handle
-mcpu and -mtune options.
(tls_symbolic_operand_type): Change 0 to TLS_MODEL_NONE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146912 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config.gcc (powerpc*-*-* | rs6000-*-*): Add
jsm28 [Tue, 28 Apr 2009 18:59:57 +0000 (18:59 +0000)]
* config.gcc (powerpc*-*-* | rs6000-*-*): Add
rs6000/option-defaults.h to tm_file.  Support cpu_32, cpu_64,
tune_32 and tune_64.
* doc/install.texi (--with-cpu-32, --with-cpu-64): Document
support on PowerPC.
* config/rs6000/rs6000.h (OPTION_DEFAULT_SPECS): Move to ...
* config/rs6000/option-defaults.h: ... here.  New file.
(OPT_64, OPT_32): Define.
(MASK_64BIT): Define to 0 if not already defined.
(OPT_ARCH64, OPT_ARCH32): Define.
(OPTION_DEFAULT_SPECS): Add entries for cpu_32, cpu_64, tune_32
and tune_64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146908 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix nits
ebotcazou [Tue, 28 Apr 2009 18:53:54 +0000 (18:53 +0000)]
Fix nits

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146907 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFPA error for AAPCS
ramana [Tue, 28 Apr 2009 16:45:19 +0000 (16:45 +0000)]
FPA error for AAPCS

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146906 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 28 Apr 2009 16:27:27 +0000 (16:27 +0000)]
2009-04-28  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39946
* resolve.c (resolve_symbol): Correctly copy the interface of a
PROCEDURE statement if the interface involves a RESULT variable.

2009-04-28  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39946
* gfortran.dg/proc_ptr_16.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146905 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR rtl-optimization/39914
uros [Tue, 28 Apr 2009 16:18:17 +0000 (16:18 +0000)]
PR rtl-optimization/39914
* ira-conflicts.c (ira_build_conflicts): Prohibit call used
registers for allocnos created from user-defined variables only
when not optimizing.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146904 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite/gcc.target/ia64/sync-1.c: Check for cmpxchg8 only if
sje [Tue, 28 Apr 2009 16:14:35 +0000 (16:14 +0000)]
* testsuite/gcc.target/ia64/sync-1.c: Check for cmpxchg8 only if
lp64 is true.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146903 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoForgot to ci fixincl.x in previous checkin.
sje [Tue, 28 Apr 2009 15:27:28 +0000 (15:27 +0000)]
Forgot to ci fixincl.x in previous checkin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146902 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 28 Apr 2009 15:27:09 +0000 (15:27 +0000)]
2009-04-28  Richard Guenther  <rguenther@suse.de>

PR middle-end/39937
* fold-const.c (fold_binary): Use distribute_real_division only
on float types.

* gfortran.fortran-torture/compile/pr39937.f: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146901 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config.gcc (hppa*64*-*-hpux11*): Set use_gcc_stdint and
sje [Tue, 28 Apr 2009 15:20:07 +0000 (15:20 +0000)]
* config.gcc (hppa*64*-*-hpux11*): Set use_gcc_stdint and
add hpux-stdint.h to tm_file.
(hppa[12]*-*-hpux11*): Ditto.
(ia64*-*-hpux*): Ditto.
* config/hpux-stdint.h: New.
* gcc/config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Set
__STDC_EXT__ for all compiles.
* gcc/config/pa/pa-hpux.h: Ditto.
* gcc/config/pa/pa-hpux10.h: Ditto.
* gcc/config/pa/pa-hpux11.h: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146900 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * inclhack.def (hpux11_uint32_c): Remove.
sje [Tue, 28 Apr 2009 15:17:49 +0000 (15:17 +0000)]
* inclhack.def (hpux11_uint32_c): Remove.
(hpux_long_double): Disable on hpux11.3*.
(hpux_long_double_2): New.
(hpux_c99_intptr): New.
(hpux_c99_inttypes): New.
(hpux_c99_inttypes2): New.
(hpux_stdint_least): New.
(hpux_stdint_fast): New.
(hpux_inttype_int_least8_t): New.
(hpux_inttype_int8_t): New.
* fixincl.x: Regenerate.
* tests/base/sys/_inttypes.h: New.
* tests/base/inttypes.h: Update.
* tests/base/stdlib.h: Update.
* tests/base/stdint.h: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146899 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Catherine Moore <clm@codesourcery.com>
clm [Tue, 28 Apr 2009 15:06:16 +0000 (15:06 +0000)]
2009-04-28  Catherine Moore  <clm@codesourcery.com>

        * debug.h (set_name): Add comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146897 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite/libjava.jvmti/jvmti-interp.exp
davek [Tue, 28 Apr 2009 15:05:56 +0000 (15:05 +0000)]
* testsuite/libjava.jvmti/jvmti-interp.exp
(gcj_jni_compile_c_to_so):  Fix so extension to '.dll' on win32.
* testsuite/lib/libjava.exp (libjava_init):  Likewise.
* testsuite/libjava.jni/jni.exp
(gcj_jni_compile_c_to_so):  Likewise.
(gcj_jni_test_one):  Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146896 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Andrew Pinski <pinskia@gmail.com>
pinskia [Tue, 28 Apr 2009 14:19:00 +0000 (14:19 +0000)]
2009-04-28  Andrew Pinski  <pinskia@gmail.com>

        PR target/39929
        * config/darwin.c (machopic_gen_offset): Check
        currently_expanding_to_rtl if current_ir_type returns IR_GIMPLE.
        * config/arm/arm.c (require_pic_register): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146894 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 28 Apr 2009 13:43:15 +0000 (13:43 +0000)]
2009-04-28  H.J. Lu  <hongjiu.lu@intel.com>

g++.dg/warn/pr35652.C: Removed.
gcc.dg/pr35652.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146892 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Paolo Bonzini <bonzini@gnu.org>
bonzini [Tue, 28 Apr 2009 13:17:28 +0000 (13:17 +0000)]
2009-04-28  Paolo Bonzini  <bonzini@gnu.org>

        * config/m32c/m32c.c (TARGET_PROMOTE_FUNCTION_RETURN,
        m32c_promote_function_return, TARGET_PROMOTE_PROTOTYPES,
        m32c_promote_prototypes): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146891 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/39922
matz [Tue, 28 Apr 2009 12:22:47 +0000 (12:22 +0000)]
    PR middle-end/39922
        * tree-outof-ssa.c (insert_value_copy_on_edge): Don't convert
        constants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146889 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 28 Apr 2009 12:16:22 +0000 (12:16 +0000)]
2009-04-28  Richard Guenther  <rguenther@suse.de>

* tree-vect-stmts.c (vect_get_vec_def_for_operand): Fix
type error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146888 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd support for arm1156tf-s
ramana [Tue, 28 Apr 2009 10:39:41 +0000 (10:39 +0000)]
Add support for arm1156tf-s

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146887 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * inclhack.def (glibc_stdint): New fix.
jsm28 [Tue, 28 Apr 2009 10:21:24 +0000 (10:21 +0000)]
* inclhack.def (glibc_stdint): New fix.
* fixincl.x: Regenerate.
* tests/base/stdint.h: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146883 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/testsuite/Changelog:
amonakov [Tue, 28 Apr 2009 10:01:52 +0000 (10:01 +0000)]
gcc/testsuite/Changelog:

2009-04-28  Alexander Monakov  <amonakov@ispras.ru>
* gcc.target/ia64/20071210-2.c: New testcase.

gcc/Changelog:

2009-04-28  Alexander Monakov  <amonakov@ispras.ru>
* sel-sched-ir.c (maybe_tidy_empty_bb): Do not attempt to delete a
block if there are complex incoming edges.
(sel_merge_blocks): Remove useless assert.
(sel_redirect_edge_and_branch): Check that edge was redirected.
* sel-sched-ir.h (_eligible_successor_edge_p): Remove assert.
(sel_find_rgns): Delete declaration.
* sel-sched.c (purge_empty_blocks): Attempt to remove first block of
the region when it is not a preheader.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146882 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c/39323
uros [Tue, 28 Apr 2009 09:48:04 +0000 (09:48 +0000)]
PR c/39323
* config/alpha/elf.h (MAX_OFILE_ALIGNMENT): Sync with elfos.h

testsuite/ChangeLog:

PR c/39323
* gcc.dg/pr39323-2.c: Also scan for alignment in log2 format.
* gcc.dg/pr39323-3.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146881 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 28 Apr 2009 09:44:36 +0000 (09:44 +0000)]
2009-04-28  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39930
PR fortran/39931
* expr.c (gfc_check_pointer_assign): Correctly detect if the left hand
side is a pointer.
* parse.c (gfc_fixup_sibling_symbols): Don't check for ambiguity.

2009-04-28  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39930
PR fortran/39931
* gfortran.dg/ambiguous_reference_2.f90: New.
* gfortran.dg/pointer_assign_7.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146880 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Andrew Haley <aph@redhat.com>
aph [Tue, 28 Apr 2009 09:35:22 +0000 (09:35 +0000)]
2009-04-28  Andrew Haley  <aph@redhat.com>

        PR libgcj/39899
        * Makefile.am (libgcj_tools_la_LDFLAGS): Add
        -fno-bootstrap-classes to libgcj_tools_la_GCJFLAGS.
        * Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146878 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 28 Apr 2009 08:50:19 +0000 (08:50 +0000)]
2009-04-28  Richard Guenther  <rguenther@suse.de>

* tree.h (SSA_NAME_VALUE): Remove.
(struct tree_ssa_name): Remove value_handle member.
* tree-vrp.c (execute_vrp): Initialize/free the value-handle
array for jump threading.
* tree-ssa-propagate.c (ssa_prop_init): Do not initialize
SSA_NAME_VALUEs.
* print-tree.c (print_node): Do not dump SSA_NAME_VALUEs.
* tree-flow.h (threadedge_initialize_values): Declare.
(threadedge_finalize_values): Likewise.
* tree-ssa-threadedge.c (ssa_name_values): New global variable.
(SSA_NAME_VALUE): Define.
(threadedge_initialize_values): New function.
(threadedge_finalize_values): Likewise.
* tree-ssa-dom.c (ssa_name_values): New global variable.
(SSA_NAME_VALUE): Define.
(tree_ssa_dominator_optimize): Initialize/free the value-handle
array.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146877 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Nathan Froyd <froydnj@codesourcery.com>
nathan [Tue, 28 Apr 2009 08:38:37 +0000 (08:38 +0000)]
2009-04-28  Nathan Froyd  <froydnj@codesourcery.com>
    Mark Mitchell  <mark@codesourcery.com>

* gcc.target/powerpc/20020118-1.c: Skip on vxworks targets.
* gcc.dg/20020103-1.c: Check for __ppc.
* gcc.dg/asm-b.c: Check for __ppc.
* gcc.dg/20020919-1.c: Check for __ppc.
* gcc.dg/20020312-2.c: Likewise.
* gcc.dg/trampoline-1.c: Add appropriate NO_TRAMPOLINES #ifndefs.
* gcc.dg/torture/asm-subreg-1.c: Skip on sparc vxworks targets.
* gcc.dg/attr-weakref-1.c: Skip on selected vxworks targets.
* g++.dg/warn/weak1.C: Likewise.
* gcc.dg/tree-ssa/20030714-1.c (find_base_value): Declare as
static so appropriate optimizations kick in.
(find_base_value_wrapper): New function.
* g++.dg/eh/simd-5.C: Fix target triplet.
* gcc.target/arm/long-calls-1.c: Skip for -mlong-calls.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146876 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
irar [Tue, 28 Apr 2009 08:08:25 +0000 (08:08 +0000)]
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
Use REPORT_VECTORIZED_LOCATIONS instead
REPORT_VECTORIZED_LOOPS.
* tree-vectorizer.c (vect_verbosity_level): Make static.
(vect_loop_location): Rename to vect_location.
(vect_set_verbosity_level): Update comment.
(vect_set_dump_settings): Use REPORT_VECTORIZED_LOCATIONS
and vect_location.
(vectorize_loops): Fix comment. Use REPORT_VECTORIZED_LOCATIONS
and vect_location. Use REPORT_UNVECTORIZED_LOCATIONS
instead REPORT_UNVECTORIZED_LOOPS.
* tree-vectorizer.h (enum vect_def_type): Rename vect_invariant_def and
vect_loop_def to vect_external_def and vect_internal_def.
(enum verbosity_levels): Rename REPORT_VECTORIZED_LOOPS
        and REPORT_UNVECTORIZED_LOOPS to
REPORT_VECTORIZED_LOCATIONS and
REPORT_UNVECTORIZED_LOCATIONS.
(enum vect_relevant): Update comment. Rename vect_unused_in_loop
and vect_used_in_loop and to vect_unused_in_scope and
vect_used_in_scope.
(STMT_VINFO_RELEVANT_P): Use vect_unused_in_scope.
(vect_verbosity_level): Remove declaration.
(vect_analyze_operations): Likewise.
(vect_analyze_stmt): Declare.
* tree-vect-loop.c (vect_determine_vectorization_factor): Use
REPORT_UNVECTORIZED_LOCATIONS.
(vect_get_loop_niters): Fix indentation.
(vect_analyze_loop_form): Use REPORT_UNVECTORIZED_LOCATIONS.
(vect_analyze_loop_operations): New function.
(vect_analyze_loop): Call vect_analyze_loop_operations instead of
vect_analyze_operations.
(vect_is_simple_reduction): Use new names.
(vectorizable_live_operation, vect_transform_loop): Likewise.
* tree-vect-data-refs.c (vect_check_interleaving): Add a return value to
specify whether the data references can be a part of interleaving chain.
(vect_analyze_data_ref_dependence): Use new names.
(vect_analyze_data_refs_alignment, vect_analyze_data_refs): Likewise.
(vect_create_addr_base_for_vector_ref): Remove redundant code.
* tree-vect-patterns.c (widened_name_p): Use new names.
(vect_recog_dot_prod_pattern): Likewise.
* tree-vect-stmts.c (vect_stmt_relevant_p): Use new names.
(process_use, vect_mark_stmts_to_be_vectorized,
vect_model_simple_cost, vect_model_store_cost,
vect_get_vec_def_for_operand, vect_get_vec_def_for_stmt_copy,
vectorizable_call, vectorizable_conversion, vectorizable_assignment,
vectorizable_operation, vectorizable_type_demotion,
vectorizable_type_promotion, vectorizable_store, vectorizable_load,
vectorizable_condition): Likewise.
(vect_analyze_operations): Split into vect_analyze_loop_operations
and ...
(vect_analyze_stmt): ... new function.
(new_stmt_vec_info): Use new names.
(vect_is_simple_use): Use new names and fix comment.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Use new names.
(vect_build_slp_tree, vect_analyze_slp, vect_schedule_slp): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146875 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/39911
uros [Tue, 28 Apr 2009 06:54:02 +0000 (06:54 +0000)]
PR target/39911
* config/i386/i386.c (print_operand) ['Z']: Handle floating point
and integer modes for x87 operands.  Do not ICE for unsupported size,
generate error instead.  Generate error for unsupported operand types.
['z']: Do not handle HImode memory operands specially.  Warning
for floating-point operands.  Fallthru to 'Z' for unsupported operand
types.  Do not ICE for unsupported size, generate error instead.
(output_387_binary_op): Use %Z to output operands.
(output_fp_compare): Ditto.
(output_387_reg_move): Ditto.

testsuite/ChangeLog:

PR target/39911
* gcc.target/i386/pr39911.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146874 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Paul Thomas <pault@gcc.gnu.org>
pault [Tue, 28 Apr 2009 05:29:44 +0000 (05:29 +0000)]
2009-04-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39879
* trans_expr.c (gfc_conv_procedure_call): Deep copy a derived
type parentheses argument if it is a variable with allocatable
components.

2009-04-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39879
* gfortran.dg/alloc_comp_assign_10.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146872 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-28 Paul Thomas <pault@gcc.gnu.org>
pault [Tue, 28 Apr 2009 05:16:19 +0000 (05:16 +0000)]
2009-04-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39879
* trans_expr.c (gfc_conv_procedure_call): Deep copy a derived
type parentheses argument if it is a variable with allocatable
components.

2009-04-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39879
* gfortran.dg/alloc_comp_assign_10.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146871 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRevert:
bje [Tue, 28 Apr 2009 04:56:47 +0000 (04:56 +0000)]
Revert:
PR c++/35652
2009-03-27  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

gcc/
* builtins.c (c_strlen): Do not warn here.
* c-typeck.c (build_binary_op): Adjust calls to pointer_int_sum.
* c-common.c (pointer_int_sum): Take an explicit location.
Warn about offsets out of bounds.
* c-common.h (pointer_int_sum): Adjust declaration.

cp/
* typeck.c (cp_pointer_sum): Adjust call to pointer_int_sum.

testsuite/
* gcc.dg/pr35652.C: New.
* g++.dg/warn/pr35652.C: New.
* gcc.dg/format/plus-1.c: Adjust message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146870 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * interpret.cc (DEBUG): Rename this ...
davek [Tue, 28 Apr 2009 04:02:30 +0000 (04:02 +0000)]
* interpret.cc (DEBUG):  Rename this ...
(__GCJ_DEBUG):  ... to this throughout.
* configure.ac:  Likewise.
* interpret-run.cc:  Likewise.
* prims.cc:  Likewise.
* gnu/classpath/natConfiguration.cc:  Likewise.
* include/java-assert.h:  Likewise.
* java/io/natVMObjectInputStream.cc:  Likewise.

* configure:  Regenerate.
* include/config.h.in:  Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146869 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * java/lang/natVMClassLoader.cc
davek [Tue, 28 Apr 2009 03:49:13 +0000 (03:49 +0000)]
* java/lang/natVMClassLoader.cc
(java::lang::VMClassLoader::defineClass):  Fix assert.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146868 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 28 Apr 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146867 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix date
dj [Mon, 27 Apr 2009 23:30:03 +0000 (23:30 +0000)]
Fix date

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146864 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* lib/target-supports.exp (check_effective_target_double64): New.
dj [Mon, 27 Apr 2009 23:27:21 +0000 (23:27 +0000)]
* lib/target-supports.exp (check_effective_target_double64): New.
(check_effective_target_double64plus): New.
(check_effective_target_large_double): New.
* gcc.dg/Wconversion-real-integer.c: Require double64plus.
* gcc.dg/div-double-1.c: Likewise.
* gcc.dg/Wconversion-real.c: Require large_double.
* gcc.dg/cdce1.c: Require large_double instead of checking targets.

* gcc.c-torture/execute/ieee/unsafe-fp-assoc-1.c: Skip if doubles are too small.

* gcc.c-torture/execute/ieee/20010226-1.c: Mark all floating point
constants as long.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146863 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix formatting
ebotcazou [Mon, 27 Apr 2009 21:09:03 +0000 (21:09 +0000)]
Fix formatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146856 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago./:
ian [Mon, 27 Apr 2009 20:25:48 +0000 (20:25 +0000)]
./:
* collect2.c (is_ctor_dtor): Change type of ret field in struct
names to symkind.
* dce.c (run_fast_df_dce): Change type of old_flags to int.
* df-core.c (df_set_flags): Change return type to int.  Change
type of old_flags to int.
(df_clear_flags): Likewise.
* df-scan.c (df_def_record_1): Change 0 to VOIDmode.
(df_get_conditional_uses): Likewise.
* df.h (df_set_flags, df_clear_flags): Update declarations.
* dwarf2out.c (struct indirect_string_node): Change type of form
field to enum dwarf_form.
(AT_string_form): Change return type to enum dwarf_form.
* fixed-value.c (fixed_compare): Add cast to enum type.
* fwprop.c (update_df): Change 0 to VOIDmode.
* gensupport.c: Change 0 to UNKNOWN.
* gimple.h (gimple_cond_code): Add cast to enum type.
* haifa-sched.c (reemit_notes): Add cast to enum type.
* hooks.c (hook_int_void_no_regs): Remove function.
* hooks.h (hook_int_void_no_regs): Remove declaration.
* optabs.c (expand_widen_pattern_expr): Change 0 to VOIDmode.
* predict.c (combine_predictions_for_insn): Add casts to enum
type.
* real.c (real_arithmetic): Add cast to enum type.
(real_compare): Likewise.
* target.h (struct gcc_target): Change return type of
branch_target_register_class to enum reg_class.
* target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Define as
default_branch_target_register_class.
* targhooks.c (default_branch_target_register_class): New
function.
* targhooks.h (default_branch_target_register_class): Declare.
* tree-data-ref.c (print_direction_vector): Add cast to enum
type.
* tree-vect-data-refs.c (vect_supportable_dr_alignment): Remove
cast to int.
* tree-vect-loop.c (vect_create_epilog_for_reduction): Change 0 to
ERROR_MARK.
* tree-vect-slp.c (vect_build_slp_tree): Change 0 to
vect_uninitialized_def.  Change 0 to ERROR_MARK.
* tree-vect-stmts.c (supportable_widening_operation): Don't
initialize icode1 and icode2.
* tree-vectorizer.h (enum vect_def_type): Add
vect_uninitialized_def.
* config/sol2-c.c (cmn_err_length_specs): Change 0 to FMT_LEN_none
and to STD_C89.
(cmn_err_flag_specs): Change 0 to STD_C89.
(cmn_err_char_table): Likewise.
* config/arm/arm.c (get_arm_condition_code): Change type of code
to enum arm_cond_code.
(IWMMXT_BUILTIN): Change 0 to UNKNOWN.
(IWMMXT_BUILTIN2): Likewise.
(neon_builtin_type_bits): Don't define typedef.
(neon_builtin_datum): Change type of bits field to int.
(arm_expand_neon_args): Add cast to enum type.
* config/ia64/ia64.c (tls_symbolic_operand_type): Change 0 to
TLS_MODEL_NONE.
* config/i386/i386.c (bdesc_multi_arg): Change 0 to UNKNOWN.  Add
casts to enum type.
* config/mips/mips.c (LOONGSON_BUILTIN_ALIAS): Change 0 to
MIPS_FP_COND_f.
* config/mips/mips.md (jal_macro): Return enum constant.
(single_insn): Likewise.
* config/rs6000/rs6000.c (bdesc_altivec_preds): Change 0 to
CODE_FOR_nothing.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
casts to enum type.
* config/s390/s390.c (s390_tune_flags): Change type to int.
(s390_arch_flags): Likewise.
(s390_handle_arch_option): Change flags field of struct pta to
int.
* config/s390/s390.h (s390_tune_flags): Update declaration.
(s390_arch_flags): Likewise.
* config/sh/sh.c (prepare_move_operands): Compare
tls_symbolic_operand result with enum constant.
(sh_reorg): Change PUT_MODE to PUT_REG_NOTE_KIND.
(sh_expand_prologue): Add cast to enum type.
(sh_expand_epilogue): Likewise.
(tls_symbolic_operand): Change return type to enum tls_model.
(fpscr_set_from_mem): Add cast to enum type.
(legitimize_pic_address): Compare tls_symbolic_operand result with
enum constant.
(sh_target_reg_class): Change return type to enum reg_class.
* config/sh/sh.h (OVERRIDE_OPTIONS): Change CPU_xxx to
PROCESSOR_xxx.
* config/sh/sh-protos.h (tls_symbolic_operand): Update
declaration.
* config/sparc/sparc.c (sparc_override_options): Add cast to enum
type.
* config/sparc/sparc.md (empty_delay_slot): Return enum constant.
(pic, calls_alloca, calls_eh_return, leaf_function): Likewise.
(delayed_branch, tls_call_delay): Likewise.
(eligible_for_sibcall_delay): Likewise.
(eligible_for_return_delay): Likewise.
* config/spu/spu.c (expand_builtin_args): Add cast to enum type.
(spu_expand_builtin_1): Likewise.

* c-typeck.c (convert_for_assignment): Issue -Wc++-compat warnings
for all types of conversions.
(output_init_element): Issue -Wc++-compat warning if needed when
initializing a bitfield with enum type.
* c-parser.c (c_parser_expression): Set original_type to
original_type of right hand operand of comman operator.
cp/:
* semantics.c (finish_omp_clauses): Change type of c_kind to enum
omp_clause_code.
fortran/:
* trans-intrinsic.c (DEFINE_MATH_BUILTIN): Add casts to enum
type.
* trans-io.c (st_parameter_field): Add casts to enum type.
java/:
* builtins.c (java_builtins): Add casts to enum type.
* verify-impl.c (check_class_constant): Add cast to enum type.
(check_constant, check_wide_constant): Likewise.
objc/:
* objc-act.c (objc_gimplify_expr): Add casts to enum type.
testsuite/:
* gcc.dg/Wcxx-compat-5.c: New testcase.
* gcc.dg/Wcxx-compat-6.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146855 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rwild [Mon, 27 Apr 2009 20:23:51 +0000 (20:23 +0000)]
gcc/
* doc/c-tree.texi (Types, Functions, Expression trees): Fix
grammar nits.
* doc/cfg.texi (Maintaining the CFG, Liveness information):
Likewise.
* doc/cpp.texi (Standard Predefined Macros)
(Implementation-defined behavior): Likewise.
* doc/extend.texi (Function Attributes, Type Attributes):
Likewise.
* doc/gimple.texi (GIMPLE Exception Handling)
(@code{GIMPLE_ASSIGN}): Likewise.
* doc/install.texi (Prerequisites, Configuration, Specific):
Likewise.
* doc/invoke.texi (Warning Options, Optimize Options)
(AVR Options, Darwin Options): Likewise.
(Optimize Options): Reformulate -fwhole-program description.
* doc/loop.texi (Lambda): Likewise.
* doc/md.texi (Output Template, Define Constraints)
(Standard Names, Insn Splitting): Likewise.
* doc/options.texi (Option properties): Likewise.
* doc/passes.texi (Tree-SSA passes): Likewise.
* doc/rtl.texi (Side Effects, Assembler, Insns): Likewise.
* doc/tm.texi (Register Classes, Old Constraints, Scalar Return)
(File Names and DBX): Likewise.
* doc/trouble.texi (Incompatibilities): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146854 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* MAINTAINERS: Update my e-mail address.
wilson [Mon, 27 Apr 2009 19:51:20 +0000 (19:51 +0000)]
* MAINTAINERS: Update my e-mail address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146853 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * spu.c (spu_machine_dependent_reorg): Make sure branch label on hint
tsmigiel [Mon, 27 Apr 2009 19:33:20 +0000 (19:33 +0000)]
* spu.c (spu_machine_dependent_reorg): Make sure branch label on hint
instruction is correct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146852 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR testsuite/39807
jakub [Mon, 27 Apr 2009 19:11:23 +0000 (19:11 +0000)]
PR testsuite/39807
* dg-extract-results.sh: Close open files and use >> instead of >
to decrease number of concurrently open files from awk.  Avoid
= at the beginning of a regexp and redirect to a file determined
by curfile variable rather than concatenated strings to workaround
Solaris nawk bug.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146850 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago Allow non-constant arguments to conversion intrinsics.
tsmigiel [Mon, 27 Apr 2009 18:48:59 +0000 (18:48 +0000)]
Allow non-constant arguments to conversion intrinsics.
* spu-protos.h (exp2_immediate_p, spu_gen_exp2): Declare.
* predicates.md (spu_inv_exp2_operand, spu_exp2_operand): New.
* spu.c (print_operand): Handle 'v' and 'w'.
(exp2_immediate_p, spu_gen_exp2): Define.
* spu-builtins.def (spu_convts, spu_convtu, spu_convtf_0,
spu_convtf_1): Update parameter descriptions.
* spu-builtins.md (spu_csflt, spu_cuflt, spu_cflts, spu_cfltu):
Update.
* constraints.md ('v', 'w'): New.
* spu.md (UNSPEC_CSFLT, UNSPEC_CFLTS, UNSPEC_CUFLT, UNSPEC_CFLTU):
Remove.
(i2f, I2F): New define_mode_attr.
(floatsisf2, floatv4siv4sf2, fix_truncsfsi2, fix_truncv4sfv4si2,
floatunssisf2, floatunsv4siv4sf2, fixuns_truncsfsi2,
fixuns_truncv4sfv4si2):  Update to use mode attribute.
(float<mode><i2f>2_mul, float<mode><i2f>2_div,
fix_trunc<mode><f2i>2_mul, floatuns<mode><i2f>2_mul,
floatuns<mode><i2f>2_div, fixuns_trunc<mode><f2i>2_mul): New
patterns for combine.
* gcc.target/spu/intrinsics-3.c: Update tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146849 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * dbgcnt.def (cprop1, cprop2, gcse, jump_bypass): Remove
steven [Mon, 27 Apr 2009 17:21:27 +0000 (17:21 +0000)]
* dbgcnt.def (cprop1, cprop2, gcse, jump_bypass): Remove
(cprop, hoist, pre, store_motion): New debug counters.
* tree-pass.h (pass_tracer): Move to list of gimple passes, it
is not an RTL pass anymore.
(pass_profiling): Remove extern decl for pass removed in 2005.
(pass_gcse, pass_jump_bypass): Remove.
* final.c (rest_of_clean_state): Set flag_rerun_cse_after_global_opts
to 0 for clean state.
* toplev.h (flag_rerun_cse_after_global_opts): Add extern declaration.
* cse.c (gate_handle_cse_after_global_opts,
rest_of_handle_cse_after_global_opts): New functions.
(pass_cse_after_global_opts): New pass, does local CSE.
* timevar.def (TV_GCSE, TV_CPROP1, TV_CPROP2, TV_BYPASS): Remove.
(TV_CPROP): New timevar.
* gcse.c (flag_rerun_cse_after_global_opts): New global variable.
(run_jump_opt_after_gcse, max_gcse_regno): Remove global vars.
(gcse_main, recompute_all_luids): Remove.
(compute_hash_table_work): Call max_reg_num instead of reading
max_gcse_regno.
(cprop_jump): Don't set run_jump_opt_after_gcse.
(constprop_register): Always allow to alter jumps.
(cprop_insn): Likewise.
(do_local_cprop): Likewise.
(local_cprop_pass): Likewise.  Return non-zero if something changed.
(cprop): Remove function, fold interesting bits into one_cprop_pass.
(find_implicit_sets): Add note about missed optimization opportunity.
(one_cprop_pass): Rewrite to be "the" CPROP pass, called from the
pass_rtl_cprop execute function.
Don't bother tracking the pass number, each pass gets its own dumpfile
now anyway.
Always allow to alter jumpsand bypass jumps.
(bypass_block): Don't ignore regno >= max_gcse_regno, find_bypass_set
will just find no suitable set.
(pre_edge_insert): Fix dumping, this function is for PRE only.
(one_pre_gcse_pass): Rewrite to be "the" PRE pass, called from the
pass_rtl_pre execute function.
(hoist_code): Return non-zero if something changed.  Keep track of
substitutions and insertions for statistics gathering similar to PRE.
(one_code_hoisting_pass): Rewrite to be "the" code hoisting pass,
called from the pass_rtl_hoist execute function.  Show pass statistics.
(compute_store_table): Use max_reg_num directly instead of using the
formerly global max_gcse_regno.
(build_store_vectors): Likewise.
(replace_store_insn): Fix dumping.
(store_motion): Rename to ...
(one_store_motion_pass): ... this.  Rewrite to be "the" STORE_MOTION
pass, called from the pass_rtl_store_motion execute function.  Keep
track of substitutions and insertions for statistics gathering similar
to PRE.
(bypass_jumps): Remove, fold interesting bits into ...
(one_cprop_pass): ... this.  Rewrite to be "the" CPROP pass, called
from the pass_rtl_cprop execute function.
(gate_handle_jump_bypass, rest_of_handle_jump_bypass,
pass_jump_bypass): Remove.
(gate_handle_gcse, rest_of_handle_gcse): Remove.
(gate_rtl_cprop, execute_rtl_cprop, pass_rtl_cprop): New.
(gate_rtl_pre, execute_rtl_pre, pass_rtl_pre): New.
(gate_rtl_hoist, execute_rtl_hoist, pass_rtl_hoist): New.
(gate_rtl_store_motion, execute_rtl_store_motion,
pass_rtl_store_motion): New.
* common.opt: Remove flag_cse_skip_blocks, adjust documentation to
make it clear that -fcse-skip-blocks is a no-op for backward compat.
* passes.c (init_optimization_passes): Remove pass_gcse and
pass_jump_bypass.  Schedule cprop, pre, hoist, cprop, store_motion,
and cse_after_global_opts in place of pass_gcse.  Schedule cprop
instead of pass_jump_bypass.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146848 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-27 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 27 Apr 2009 15:50:05 +0000 (15:50 +0000)]
2009-04-27  Richard Guenther  <rguenther@suse.de>

PR middle-end/39928
* gimplify.c (gimplify_expr): If we are required to create
a temporary make sure it ends up as register.

* gcc.c-torture/compile/pr39928-1.c: New testcase.
* gcc.c-torture/compile/pr39928-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146846 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * MAINTAINERS: Replace Aldy Hernandez as a maintainer for the FRV.
nickc [Mon, 27 Apr 2009 14:35:42 +0000 (14:35 +0000)]
    * MAINTAINERS: Replace Aldy Hernandez as a maintainer for the FRV.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146843 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
hjl [Mon, 27 Apr 2009 14:02:09 +0000 (14:02 +0000)]
gcc/

2009-04-27  H.J. Lu  <hongjiu.lu@intel.com>

PR target/39903
* config/i386/i386.c (construct_container): Don't call
gen_reg_or_parallel with BLKmode on X86_64_SSE_CLASS,
X86_64_SSESF_CLASS and X86_64_SSEDF_CLASS.

gcc/testsuite/

2009-04-27  H.J. Lu  <hongjiu.lu@intel.com>

PR target/39903
* gcc.dg/torture/pr39903-1.c: New.
* gcc.dg/torture/pr39903-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146842 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd dump file checks for sms tests
revitale [Mon, 27 Apr 2009 12:17:09 +0000 (12:17 +0000)]
Add dump file checks for sms tests

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146838 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap.
matz [Mon, 27 Apr 2009 12:16:00 +0000 (12:16 +0000)]
* ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap.
(get_gimple_for_ssa_name): Adjust, lookup using SSA_NAME_DEF_STMT.
* tree-ssa-live.h: (find_replaceable_exprs): Return a bitmap.
(dump_replaceable_exprs): Take a bitmap.
* cfgexpand.c (gimple_cond_pred_to_tree): Handle bitmap instead of
array.
(expand_gimple_basic_block): Likewise.
* tree-ssa-ter.c (struct temp_expr_table_d): Make
replaceable_expressions member a bitmap.
(free_temp_expr_table): Pass back and deal with bitmap, not gimple*.
(mark_replaceable): Likewise.
(find_replaceable_in_bb, dump_replaceable_exprs): Likewise.
* tree-outof-ssa.c (remove_ssa_form): 'values' is a bitmap.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146837 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-27 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 27 Apr 2009 11:18:38 +0000 (11:18 +0000)]
2009-04-27  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (remove_useless_stmts): Verify stmts afterwards.
(verify_stmts): Dispatch to gimple/type verification code.
* tree-inline.c (remap_gimple_op_r): Work around C++ FE
issue with call argument types.

java/
PR java/38374
* constants.c (build_constants_constructor): Retain the old
pointer type as valid TYPE_POINTER_TO after patching the
type of the constant pool decl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146831 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-into-ssa.c (regs_to_rename, mem_syms_to_rename): Remove.
matz [Mon, 27 Apr 2009 11:15:53 +0000 (11:15 +0000)]
    * tree-into-ssa.c (regs_to_rename, mem_syms_to_rename): Remove.
        (init_update_ssa, delete_update_ssa, update_ssa): Remove references
        to above.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146830 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * resource.c (find_basic_block): Use BLOCK_FOR_INSN to look up
ebotcazou [Mon, 27 Apr 2009 10:42:09 +0000 (10:42 +0000)]
* resource.c (find_basic_block): Use BLOCK_FOR_INSN to look up
a label's basic block.
(mark_target_live_regs): Tidy and rework obsolete comments.
Change back DF problem to LIVE.  If a label starts a basic block,
assume that all registers that used to be live then still are.
(init_resource_info): If a label starts a basic block, set its
BLOCK_FOR_INSN accordingly.
(fini_resource_info): Undo the setting of BLOCK_FOR_INSN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146829 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-27 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 27 Apr 2009 08:26:40 +0000 (08:26 +0000)]
2009-04-27  Richard Guenther  <rguenther@suse.de>

* tree-flow-inline.h (function_ann): Remove.
(get_function_ann): Likewise.
* tree-dfa.c (create_function_ann): Remove.
* tree-flow.h (struct static_var_ann_d): Remove.
(struct function_ann_d): Likewise.
(union tree_ann_d): Remove fdecl member.
(function_ann_t): Remove.
(function_ann, get_function_ann, create_function_ann): Remove
declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146828 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/alpha/alpha.c (code_for_builtin): Declare as enum insn_code.
uros [Mon, 27 Apr 2009 07:20:29 +0000 (07:20 +0000)]
* config/alpha/alpha.c (code_for_builtin): Declare as enum insn_code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146826 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/39875
jakub [Mon, 27 Apr 2009 05:54:32 +0000 (05:54 +0000)]
PR c++/39875
* cvt.c (convert_to_void) <case INDIRECT_REF>: Only warn about
-Wunused-value if implicit.

* g++.dg/warn/Wunused-15.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146825 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 27 Apr 2009 00:17:04 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146824 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ipa-pure-const.c (struct funct_state_d): New fields
hubicka [Sun, 26 Apr 2009 23:35:27 +0000 (23:35 +0000)]
* ipa-pure-const.c (struct funct_state_d): New fields
state_previously_known, looping_previously_known; remove
state_set_in_source.
(analyze_function): Use new fields.
(propagate): Avoid assumption that state_set_in_source imply
nonlooping.

* tree-ssa-loop-niter.c (finite_loop_p): New function.
* tree-ssa-loop-ivcanon.c (empty_loop_p): Use it.
* cfgloop.h (finite_loop_p): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146821 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* tree-flow.h (tree_ann_common_d): Remove aux and value_handle members.
matz [Sun, 26 Apr 2009 22:13:39 +0000 (22:13 +0000)]
* tree-flow.h (tree_ann_common_d): Remove aux and value_handle members.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146820 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-pass.h (pass_del_ssa, pass_mark_used_blocks,
matz [Sun, 26 Apr 2009 22:09:50 +0000 (22:09 +0000)]
* tree-pass.h (pass_del_ssa, pass_mark_used_blocks,
pass_free_cfg_annotations, pass_free_datastructures): Remove decls.
* gimple-low.c (mark_blocks_with_used_vars, mark_used_blocks,
pass_mark_used_blocks): Remove.
* tree-optimize.c (pass_free_datastructures,
execute_free_cfg_annotations, pass_free_cfg_annotations): Remove.
* passes.c (init_optimization_passes): Don't call
pass_mark_used_blocks, remove dead code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146819 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-26 H.J. Lu <hongjiu.lu@intel.com>
hjl [Sun, 26 Apr 2009 21:40:47 +0000 (21:40 +0000)]
2009-04-26  H.J. Lu  <hongjiu.lu@intel.com>

* tree-outof-ssa.c (rewrite_trees): Add ATTRIBUTE_UNUSED.
* tree-ssa-live.h (register_ssa_partition): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146818 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
matz [Sun, 26 Apr 2009 19:35:04 +0000 (19:35 +0000)]
gcc/
        Expand from SSA.
* builtins.c (fold_builtin_next_arg): Handle SSA names.
* tree-ssa-copyrename.c (rename_ssa_copies): Use ssa_name() directly.
* tree-ssa-coalesce.c (create_outofssa_var_map): Mark only useful
SSA names.
(compare_pairs): Swap cost comparison.
(coalesce_ssa_name): Don't use change_partition_var.
* tree-nrv.c (struct nrv_data): Add modified member.
(finalize_nrv_r): Set it.
(tree_nrv): Use it to update statements.
(pass_nrv): Require PROP_ssa.
* tree-mudflap.c (mf_decl_cache_locals,
mf_build_check_statement_for): Use make_rename_temp.
(pass_mudflap_2): Require PROP_ssa, run ssa update at finish.
* alias.c (find_base_decl): Handle SSA names.
* emit-rtl (set_reg_attrs_for_parm): Make non-static.
(component_ref_for_mem_expr): Don't leak SSA names into RTL.
* rtl.h (set_reg_attrs_for_parm): Declare.
* tree-optimize.c (pass_cleanup_cfg_post_optimizing): Rename
to "optimized", remove unused locals at finish.
(execute_free_datastructures): Make global, call
delete_tree_cfg_annotations.
(execute_free_cfg_annotations): Don't call
delete_tree_cfg_annotations.

* ssaexpand.h: New file.
* expr.c (toplevel): Include ssaexpand.h.
(expand_assignment): Handle SSA names the same as register
variables.
(expand_expr_real_1): Expand SSA names.
* cfgexpand.c (toplevel): Include ssaexpand.h.
(SA): New global variable.
(gimple_cond_pred_to_tree): Fold TERed comparisons into predicates.
(SSAVAR): New macro.
(set_rtl): New helper function.
(add_stack_var): Deal with SSA names, use set_rtl.
(expand_one_stack_var_at): Likewise.
(expand_one_stack_var): Deal with SSA names.
(stack_var_size_cmp): Use code (SSA_NAME / DECL) as tie breaker
before unique numbers.
(expand_stack_vars): Use set_rtl.
(expand_one_var): Accept SSA names, add asserts for them, feed them
to above subroutines.
(expand_used_vars): Expand all partitions (without default defs),
then only the local decls (ignoring those expanded already).
(expand_gimple_cond): Remove edges when jumpif() expands an
unconditional jump.
(expand_gimple_basic_block): Don't clear EDGE_EXECUTABLE here,
or remove abnormal edges.  Ignore insns setting the LHS of a TERed
SSA name.
(gimple_expand_cfg): Call into rewrite_out_of_ssa, initialize
members of SA; deal with PARM_DECL partitions here; expand
all PHI nodes, free tree datastructures and SA.  Commit instructions
on edges, clear EDGE_EXECUTABLE and remove abnormal edges here.
(pass_expand): Require and destroy PROP_ssa, verify SSA form, flow
info and statements at start, collect garbage at finish.
* tree-ssa-live.h (struct _var_map): Remove partition_to_var member.
(VAR_ANN_PARTITION) Remove.
(change_partition_var): Don't declare.
(partition_to_var): Always return SSA names.
(var_to_partition): Only accept SSA names.
(register_ssa_partition): Only check argument.
* tree-ssa-live.c (init_var_map): Don't allocate partition_to_var
member.
(delete_var_map): Don't free it.
(var_union): Only accept SSA names, simplify.
(partition_view_init): Mark only useful SSA names as used.
(partition_view_fini): Only deal with SSA names.
(change_partition_var): Remove.
(dump_var_map): Use ssa_name instead of partition_to_var member.
* tree-ssa.c (delete_tree_ssa): Don't remove PHI nodes on RTL
basic blocks.
* tree-outof-ssa.c (toplevel): Include ssaexpand.h and expr.h.
(struct _elim_graph): New member const_dests; nodes member vector of
ints.
(set_location_for_edge): New static helper.
(create_temp): Remove.
(insert_partition_copy_on_edge, insert_part_to_rtx_on_edge,
insert_value_copy_on_edge, insert_rtx_to_part_on_edge): New
functions.
(new_elim_graph): Allocate const_dests member.
(clean_elim_graph): Truncate const_dests member.
(delete_elim_graph): Free const_dests member.
(elim_graph_size): Adapt to new type of nodes member.
(elim_graph_add_node): Likewise.
(eliminate_name): Likewise.
(eliminate_build): Don't take basic block argument, deal only with
partition numbers, not variables.
(get_temp_reg): New static helper.
(elim_create): Use it, deal with RTL temporaries instead of trees.
(eliminate_phi): Adjust all calls to new signature.
(assign_vars, replace_use_variable, replace_def_variable): Remove.
(rewrite_trees): Only do checking.
(edge_leader, stmt_list, leader_has_match, leader_match): Remove.
(same_stmt_list_p, identical_copies_p, identical_stmt_lists_p,
init_analyze_edges_for_bb, fini_analyze_edges_for_bb,
contains_tree_r, MAX_STMTS_IN_LATCH,
process_single_block_loop_latch, analyze_edges_for_bb,
perform_edge_inserts): Remove.
(expand_phi_nodes): New global function.
(remove_ssa_form): Take ssaexpand parameter.  Don't call removed
functions, initialize new parameter, remember partitions having a
default def.
(finish_out_of_ssa): New global function.
(rewrite_out_of_ssa): Make global.  Adjust call to remove_ssa_form,
don't reset in_ssa_p here, don't disable TER when mudflap.
(pass_del_ssa): Remove.
* tree-flow.h (struct var_ann_d): Remove out_of_ssa_tag and
partition members.
(execute_free_datastructures): Declare.
* Makefile.in (SSAEXPAND_H): New variable.
(tree-outof-ssa.o, expr.o, cfgexpand.o): Depend on SSAEXPAND_H.
* basic-block.h (commit_one_edge_insertion): Declare.
* passes.c (init_optimization_passes): Move pass_nrv and
pass_mudflap2 before pass_cleanup_cfg_post_optimizing, remove
pass_del_ssa, pass_free_datastructures, pass_free_cfg_annotations.
* cfgrtl.c (commit_one_edge_insertion): Make global, don't declare.
(redirect_branch_edge): Deal with super block when expanding, split
out jump patching itself into ...
(patch_jump_insn): ... here, new static helper.

testsuite/

Expand from SSA.
* gcc.dg/tree-ssa/20030728-1.c: Use -rtl-expand-details dump and
change regexps.
* gcc.target/i386/pr37248-1.c: Modified.
* gcc.target/i386/pr37248-3.c: Modified.
* gcc.target/i386/pr37248-2.c: Modified.
* gnat.dg/aliasing1.adb: Modified.
* gnat.dg/pack9.adb: Modified.
* gnat.dg/aliasing2.adb: Modified.
* gcc.dg/strict-overflow-2.c: Modified.
* gcc.dg/autopar/reduc-1char.c: Modified.
* gcc.dg/autopar/reduc-2char.c: Modified.
* gcc.dg/autopar/reduc-1.c: Modified.
* gcc.dg/autopar/reduc-2.c: Modified.
* gcc.dg/autopar/reduc-3.c: Modified.
* gcc.dg/autopar/reduc-6.c: Modified.
* gcc.dg/autopar/reduc-7.c: Modified.
* gcc.dg/autopar/reduc-8.c: Modified.
* gcc.dg/autopar/reduc-9.c: Modified.
* gcc.dg/autopar/reduc-1short.c: Modified.
* gcc.dg/autopar/reduc-2short.c: Modified.
* gcc.dg/autopar/parallelization-1.c: Modified.
* gcc.dg/strict-overflow-4.c: Modified.
* gcc.dg/strict-overflow-6.c: Modified.
* gcc.dg/gomp/combined-1.c: Modified.
* gcc.dg/no-strict-overflow-1.c: Modified.
* gcc.dg/no-strict-overflow-3.c: Modified.
* gcc.dg/no-strict-overflow-5.c: Modified.
* gcc.dg/tree-ssa/reassoc-13.c: Modified.
* gcc.dg/tree-ssa/pr18134.c: Modified.
* gcc.dg/tree-ssa/20030824-1.c: Modified.
* gcc.dg/tree-ssa/vector-2.c: Modified.
* gcc.dg/tree-ssa/forwprop-9.c: Modified.
* gcc.dg/tree-ssa/loop-21.c: Modified.
* gcc.dg/tree-ssa/20030824-2.c: Modified.
* gcc.dg/tree-ssa/vector-3.c: Modified.
* gcc.dg/tree-ssa/asm-3.c: Modified.
* gcc.dg/tree-ssa/pr23294.c: Modified.
* gcc.dg/tree-ssa/loop-22.c: Modified.
* gcc.dg/tree-ssa/loop-15.c: Modified.
* gcc.dg/tree-ssa/prefetch-4.c: Modified.
* gcc.dg/tree-ssa/pr22051-1.c: Modified.
* gcc.dg/tree-ssa/pr20139.c: Modified.
* gcc.dg/tree-ssa/scev-cast.c: Modified.
* gcc.dg/tree-ssa/pr22051-2.c: Modified.
* gcc.dg/tree-ssa/reassoc-1.c: Modified.
* gcc.dg/tree-ssa/loop-5.c: Modified.
* gcc.dg/tree-ssa/pr19431.c: Modified.
* gcc.dg/tree-ssa/pr32044.c: Modified.
* gcc.dg/tree-ssa/prefetch-7.c: Modified.
* gcc.dg/tree-ssa/loop-19.c: Modified.
* gcc.dg/tree-ssa/loop-28.c: Modified.
* gcc.dg/tree-ssa/ssa-pre-15.c: Modified.
* gcc.dg/tree-ssa/divide-1.c: Modified.
* gcc.dg/tree-ssa/inline-1.c: Modified.
* gcc.dg/tree-ssa/divide-3.c: Modified.
* gcc.dg/tree-ssa/pr30978.c: Modified.
* gcc.dg/tree-ssa/alias-6.c: Modified.
* gcc.dg/tree-ssa/divide-4.c: Modified.
* gcc.dg/tree-ssa/alias-11.c: Modified.
* gcc.dg/no-strict-overflow-7.c: Modified.
* gcc.dg/strict-overflow-1.c: Modified.
* gcc.dg/pr15784-4.c: Modified.
* gcc.dg/pr34263.c: Modified.
* gcc.dg/strict-overflow-3.c: Modified.
* gcc.dg/tree-prof/stringop-1.c: Modified.
* gcc.dg/tree-prof/val-prof-1.c: Modified.
* gcc.dg/tree-prof/val-prof-2.c: Modified.
* gcc.dg/tree-prof/val-prof-3.c: Modified.
* gcc.dg/tree-prof/val-prof-4.c: Modified.
* gcc.dg/no-strict-overflow-2.c: Modified.
* gcc.dg/no-strict-overflow-4.c: Modified.
* gcc.dg/no-strict-overflow-6.c: Modified.
* g++.dg/tree-ssa/pr27090.C: Modified.
* g++.dg/tree-ssa/tmmti-2.C: Modified.
* g++.dg/tree-ssa/ptrmemfield.C: Modified.
* g++.dg/tree-ssa/pr19807.C: Modified.
* g++.dg/opt/pr30965.C: Modified.
* g++.dg/init/new17.C: Modified.
* gfortran.dg/whole_file_6.f90: Modified.
* gfortran.dg/whole_file_5.f90: Modified.
* gfortran.dg/reassoc_1.f90: Modified.
* gfortran.dg/reassoc_3.f90: Modified.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146817 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2009-04-26 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sun, 26 Apr 2009 19:27:50 +0000 (19:27 +0000)]
2009-04-26  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/39893
* gfortran.dg/assumed_charlen_dummy.f90: New Test.

2009-04-26  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/39893
fortran/data.c (gfc_assign_data_value): If the lvalue is an
assumed character length entity in a data statement, then
return FAILURE to prevent segmentation fault.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146816 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-ssa-copyrename.c (rename_ssa_copies): Don't iterate
matz [Sun, 26 Apr 2009 19:24:16 +0000 (19:24 +0000)]
* tree-ssa-copyrename.c (rename_ssa_copies): Don't iterate
beyond num_ssa_names.
* tree-ssa-ter.c (free_temp_expr_table): Likewise.
* tree-ssa-coalesce.c (create_outofssa_var_map): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146815 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR inline-asm/39543
jakub [Sun, 26 Apr 2009 18:56:14 +0000 (18:56 +0000)]
PR inline-asm/39543
* fwprop.c (forward_propagate_asm): New function.
(forward_propagate_and_simplify): Propagate also into __asm, if it
doesn't increase the number of referenced registers.

* gcc.target/i386/pr39543-1.c: New test.
* gcc.target/i386/pr39543-2.c: New test.
* gcc.target/i386/pr39543-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146813 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c/39889
jakub [Sun, 26 Apr 2009 18:51:07 +0000 (18:51 +0000)]
PR c/39889
* stmt.c (warn_if_unused_value): Look through NON_LVALUE_EXPR.

* gcc.dg/Wunused-value-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146811 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-nested.c (get_nonlocal_vla_type): If not optimizing, call
jakub [Sun, 26 Apr 2009 18:47:54 +0000 (18:47 +0000)]
* tree-nested.c (get_nonlocal_vla_type): If not optimizing, call
note_nonlocal_vla_type for nonlocal VLAs.
(note_nonlocal_vla_type, note_nonlocal_block_vlas,
contains_remapped_vars, remap_vla_decls): New functions.
(convert_nonlocal_reference_stmt): If not optimizing, call
note_nonlocal_block_vlas on GIMPLE_BIND block vars.
(nesting_copy_decl): Return {VAR,PARM,RESULT}_DECL unmodified
if it wasn't found in var_map.
(finalize_nesting_tree_1): Call remap_vla_decls.  If outermost
GIMPLE_BIND doesn't have gimple_bind_block, chain debug_var_chain
to BLOCK_VARS (DECL_INITIAL (root->context)) instead of calling
declare_vars.
* gimplify.c (nonlocal_vlas): New variable.
(gimplify_var_or_parm_decl): Add debug VAR_DECLs for non-local
referenced VLAs.
(gimplify_body): Create and destroy nonlocal_vlas.

* trans-decl.c: Include pointer-set.h.
(nonlocal_dummy_decl_pset, tree nonlocal_dummy_decls): New variables.
(gfc_nonlocal_dummy_array_decl): New function.
(gfc_get_symbol_decl): Call it for non-local dummy args with saved
descriptor.
(gfc_get_symbol_decl): Set DECL_BY_REFERENCE when needed.
(gfc_generate_function_code): Initialize nonlocal_dummy_decl{s,_pset},
chain it to outermost block's vars, destroy it afterwards.
* Make-lang.in (trans-decl.o): Depend on pointer-set.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146810 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * dwarf2out.c (loc_descr_plus_const): New function.
jakub [Sun, 26 Apr 2009 18:45:41 +0000 (18:45 +0000)]
* dwarf2out.c (loc_descr_plus_const): New function.
(build_cfa_aligned_loc, tls_mem_loc_descriptor,
mem_loc_descriptor, loc_descriptor_from_tree_1,
descr_info_loc, gen_variable_die): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146809 138bc75d-0d04-0410-961f-82ee72b054a4