gcc.git
16 years agotree-vrp.c (extract_code_and_val_from_cond): Remove.
Rafael Avila de Espindola [Wed, 2 Apr 2008 08:44:39 +0000 (08:44 +0000)]
tree-vrp.c (extract_code_and_val_from_cond): Remove.

2008-04-02  Rafael Espindola  <espindola@google.com>

* tree-vrp.c (extract_code_and_val_from_cond): Remove.
(register_edge_assert_for_2): Split the cond argument.
(register_edge_assert_for_1): Adjust for the change in
register_edge_assert_for_2.
(register_edge_assert_for): Split the cond argument.
(find_switch_asserts): Adjust for the change in
register_edge_assert_for.

From-SVN: r133827

16 years agoMAINTAINERS (Write After Approval): Add myself.
Kai Tietz [Wed, 2 Apr 2008 08:29:10 +0000 (10:29 +0200)]
MAINTAINERS (Write After Approval): Add myself.

2008-04-02  Kai Tietz  <kai.tietz@onvision.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133826

16 years agocygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte offsets for 64-bit mingw.
Kai Tietz [Wed, 2 Apr 2008 07:57:02 +0000 (07:57 +0000)]
cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte offsets for 64-bit mingw.

2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

* gcc/config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add 8 byte
offsets for 64-bit mingw.
* gcc/config/i386/i386.c (ix86_pass_by_reference): Correct calling
abi for x86_64-pc-mingw.

From-SVN: r133825

16 years agoconfig.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.
Kai Tietz [Wed, 2 Apr 2008 07:48:07 +0000 (07:48 +0000)]
config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.

2008-04-02  Kai Tietz  <kai.tietz@onevision.com>

* config.gcc: Add for x86_64-*-mingw* the t-crtfm to tbuild.

From-SVN: r133824

16 years agoMakefile.tpl (.NOTPARALLEL): Revert previous change.
Seongbae Park [Wed, 2 Apr 2008 02:29:33 +0000 (02:29 +0000)]
Makefile.tpl (.NOTPARALLEL): Revert previous change.

2008-04-01  Seongbae Park <seongbae.park@gmail.com>

* Makefile.tpl (.NOTPARALLEL): Revert previous change.
* Makefile.in (.NOTPARALLEL): Ditto.

From-SVN: r133815

16 years agore PR ada/33688 (Ada package Gnat.Sockets missing constant for IP_PKTINFO (patch))
John David Anglin [Wed, 2 Apr 2008 01:02:58 +0000 (01:02 +0000)]
re PR ada/33688 (Ada package Gnat.Sockets missing constant for IP_PKTINFO (patch))

PR ada/33688
* g-soccon-darwin.ads: Define new constant IP_PKTINFO.

From-SVN: r133814

16 years agoDaily bump.
GCC Administrator [Wed, 2 Apr 2008 00:17:30 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133812

16 years agore PR tree-optimization/35787 (Revision 133680 breaks 447.dealII)
Richard Guenther [Tue, 1 Apr 2008 22:59:21 +0000 (22:59 +0000)]
re PR tree-optimization/35787 (Revision 133680 breaks 447.dealII)

2008-04-02  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_assert): Make sure to not
produce range min/max with TREE_OVERFOW set.
If merging a anti-range and a range keep the anti-range if
the range covers all values of the type.
(register_edge_assert_for_2): Only allow sign-changing
conversions in detecting canonical range checks.  Also
register an assert for the unsigned name if useful.

PR tree-optimization/35787
* tree-vrp.c (vrp_val_max): New function.
(vrp_val_min): Likewise.
(vrp_val_is_max): Move earlier, use vrp_val_{min,max}.
(vrp_val_is_min): Likewise.
(supports_overflow_infinity): Use vrp_val_{min,max}.
(negative_overflow_infinity): Likewise.
(positive_overflow_infinity): Likewise.
(is_negative_overflow_infinity): Use vrp_val_is_{min,max}.
(is_positive_overflow_infinity): Likewise.
(is_overflow_infinity): Likewise.
(avoid_overflow_infinity): Use vrp_val_{min,max} and
vrp_val_is_{min,max}.
(set_and_canonicalize_value_range): Canonicalize anti-ranges
to ranges if possible.  Avoid empty ranges.

* gcc.dg/tree-ssa/vrp38.c: New testcase.
* gcc.dg/tree-ssa/vrp39.c: Likewise.

From-SVN: r133808

16 years agore PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)
John David Anglin [Tue, 1 Apr 2008 22:23:04 +0000 (22:23 +0000)]
re PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)

PR ada/33857
* env.c: Always include crt_externs.h if __APPLE__ is defined.
(__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined.

From-SVN: r133806

16 years agore PR middle-end/35705 (Symbol address check eliminated by C frontend.)
John David Anglin [Tue, 1 Apr 2008 22:14:41 +0000 (22:14 +0000)]
re PR middle-end/35705 (Symbol address check eliminated by C frontend.)

PR middle-end/35705
* fold-const.c (get_pointer_modulus_and_residue): Return modulus 1 if
the expression is a function address.

From-SVN: r133804

16 years agotrans-common.c (create_common): Add decl to function chain to preserve identifier...
George Helffrich [Tue, 1 Apr 2008 21:23:36 +0000 (21:23 +0000)]
trans-common.c (create_common): Add decl to function chain to preserve identifier scope in debug output.

* fortran/trans-common.c (create_common):  Add decl to function
chain to preserve identifier scope in debug output.

* dbxout.c: Emit .stabs debug info for Fortran COMMON block
variables as base symbol name + offset using N_BCOMM/N_ECOMM.
(is_fortran, dbxout_common_name, dbxout_common_check): New functions.
(dbxout_symbol_location): Transform N_LCSYM to N_GSYM for storage
in common.
(dbxout_syms): Check for COMMON-based symbol and wrap in
N_BCOMM/N_ECOMM stab bracket, including as many symbols as possible
in bracket for efficiency.

* dwarf2out.c: Emit DWARF debug info for Fortran COMMON block
using DW_TAG_common_block + member offset.
(add_pubname_string): New function.
(dw_expand_expr): New function to find block name and offset for
COMMON var.
(common_check): New function to check whether symbol in Fortran COMMON.
(gen_variable_die): If COMMON, use DW_TAG_common_block.

* testsuite/gcc.dg/debug/pr35154.c:  New test to check that non-Fortran
use of common is unchanged.

* testsuite/lib/gfortran-dg.exp:  New harness to compile Fortran progs
with all combinations of debug options available on target.
* testsuite/gfortran.dg/debug/debug.exp:  Ditto.
* testsuite/gfortran.dg/debug/trivial.f:  Ditto.
* testsuite/gfortran.dg/debug/pr35154-stabs.f:  New test case for
.stabs functionality.
* testsuite/gfortran.dg/debug/pr35154-dwarf2.f:  New test case for
DWARF functionality.

From-SVN: r133801

16 years agore PR c/35436 (ICE with attribute "format")
Volker Reichelt [Tue, 1 Apr 2008 20:33:37 +0000 (20:33 +0000)]
re PR c/35436 (ICE with attribute "format")

PR c/35436
* c-format.c (init_dynamic_gfc_info): Ignore invalid locus type.

* gcc.dg/format/gcc_gfc-2.c: New test.

From-SVN: r133800

16 years agov850.md (casesi): Remove if (0) code.
Ben Elliston [Tue, 1 Apr 2008 20:25:23 +0000 (20:25 +0000)]
v850.md (casesi): Remove if (0) code.

* config/v850/v850.md (casesi): Remove if (0) code.
* config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
* config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.

From-SVN: r133799

16 years agoi386.md (rex64suffix): New mode attribute.
Uros Bizjak [Tue, 1 Apr 2008 20:20:09 +0000 (22:20 +0200)]
i386.md (rex64suffix): New mode attribute.

        * config/i386/i386.md (rex64suffix): New mode attribute.
        (floathi<mode>2): Disable expander for SSE math.
        (*floathi<mode>2_1): New insn insn_and_split pattern.
        (*floathi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floathi<mode>2_i387): New macroized insn pattern.
        (float<SSEMODEI24:mode><X87MODEF:mode>2): New macroized expander.
        (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): New macroized
        insn_and_split pattern.
        (*floatsi<mode>2_vector_mixed_with_temp, *floatsi<mode>2_vector_mixed):
        New macroized instruction patterns and corresponding post-reload
        splitters.
        (*floatsi<mode>2_mixed_with_temp): New macroized instruction pattern
        and corresponding post-reload splitters.
        (*floatsi<mode>2_mixed_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_vector_sse_with_temp, *floatsi<mode>2_vector_sse): New
        macroized instruction patterns and corresponding post-reload splitters.
        (*floatsi<mode>2_sse_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_sse_interunit, *floatsi<mode>2_mixed_nointerunit):
        New macroized instruction patterns.
        (*floatsi<mode>2_i387_with_temp): New macroized instruction pattern and
        corresponding post-reload splitters.
        (*floatsi<mode>2_i387): New macroized instruction patterns.

From-SVN: r133798

16 years agoi386.md (smaxmin): New.
H.J. Lu [Tue, 1 Apr 2008 19:12:31 +0000 (12:12 -0700)]
i386.md (smaxmin): New.

2008-04-01  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (smaxmin): New.
(umaxmin): Likewise.
(maxminiprefix): Likewise.
(maxminfprefix): Likewise.
(<code><mode>3): Likewise.
(smin<mode>3): Removed.
(smax<mode>3): Likewise.

* config/i386/mmx.md (mmx_<code>v2sf3): New.
(mmx_<code>v4hi3): Likewise.
(mmx_<code>v8qi3): Likewise.
(mmx_smaxv2sf3): Removed.
(mmx_sminv2sf3): Likewise.
(mmx_umaxv8qi3): Likewise.
(mmx_smaxv4hi3): Likewise.
(mmx_uminv8qi3): Likewise.
(mmx_sminv4hi3): Likewise.

* config/i386/sse.md (<addsub><mode>3): New.
(*<addsub><mode>3): Likewise.
(<sse>_vm<addsub><mode>3): Likewise.
(<maxmin><mode>3): Likewise.
(*<maxmin><mode>3_finite): Likewise.
(*<maxmin><mode>3): Likewise.
(<sse>_vm<maxmin><mode>3): Likewise.
(sse3_h<addsub>v4sf3): Likewise.
(sse3_h<addsub>v2df3): Likewise.
(<maxmin>v16qi3): Likewise.
(*<maxmin>v16qi3): Likewise.
(<maxmin>v8hi3): Likewise.
(*<maxmin>v8hi3): Likewise.
(*sse4_1_<maxmin><mode>3): Likewise.
(*sse4_1_<maxmin><mode>3): Likewise.
(add<mode>3): Removed.
(*add<mode>3): Likewise.
(<sse>_vmadd<mode>3): Likewise.
(sub<mode>3): Likewise.
(*sub<mode>3): Likewise.
(<sse>_vmsub<mode>3): Likewise.
(smin<mode>3): Likewise.
(*smin<mode>3_finite): Likewise.
(*smin<mode>3): Likewise.
(<sse>_vmsmin<mode>3): Likewise.
(smax<mode>3): Likewise.
(*smax<mode>3_finite): Likewise.
(*smax<mode>3): Likewise.
(<sse>_vmsmax<mode>3): Likewise.
(sse3_haddv4sf3): Likewise.
(sse3_haddv2df3): Likewise.
(sse3_hsubv4sf3): Likewise.
(sse3_hsubv2df3): Likewise.
(umaxv16qi3): Likewise.
(*umaxv16qi3): Likewise.
(smaxv8hi3): Likewise.
(*smaxv8hi3): Likewise.
(*sse4_1_smax<mode>3): Likewise.
(*sse4_1_umax<mode>3): Likewise.
(uminv16qi3): Likewise.
(*uminv16qi3): Likewise.
(sminv8hi3): Likewise.
(*sminv8hi3): Likewise.
(*sse4_1_smin<mode>3): Likewise.
(*sse4_1_umin<mode>3): Likewise.

From-SVN: r133797

16 years agotree-cfg.c (verify_expr): remove in_phi.
Rafael Avila de Espindola [Tue, 1 Apr 2008 18:40:16 +0000 (18:40 +0000)]
tree-cfg.c (verify_expr): remove in_phi.

2008-04-01  Rafael Espindola  <espindola@google.com>

* tree-cfg.c (verify_expr): remove in_phi.
        (verify_stmt): Don't call walk_tree with verify_expr. Use
is_gimple_min_invariant instead of is_gimple_val.

From-SVN: r133795

16 years agotexi2pod.pl: Handle @samp and @url inside verbatim blocks.
Joseph Myers [Tue, 1 Apr 2008 16:38:56 +0000 (17:38 +0100)]
texi2pod.pl: Handle @samp and @url inside verbatim blocks.

contrib:
* texi2pod.pl: Handle @samp and @url inside verbatim blocks.
Handle @heading.  Handle enumerated lists with starting numbers
and extra headings.

gcc:
* doc/include/gpl_v3.texi: Update for manpage generation.
* doc/gcc.texi, doc/gccint.texi: Include gpl_v3.texi instead of
gpl.texi.
* doc/sourcebuild.texi: Document gpl_v3.texi as well as gpl.texi.
* Makefile.in (TEXI_GCC_FILES, TEXI_GCCINT_FILES): Include
gpl_v3.texi instead of gpl.texi.
(gpl.pod): New.

gcc/fortran:
* gfortran.texi: Include gpl_v3.texi instead of gpl.texi
* Make-lang.in (GFORTRAN_TEXI): Include gpl_v3.texi instead of
gpl.texi.

gcc/java:
* gcj.texi: Include gpl_v3.texi instead of gpl.texi
* Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
gpl.texi.

From-SVN: r133794

16 years ago* MAINTAINERS (Write After Approval): Add myself.
Peter O'Gorman [Tue, 1 Apr 2008 15:53:22 +0000 (15:53 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r133793

16 years agog-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO.
Andreas Jaeger [Tue, 1 Apr 2008 15:42:11 +0000 (17:42 +0200)]
g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO.

2008-04-01  Andreas Jaeger  <aj@suse.de>

        * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and
        IP_PKTINFO.

From-SVN: r133792

16 years agore PR pch/13675 (#including a precompiled header more than once in the same unit...
Jakub Jelinek [Tue, 1 Apr 2008 10:58:02 +0000 (12:58 +0200)]
re PR pch/13675 (#including a precompiled header more than once in the same unit fails)

PR pch/13675
* files.c (struct _cpp_file): Remove pch field.
(pch_open_file): Don't set file->pch, just file->pchname.
(should_stack_file): After pfile->cb.read_pch call
free pchname and clear pchname, don't close file->fd.
Test file->pchname instead of file->pch.  Don't close fd after cb.
(_cpp_stack_include): Test file->pchname instead of file->pch.

* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).

From-SVN: r133790

16 years agotree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
Rafael Avila de Espindola [Tue, 1 Apr 2008 09:11:11 +0000 (09:11 +0000)]
tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.

2008-04-01  Rafael Espindola  <espindola@google.com>

* tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
(extract_code_and_val_from_cond): Use
extract_code_and_val_from_cond_with_ops.

From-SVN: r133789

16 years agofunction.c (free_after_compilation): Free epilogue_delay_list.
Jan Hubicka [Tue, 1 Apr 2008 08:51:25 +0000 (10:51 +0200)]
function.c (free_after_compilation): Free epilogue_delay_list.

* function.c (free_after_compilation): Free epilogue_delay_list.
(prepare_function_start): Assert that previous compilation was freed.

From-SVN: r133787

16 years agore PR middle-end/35781 (Revision 133759 breaks ia64)
Jan Hubicka [Tue, 1 Apr 2008 08:41:14 +0000 (10:41 +0200)]
re PR middle-end/35781 (Revision 133759 breaks ia64)

PR middle-end/35781
* m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Use
rtl.emit instead cfun->emit.
* sparc/sparc.h (INIT_EXPANDERS): Likewise.
* ia64/ia64.h (INIT_EXPANDERS): Likewise.

Co-Authored-By: Andreas Tobler <andreast@gcc.gnu.org>
Co-Authored-By: James E Wilson <wilson@tuliptree.org>
From-SVN: r133786

16 years ago* doc/c-tree.texi (Function Basics): Fix grammatical error.
Ben Elliston [Tue, 1 Apr 2008 05:32:18 +0000 (05:32 +0000)]
* doc/c-tree.texi (Function Basics): Fix grammatical error.

From-SVN: r133785

16 years agoFix IA-64 enable-checking glibc ICE.
James E Wilson [Tue, 1 Apr 2008 03:04:15 +0000 (20:04 -0700)]
Fix IA-64 enable-checking glibc ICE.

* varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
consistently.

From-SVN: r133783

16 years agoDaily bump.
GCC Administrator [Tue, 1 Apr 2008 00:17:28 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133779

16 years agocommon.opt (fprofile-dir=, [...]): New options
Seongbae Park [Mon, 31 Mar 2008 21:52:10 +0000 (21:52 +0000)]
common.opt (fprofile-dir=, [...]): New options

gcc/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* common.opt (fprofile-dir=, fprofile-use=, fprofile-generate=):
New options
(fprofile-use): Add var flag_profile_use
* coverage.c (coverage_begin_output): Do not open a gcno file for output
only if -ftest-coverage is set.
Do not add getpwd() to gcda file path.
(build_gcov_info): Check the new flag
flag_profile_datafile_relative_path.
(coverage_init): Use profile_data_prefix.
Read profile counter only if flag_profile_use is set.
* opts.c (common_handle_option): New option fprofile-use=,
fprofile-dir=, fprofile-generate=.
* toplev.c (profile_data_prefix): New variable definition.
* toplev.h (profile_data_prefix): New declaration.
* doc/invoke.tex (Option Summary, Optimization Options):
Add new options.

gcc/testsuite/ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* g++.db/bprob/bprob.exp: Do not check gcno files.
Use -fprofile-use for profile use.
* gcc.misc-tests/bprob.exp: Ditto.
* g++.dg/tree-pro/tree-prof.exp: Do not check gcno files.
* gcc.dg/matrix/matrix.exp: Ditto.
* gcc.dg/struct/struct-reorg.exp: Ditto.
* gcc.dg/tree-prof/tree-prof.exp: Ditto.
* gcc.dg/profile-dir-1.c: New test.
* gcc.dg/profile-dir-2.c: New test.
* gcc.dg/profile-dir-3.c: New test.

ChangeLog:
2008-03-31  Seongbae Park <seongbae.park@gmail.com>

* Makefile.tpl (.NOTPARALLEL): Serialize stageprofile libiberty.
* Makefile.in (.NOTPARALLEL): Regenerate.

From-SVN: r133774

16 years agore PR target/35695 (-funroll-loops breaks inline float divide)
James E Wilson [Mon, 31 Mar 2008 19:51:50 +0000 (12:51 -0700)]
re PR target/35695 (-funroll-loops breaks inline float divide)

PR target/35695
* config/ia64/div.md (recip_approx_rf): Use UNSPEC not DIV.
* config/ia64/ia64.c (rtx_needs_barrier): Handle
UNSPEC_FR_RECIP_APPROX_RES.
* config/ia64/ia64.md (UNSPEC_FR_RECIP_APPROX_RES): Define.

From-SVN: r133772

16 years agore PR c/35750 (ICE with invalid old-style parameter declaration)
Volker Reichelt [Mon, 31 Mar 2008 19:37:45 +0000 (19:37 +0000)]
re PR c/35750 (ICE with invalid old-style parameter declaration)

PR c/35750
* c-decl.c (store_parm_decls_oldstyle): Skip invalid parameters.

* gcc.dg/old-style-param-1.c: New test.

From-SVN: r133771

16 years agog-table.adb, [...]: Fix comment typos.
Ralf Wildenhues [Mon, 31 Mar 2008 19:28:19 +0000 (19:28 +0000)]
g-table.adb, [...]: Fix comment typos.

gcc/ada/
* g-table.adb, g-tasloc.adb, g-traceb.ads,
g-trasym.adb, g-utf_32.adb, gen-soccon.c, gigi.h, gmem.c,
gnatbind.adb, gnatchop.adb, gnatcmd.adb,
gnatcmd.ads, gnatdll.adb, gnatfind.adb,
gnatlink.adb, gnatmem.adb, gprep.adb,
i-cstrea-vms.adb, i-cstrin.adb, i-pacdec.ads,
i-vxwork.ads, impunit.adb, init.c, initialize.c, inline.adb,
layout.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
lib-xref.ads, lib.adb, link.c, live.ads,
make.adb, makegpr.adb, makeutl.adb, math_lib.adb,
mdll-utl.adb, mdll.ads, memroot.adb, memroot.ads,
misc.c, mlib-prj.adb, mlib-tgt-hpux.adb,
mlib-tgt-linux.adb, mlib-tgt-tru64.adb, mlib-tgt.ads,
namet.adb, namet.h, nlists.adb, nlists.ads,
nlists.h, opt.ads, osint-b.ads, osint-c.adb,
osint-c.ads, osint.adb, osint.ads, output.ads,
par-ch10.adb, par-ch12.adb, par-ch2.adb, par-ch3.adb,
par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch9.adb,
par-endh.adb, par-labl.adb, par-prag.adb,
par-sync.adb, par-tchk.adb, par-util.adb,
par.adb, prep.adb, prep.ads, prepcomp.adb, prj-attr.ads,
prj-dect.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
prj-nmsc.ads, prj-pp.adb, prj-proc.adb,
prj-strt.ads, prj-tree.ads, prj.adb, prj.ads: Fix comment typos.

From-SVN: r133770

16 years agodecl.c (gnat_to_gnu_entity): Do not force a non-null size if it has overflowed.
Eric Botcazou [Mon, 31 Mar 2008 19:14:08 +0000 (19:14 +0000)]
decl.c (gnat_to_gnu_entity): Do not force a non-null size if it has overflowed.

* decl.c (gnat_to_gnu_entity) <object>: Do not force a non-null
size if it has overflowed.

From-SVN: r133768

16 years agore PR tree-optimization/30186 (accessing an element via a "pointer" on a vector does...
Andrew Pinski [Mon, 31 Mar 2008 18:22:05 +0000 (18:22 +0000)]
re PR tree-optimization/30186 (accessing an element via a "pointer" on a vector does not cause vec_extract to be used (non-zero index))

2008-03-31  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30186
        * fold-const.c (fold_indirect_ref_1): Support accessing non first
        element of the vector via a pointer.

2008-03-31  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30186
        * gcc.dg/tree-ssa/vector-1.c: New testcase.
        * gcc.c-torture/execute/vector-1.c: New testcase.
        * gcc.c-torture/execute/vector-2.c: New testcase.

From-SVN: r133766

16 years agotlink.c (scan_linker_output): Look for symbol name in single quotes.
Ian Lance Taylor [Mon, 31 Mar 2008 18:01:43 +0000 (18:01 +0000)]
tlink.c (scan_linker_output): Look for symbol name in single quotes.

* tlink.c (scan_linker_output): Look for symbol name in single
quotes.

From-SVN: r133764

16 years agoUpdate copyright date.
Ian Lance Taylor [Mon, 31 Mar 2008 17:44:22 +0000 (17:44 +0000)]
Update copyright date.

From-SVN: r133762

16 years agocp-demangle.c (d_substitution): Correct overflow check to avoid -fstrict-overflow...
Ian Lance Taylor [Mon, 31 Mar 2008 17:38:38 +0000 (17:38 +0000)]
cp-demangle.c (d_substitution): Correct overflow check to avoid -fstrict-overflow optimizations.

* cp-demangle.c (d_substitution): Correct overflow check to avoid
-fstrict-overflow optimizations.

From-SVN: r133761

16 years agobuiltins.c (expand_builtin_setjmp_receiver): Update call of get_arg_pointer_save_area.
Jan Hubicka [Mon, 31 Mar 2008 17:08:31 +0000 (19:08 +0200)]
builtins.c (expand_builtin_setjmp_receiver): Update call of get_arg_pointer_save_area.

* builtins.c (expand_builtin_setjmp_receiver): Update call of
get_arg_pointer_save_area.
* expr.c (init_expr): Just clear out rtl.expr.
* function.c (free_after_compilation): Clear out whole RTL structure.
(get_func_frame_size): Merge into ...
(get_frame_size): ... this one.
(assign_stack_local_1): Merge into ...
(assign_stack_local): ... this one.
(expand_function_end): Update call of get_arg_pointer_save_area.
(get_art_pointer_save_area): Remove cfun argument.
* function.h (emit_status): regno_pointer_align does not need length
attribute. Move x_regno_reg_rtx to ...
(regno_reg_rtx): ... new global array.
(reg_rtx_no, seq_stack, REGNO_POINTER_ALIGN): Update accestors.
(pending_stack_adjust, inhibit_defer_pop, saveregs_value,
apply_args_value, forced_labels, stack_pointer_delta): Update accestors.
(struct varasm_status): Move here from varasm.c
(struct rtl_data): New. Move here some fields from struct function.
(return_label, naked_return_label, stack_slot_list, parm_birth_insn,
frame_offset, stack_check_probe_note, arg_pointer_save_area,
used_temp_slots avail_temp_slots, temp_slot_level,
nonlocal_goto_handler_labels): Update accesstors.
(rtl): New global variable.
(struct function): Move some fileds to rtl_data.
(get_arg_pointer_save_area): Update prototype.
* emit-rtl.c (rtl): Declare.
(regno_reg_rtx): Declare.
(first_insn, last_insn, cur_insn_uid, last_location, first_label_num): Update.
(gen_reg_rtx): Update.
(init_virtual_regs): Do not tate emit_status argument.
(init_emit): Do not allocate emit.
* varasm.c (varasm_statuc): Move to function.h.
(n_deferred_constatns): Update accestor.
(init_varasm_status): Do not allocate varasm_status.
(force_const_mem, get_pool_size, output_constant_pool): Update.
* stmt.c (force_label_rtx): Do not use x_ prefixes.
(expand_nl_goto_receiver): Update get_arg_pointer_save_area.

From-SVN: r133759

16 years agoutils2.c (find_common_type): Document assumption on t1/t2 vs lhs/rhs.
Olivier Hainque [Mon, 31 Mar 2008 17:03:09 +0000 (17:03 +0000)]
utils2.c (find_common_type): Document assumption on t1/t2 vs lhs/rhs.

2008-03-31  Olivier Hainque  <hainque@adacore.com>
            Eric Botcazou  <botcazou@adacore.com>

        ada/
        * utils2.c (find_common_type): Document assumption on t1/t2 vs
        lhs/rhs. Force use of lhs type if smaller, whatever the modes.

        testsuite/
        * gnat.dg/assign_from_packed.adb: New testcase.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r133757

16 years agore PR rtl-optimization/35729 (const volatile variable access incorrectly hoisted...
Zdenek Dvorak [Mon, 31 Mar 2008 14:19:52 +0000 (16:19 +0200)]
re PR rtl-optimization/35729 (const volatile variable access incorrectly hoisted out of loop)

PR rtl-optimization/35729
* loop-invariant.c (check_maybe_invariant): Disallow volatile memory
references.

* gcc.dg/pr35729.c: New test.

From-SVN: r133755

16 years agoAdd missing ChangeLog entry for revision 133750.
H.J. Lu [Mon, 31 Mar 2008 13:39:41 +0000 (06:39 -0700)]
Add missing ChangeLog entry for revision 133750.

From-SVN: r133754

16 years agore PR target/32000 (x86 backend uses aligned load on unaligned memory)
H.J. Lu [Mon, 31 Mar 2008 13:32:38 +0000 (13:32 +0000)]
re PR target/32000 (x86 backend uses aligned load on unaligned memory)

gcc/

2008-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR target/32000
* config/i386/i386.md (*movti_internal): Emit unaligned SSE
load/store if memory is unaligned.
(*movti_rex64): Likewise.

* config/i386/predicates.md (misaligned_operand): New.

gcc/testsuite/

2008-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR target/32000
* gcc.target/i386/pr32000-1.c: New.

From-SVN: r133753

16 years agoRemoved, causes resource issues on some environments.
Arnaud Charlet [Mon, 31 Mar 2008 11:02:18 +0000 (13:02 +0200)]
Removed, causes resource issues on some environments.

From-SVN: r133750

16 years agore PR tree-optimization/35431 (ICE with complex integer, invalid gimple)
Andrew Pinski [Mon, 31 Mar 2008 09:45:53 +0000 (02:45 -0700)]
re PR tree-optimization/35431 (ICE with complex integer, invalid gimple)

2008-03-31  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/35431
        * tree-ssa-phiopt.c (conditional_replacement): Return early for
        complex types.

2008-03-31  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/35431
        * gcc.c-torture/compile/pr35431.c: New testcase.

From-SVN: r133749

16 years agoconstraints.md: Add 'j' constraint.
Jan Beulich [Mon, 31 Mar 2008 07:53:48 +0000 (07:53 +0000)]
constraints.md: Add 'j' constraint.

gcc/
2008-03-31  Jan Beulich  <jbeulich@novell.com>

* config/ia64/constraints.md: Add 'j' constraint.
* config/ia64/ia64.md (movsi_internal): Add addp4 case.
(movdi_internal): Likewise.

From-SVN: r133748

16 years agoerror27.C: Use -fno-finite-math-only on sh* targets.
Kaz Kojima [Mon, 31 Mar 2008 01:17:57 +0000 (01:17 +0000)]
error27.C: Use -fno-finite-math-only on sh* targets.

* g++.dg/other/error27.C: Use -fno-finite-math-only on sh*
targets.

From-SVN: r133746

16 years agoDaily bump.
GCC Administrator [Mon, 31 Mar 2008 00:18:11 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r133744

16 years agore PR c++/35245 (FAIL: g++.dg/other/anon5.C)
John David Anglin [Sun, 30 Mar 2008 23:20:57 +0000 (23:20 +0000)]
re PR c++/35245 (FAIL: g++.dg/other/anon5.C)

PR c++/35245
* g++.dg/other/anon5.C: Skip on hppa*-*-hpux*.

From-SVN: r133739

16 years agore PR c++/35578 (Error about misplaced 'friend' word is issued on a wrong line)
Volker Reichelt [Sun, 30 Mar 2008 22:02:06 +0000 (22:02 +0000)]
re PR c++/35578 (Error about misplaced 'friend' word is issued on a wrong line)

PR c++/35578
* parser.c (cp_parser_decl_specifier_seq): Add location to error
message.

* g++.dg/parse/friend8.C: New test.

From-SVN: r133738

16 years agore PR c/35748 (ICE with cast to invalid union)
Volker Reichelt [Sun, 30 Mar 2008 21:58:43 +0000 (21:58 +0000)]
re PR c/35748 (ICE with cast to invalid union)

PR c/35748
* c-typeck.c (build_c_cast): Skip invalid fields in unions.

* gcc.dg/union-cast-4.c: New test.

From-SVN: r133737

16 years agore PR target/35757 (Incorrect contraint on sse4_1_blendp<ssemodesuffixf2c>)
H.J. Lu [Sun, 30 Mar 2008 21:13:33 +0000 (21:13 +0000)]
re PR target/35757 (Incorrect contraint on sse4_1_blendp<ssemodesuffixf2c>)

gcc/

2008-03-30  H.J. Lu  <hongjiu.lu@intel.com>

PR target/35757
* config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Issue
proper error message for the third argument on blendpd and
blendps.

* config/i386/sse.md (blendbits): New.
(sse4_1_blendp<ssemodesuffixf2c>): Use it.

gcc/testsuite/

2008-03-30  H.J. Lu  <hongjiu.lu@intel.com>

PR target/35757
* gcc.target/i386/sse4_1-blendps-2.c: New.
* gcc.target/i386/sse4_1-pblendw-2.c: Likewise.

From-SVN: r133736

16 years agoa-textio.ads, [...]: Fix comment typos.
Ralf Wildenhues [Sun, 30 Mar 2008 19:39:01 +0000 (19:39 +0000)]
a-textio.ads, [...]: Fix comment typos.

gcc/ada/
* a-textio.ads, a-witeio.ads, a-ztexio.ads, ali.ads,
einfo.ads, erroutc.adb, erroutc.ads, exp_attr.adb,
exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
exp_pakd.ads, exp_prag.adb, exp_smem.adb,
exp_tss.ads, exp_util.adb, exp_util.ads,
exp_vfpt.adb, freeze.adb, freeze.ads,
frontend.adb, g-alleve.adb, g-altcon.adb,
g-altive.ads, g-alveop.ads, g-alvevi.ads,
g-arrspl.adb, g-busorg.ads, g-calend.adb,
g-calend.ads, g-casuti.ads, g-cgideb.adb,
g-comlin.adb, g-comlin.ads, g-curexc.ads,
g-debpoo.adb, g-debpoo.ads, g-decstr.adb,
g-dirope.adb, g-dirope.ads, g-dynhta.ads,
g-dyntab.adb, g-encstr.ads, g-excact.ads,
g-except.ads, g-expect.ads, g-heasor.adb,
g-hesora.adb, g-hesorg.adb, g-htable.ads,
g-locfil.ads, g-md5.adb, g-md5.ads,
g-memdum.ads, g-moreex.ads, g-os_lib.adb,
g-pehage.adb, g-pehage.ads, g-regexp.adb,
g-regexp.ads, g-regpat.adb, g-regpat.ads,
g-soccon-aix.ads, g-soccon-darwin.ads,
g-soccon-freebsd.ads, g-soccon-hpux-ia64.ads,
g-soccon-hpux.ads, g-soccon-irix.ads,
g-soccon-linux-64.ads, g-soccon-linux-ppc.ads,
g-soccon-linux-x86.ads, g-soccon-lynxos.ads,
g-soccon-mingw.ads, g-soccon-solaris-64.ads,
g-soccon-solaris.ads, g-soccon-tru64.ads,
g-soccon-vms.ads, g-soccon-vxworks.ads,
g-soccon.ads, g-socket.adb, g-socket.ads,
g-socthi-mingw.adb, g-socthi-vms.adb,
g-socthi-vxworks.adb, g-soliop-mingw.ads,
g-soliop-solaris.ads, g-soliop.ads, g-spipat.adb,
g-spipat.ads, g-string.adb, g-stsifd-sockets.adb: Fix comment
typos.

From-SVN: r133735

16 years agointernal_pack_1.f90: Added complex to test case.
Thomas Koenig [Sun, 30 Mar 2008 16:16:24 +0000 (16:16 +0000)]
internal_pack_1.f90: Added complex to test case.

2008-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

* gfortran.dg/internal_pack_1.f90:  Added complex to test case.
* gfortran.dg/internal_pack_2.f90:  Likewise.
* gfortran.dg/intrinsic_spread_1.f90:  Likewise.
* gfortran.dg/intrinsic_spread_2.f90:  Likewise.
* gfortran.dg/intrinsic_pack_1.f90:  Likewise.
* gfortran.dg/intrinsic_pack_2.f90:  Likewise.
* gfortran.dg/intrinsic_unpack_1.f90:  Likewise.
* gfortran.dg/intrinsic_unpack_2.f90:  Likewise.

From-SVN: r133733

16 years agofold-const.c (fold_binary): Add missing conversions.
Eric Botcazou [Sun, 30 Mar 2008 15:54:05 +0000 (15:54 +0000)]
fold-const.c (fold_binary): Add missing conversions.

* fold-const.c (fold_binary) <BIT_IOR_EXPR>: Add missing conversions.

From-SVN: r133732

16 years agore PR middle-end/31023 (Fold is agnostic of integer sub-types)
Richard Guenther [Sun, 30 Mar 2008 14:56:28 +0000 (14:56 +0000)]
re PR middle-end/31023 (Fold is agnostic of integer sub-types)

2008-03-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/31023
* fold-const.c (fold_sign_changed_comparison): Do leave
conversions to base-types alone.

From-SVN: r133731

16 years agore PR fortran/35740 (a = conjg(transpose(a)) still gives wrong results, see bug...
Paul Thomas [Sun, 30 Mar 2008 14:13:21 +0000 (14:13 +0000)]
re PR fortran/35740 (a = conjg(transpose(a)) still gives wrong  results, see bug 31994)

2008-03-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35740
* resolve.c (resolve_function, resolve_call): If the procedure
is elemental do not look for noncopying intrinsics.

2008-03-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35740
* gfortran.dg/transpose_conjg_1.f90: New test.

From-SVN: r133729

16 years agoDaily bump.
GCC Administrator [Sun, 30 Mar 2008 00:17:25 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133726

16 years agore PR libstdc++/35725 (ambiguous std::fill with character array)
Paolo Carlini [Sat, 29 Mar 2008 22:38:19 +0000 (22:38 +0000)]
re PR libstdc++/35725 (ambiguous std::fill with character array)

2008-03-29  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/35725
* include/bits/stl_algobase.h (__fill_a(_ForwardIterator,
_ForwardIterator, _Tp), __fill_a(_Tp*, _Tp*, _Tp),
__fill_n_a(_OutputIterator, _Size, _Tp), __fill_n_a(_Tp*, _Size,
_Tp)): Fix signatures.
* testsuite/25_algorithms/fill/35725.cc: New.
* testsuite/25_algorithms/fill_n/35725.cc: Likewise.

From-SVN: r133721

16 years agors6000.c (rs6000_stack_info): Don't force saving of the link register if one altivec...
Andrew Pinski [Sat, 29 Mar 2008 21:37:11 +0000 (21:37 +0000)]
rs6000.c (rs6000_stack_info): Don't force saving of the link register if one altivec register is be saved.

2008-03-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/rs6000/rs6000.c (rs6000_stack_info): Don't force saving of
        the link register if one altivec register is be saved.

From-SVN: r133720

16 years ago* final.c (final_scan_insn): Remove if (0) code.
Ben Elliston [Sat, 29 Mar 2008 21:33:54 +0000 (21:33 +0000)]
* final.c (final_scan_insn): Remove if (0) code.

From-SVN: r133719

16 years agosocket2.adb: Remove since identical to socket1.adb.
Laurent GUERBY [Sat, 29 Mar 2008 15:23:36 +0000 (15:23 +0000)]
socket2.adb: Remove since identical to socket1.adb.

2008-03-29  Laurent GUERBY  <laurent@guerby.net>

        * gnat.dg/socket2.adb: Remove since identical to socket1.adb.

From-SVN: r133717

16 years agobaseline_symbols.txt: Update.
Matthias Klose [Sat, 29 Mar 2008 09:23:13 +0000 (09:23 +0000)]
baseline_symbols.txt: Update.

2008-03-29  Matthias Klose  <doko@ubuntu.com>

* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/mips-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Likewise.

From-SVN: r133713

16 years agore PR fortran/35698 (lbound and ubound wrong for allocated run-time zero size array)
Paul Thomas [Sat, 29 Mar 2008 08:11:02 +0000 (08:11 +0000)]
re PR fortran/35698 (lbound and ubound wrong for allocated run-time zero size array)

2008-03-29  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35698
* trans-array.c (gfc_array_init_size): Set 'size' zero if
negative in one dimension.

PR fortran/35702
* trans-expr.c (gfc_trans_string_copy): Only assign a char
directly if the lhs and rhs types are the same.

2008-03-29  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/35698
* gfortran.dg/allocate_zerosize_3.f: New test.

PR fortran/35702
* gfortran.dg/character_assign_1.f90: New test.

From-SVN: r133710

16 years ago* c-parser.c (c_parser_next_token_is_keyword): Simplify.
Volker Reichelt [Sat, 29 Mar 2008 00:39:48 +0000 (00:39 +0000)]
* c-parser.c (c_parser_next_token_is_keyword): Simplify.

From-SVN: r133709

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

From-SVN: r133707

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Fri, 28 Mar 2008 23:22:49 +0000 (23:22 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
PR libfortran/32512
* Makefile.am:  Add new variable, i_spread_c, containing
pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, spread_i16.c,
spread_r4.c, spread_r8.c, spread_r10.c, spread_r16.c,
spread_c4.c, spread_c8.c, spread_c10.c, spread_c16.c.
* Makefile.in:  Regenerated.
* libgfortran.h:  Add prototypes for spread_i1, spread_i2,
spread_i4, spread_i8, spread_i16, spread_r4, spread_r8,
spread_c4, spread_c8, spread_c10, spread_c16,
spread_scalar_i1, spread_scalar_i2, spread_scalar_i4,
spread_scalar_i8, spread_scalar_i16, spread_scalar_r4
spread_scalar_r8, spread_scalar_c4, spread_scalar_c8,
spread_scalar_c10 and spread_scalar_c16.
Add macros to isolate both type and size information
from array descriptors with a single mask operation.
* intrinsics/spread_generic.c:  Add calls to specific
spread functions.
* m4/spread.m4:  New file.
* generated/spread_i1.c:  New file.
* generated/spread_i2.c:  New file.
* generated/spread_i4.c:  New file.
* generated/spread_i8.c:  New file.
* generated/spread_i16.c:  New file.
* generated/spread_r4.c:  New file.
* generated/spread_r8.c:  New file.
* generated/spread_r10.c:  New file.
* generated/spread_r16.c:  New file.
* generated/spread_c4.c:  New file.
* generated/spread_c8.c:  New file.
* generated/spread_c10.c:  New file.
* generated/spread_c16.c:  New file.

2008-03-28  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
PR libfortran/32512
* intrinsic_spread_1.f90:  New file.
* intrinsic_spread_2.f90:  New file.
* intrinsic_spread_3.f90:  New file.

From-SVN: r133702

16 years agore PR fortran/34714 (ICE-on-invalid in gfc_conv_descriptor_dtype)
Daniel Franke [Fri, 28 Mar 2008 22:57:25 +0000 (18:57 -0400)]
re PR fortran/34714 (ICE-on-invalid in gfc_conv_descriptor_dtype)

gcc/fortran:
2008-03-28  Daniel Franke  <franke.daniel@gmail.com>
            Paul Richard Thomas <paul.richard.thomas@gmail.com>

PR fortran/34714
        * primary.c (match_variable): Improved matching of function
        result variables.
        * resolve.c (resolve_allocate_deallocate): Removed checks if
        the actual argument for STAT is a variable.

gcc/testsuite:
2008-03-28  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/34714
        * gfortran.dg/alloc_alloc_expr_3.f90: New test.
        * gfortran.dg/allocate_stat.f90: Adjusted error-match text.
        * gfortran.dg/func_assign.f90: Likewise.
        * gfortran.dg/implicit_11.f90: Likewise.
        * gfortran.dg/proc_assign_1.f90: Likewise.
        * gfortran.dg/proc_assign_2.f90: Likewise.
        * gfortran.dg/procedure_lvalue.f90: Likewise.

Co-Authored-By: Paul Richard Thomas <paul.richard.thomas@gmail.com>
From-SVN: r133701

16 years agore PR fortran/35699 (run-time abort writing zero sized section to direct access file)
Jerry DeLisle [Fri, 28 Mar 2008 22:16:29 +0000 (22:16 +0000)]
re PR fortran/35699 (run-time abort writing zero sized section to direct access file)

2008-03-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/35699
* gfortran.dg/direct_io_10.f: New test.

From-SVN: r133700

16 years agore PR fortran/35699 (run-time abort writing zero sized section to direct access file)
Jerry DeLisle [Fri, 28 Mar 2008 22:13:17 +0000 (22:13 +0000)]
re PR fortran/35699 (run-time abort writing zero sized section to direct access file)

2008-03-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/35699
* io/transfer.c (write_buf):  Don't pad the record, just return if the
data is NULL.  (next_record_w): If there are bytes left in the record
for unformatted direct I/O, pad out the record with zero bytes.

From-SVN: r133699

16 years agosse.md (*and<mode>3): Pass <MODE>mode instead of V4SFmode to ix86_binary_operator_ok.
H.J. Lu [Fri, 28 Mar 2008 18:42:06 +0000 (18:42 +0000)]
sse.md (*and<mode>3): Pass <MODE>mode instead of V4SFmode to ix86_binary_operator_ok.

2008-03-28  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/sse.md (*and<mode>3): Pass <MODE>mode instead
of V4SFmode to ix86_binary_operator_ok.

From-SVN: r133693

16 years agoi386.c (override_options): Initialize ix86_veclib_handler to ix86_veclibabi_svml...
Uros Bizjak [Fri, 28 Mar 2008 18:17:00 +0000 (19:17 +0100)]
i386.c (override_options): Initialize ix86_veclib_handler to ix86_veclibabi_svml when -mveclibabi=svml is used.

        * config/i386/i386.c (override_options): Initialize
        ix86_veclib_handler to ix86_veclibabi_svml when
        -mveclibabi=svml is used.
        (ix86_veclibabi_svml): New function for SVML ABI style
        vectorization support.
        * doc/invoke.texi (-mveclibabi) [svml]: Document new target option.

testsuite/ChangeLog:

        * gcc.target/i386/vectorize6.c: New test.

From-SVN: r133692

16 years agoacinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set glibcxx_ld_is_gold.
Ian Lance Taylor [Fri, 28 Mar 2008 17:32:05 +0000 (17:32 +0000)]
acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set glibcxx_ld_is_gold.

* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Set
glibcxx_ld_is_gold.  Check for gold in --gc-sections test.
(GLIBCXX_ENABLE_SYMVERS): Check for gold.
* aclocal.m4, configure: Rebuild.

From-SVN: r133689

16 years agore PR fortran/35721 (ASSOCIATED returns false when strides confusing)
Tobias Burnus [Fri, 28 Mar 2008 13:47:06 +0000 (14:47 +0100)]
re PR fortran/35721 (ASSOCIATED returns false when strides confusing)

2008-03-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/35721
        * intrinsics/associated.c (associated): Ignore different
        stride of pointer vs. target if only one element is referred.

2008-03-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/35721
        * gfortran.dg/associated_target_2.f90: New.

From-SVN: r133684

16 years agore PR rtl-optimization/19580 (missed load/store motion)
Richard Guenther [Fri, 28 Mar 2008 13:44:41 +0000 (13:44 +0000)]
re PR rtl-optimization/19580 (missed load/store motion)

2008-03-28  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19580
* gcc.dg/tree-ssa/loop-34.c: New testcase.

From-SVN: r133683

16 years agoMakefile.in (POSTCOMPILE): New variable.
Tom Tromey [Fri, 28 Mar 2008 13:32:47 +0000 (13:32 +0000)]
Makefile.in (POSTCOMPILE): New variable.

* Makefile.in (POSTCOMPILE): New variable.
(.c.o): Use it.

From-SVN: r133682

16 years agofold-const.c (tree_unary_nonnegative_warnv_p): Make it public.
Rafael Avila de Espindola [Fri, 28 Mar 2008 13:15:00 +0000 (13:15 +0000)]
fold-const.c (tree_unary_nonnegative_warnv_p): Make it public.

2008-03-28  Rafael Espindola  <espindola@google.com>

* fold-const.c (tree_unary_nonnegative_warnv_p): Make it public.
(tree_binary_nonnegative_warnv_p): Make it public.
(tree_single_nonnegative_warnv_p): Make it public.
(tree_invalid_nonnegative_warnv_p): Make it public.
(tree_unary_nonzero_warnv_p): Make it public.
(tree_binary_nonzero_warnv_p): Make it public
(tree_single_nonzero_warnv_p): Make it public.
* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops): New function.
(extract_range_from_binary_expr): Split the expr argument.
(extract_range_from_unary_expr): Split the expr argument.
(extract_range_from_comparison): Split the expr argument.
(extract_range_from_expr): Use the new aux functions.
(vrp_evaluate_conditional_warnv): Use
vrp_evaluate_conditional_warnv_with_ops.
* tree.h (tree_unary_nonzero_warnv_p): Declare.
(tree_binary_nonzero_warnv_p): Declare.
(tree_single_nonzero_warnv_p): Declare.
(tree_expr_nonzero_warnv_p): Declare.
(tree_unary_nonnegative_warnv_p): Declare.
(tree_binary_nonnegative_warnv_p): Declare.
(tree_single_nonnegative_warnv_p): Declare.
(tree_invalid_nonnegative_warnv_p): Declare.

From-SVN: r133681

16 years agore PR tree-optimization/30317 (VRP cannot extract a range from (unsigned int) i ...
Richard Guenther [Fri, 28 Mar 2008 12:20:09 +0000 (12:20 +0000)]
re PR tree-optimization/30317 (VRP cannot extract a range from (unsigned int) i + 0x0ffffffff > 4)

2008-03-28  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/30317
PR tree-optimization/30911
PR tree-optimization/34793
* tree-vrp.c (set_and_canonicalize_value_range): New function.
(struct assert_locus_d): New member EXPR.
(register_new_assert_for): Add EXPR parameter to support
ASSERT_EXPR <name, expr OP limit>.
(register_edge_assert_for_1): Adjust callers.
(find_assert_locations): Likewise.
(process_assert_insertions_for): Build condition from
expression.
(extract_range_from_assert): Handle ASSERT_EXPRs
of the form ASSERT_EXPR <name, expr OP limit>.
(register_edge_assert_for_2): New helper registering
asserts for comparisons.  Recognize range tests of the form
(unsigned)i - CST1 OP CST2.
(register_edge_assert_for_1): Use it.
(register_edge_assert_for): Likewise.
* tree.def (ASSERT_EXPR): Document extra allowed conditional
expressions.
(needs_overflow_infinity): Integer sub-types
do not need overflow infinities.
(vrp_val_is_max): The extreme values of integer sub-types
are those of the base type.
(vrp_val_is_min): Likewise.

* gcc.dg/tree-ssa/vrp35.c: New testcase.
* gcc.dg/tree-ssa/vrp36.c: Likewise.
* gcc.dg/tree-ssa/vrp37.c: Likewise.

From-SVN: r133680

16 years agosymbol.c (gfc_get_default_type): Fix error message...
Tobias Burnus [Fri, 28 Mar 2008 10:12:05 +0000 (11:12 +0100)]
symbol.c (gfc_get_default_type): Fix error message...

2008-03-28  Tobias Burnus  <burnus@net-b.de>

       * symbol.c (gfc_get_default_type): Fix error message; option
       -fallow_leading_underscore should be -fallow-leading-underscore

From-SVN: r133678

16 years agore PR target/31110 (Problem while compiling gcc for mn10300-elf)
Nick Clifton [Fri, 28 Mar 2008 08:42:36 +0000 (08:42 +0000)]
re PR target/31110 (Problem while compiling gcc for mn10300-elf)

PR target/31110
   * config/mn10300/mn10300.c (mn10300_secondary_reload_class):
        Return GENERAL_REGS for stack adjustment reloads.

From-SVN: r133675

16 years agore PR target/31334 (Bad codegen for vector initializer with constants prop'd into...
Andrew Pinski [Fri, 28 Mar 2008 07:27:11 +0000 (07:27 +0000)]
re PR target/31334 (Bad codegen for vector initializer with constants prop'd into a vector initializer)

2008-03-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31334
        * config/rs6000/rs6000.c (rs6000_expand_vector_init): Create a
        const_vector when all the vectors are constant.

2008-03-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31334
        * gcc.target/powerpc/altivec-25.c: Nnew testcase.

From-SVN: r133674

16 years agore PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third...
Jerry DeLisle [Fri, 28 Mar 2008 04:55:11 +0000 (04:55 +0000)]
re PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third arg)

2008-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/35724
* gfortran.dg/cshift_shift_real_2.f90: New test.

From-SVN: r133669

16 years agore PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third...
Jerry DeLisle [Fri, 28 Mar 2008 04:44:40 +0000 (04:44 +0000)]
re PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third arg)

2008-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/35724
* iresolve.c (gfc_resolve_cshift): Check for NULL symtree in test for
optional argument attribute.

From-SVN: r133668

16 years ago* fr.po: Update.
Joseph Myers [Fri, 28 Mar 2008 02:07:37 +0000 (02:07 +0000)]
* fr.po: Update.

From-SVN: r133665

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

From-SVN: r133663

16 years agoxtensa.c (gen_float_relational): Handle unordered comparisons.
Bob Wilson [Thu, 27 Mar 2008 22:44:47 +0000 (22:44 +0000)]
xtensa.c (gen_float_relational): Handle unordered comparisons.

* config/xtensa/xtensa.c (gen_float_relational): Handle unordered
comparisons.
* config/xtensa/xtensa.md (any_cond): Add unordered comparisons.
(any_scc_sf): Add uneq, unlt, unle and unordered operators.
(scc_sf): New.
(s<code>_sf): Use new scc_sf attribute for opcode names.

From-SVN: r133659

16 years ago* zh_CN.po: Update.
Joseph Myers [Thu, 27 Mar 2008 21:21:53 +0000 (21:21 +0000)]
* zh_CN.po: Update.

From-SVN: r133656

16 years agosourcebuild.texi, [...]: Revert automatic dependency patch.
Tom Tromey [Thu, 27 Mar 2008 19:20:18 +0000 (19:20 +0000)]
sourcebuild.texi, [...]: Revert automatic dependency patch.

gcc/
* doc/sourcebuild.texi, doc/install.texi, configure, aclocal.m4,
configure.ac, Makefile.in, config/t-darwin, config/m32c/t-m32c,
config/spu/t-spu-elf, config/i386/t-interix,
config/i386/t-cygming, config/i386/x-i386, config/i386/t-cygwin,
config/i386/x-darwin, config/i386/x-mingw32,
config/i386/t-netware, config/i386/x-cygwin, config/i386/t-nwld,
config/sh/t-sh, config/sh/t-symbian, config/x-linux,
config/t-sol2, config/x-hpux, config/x-darwin, config/ia64/t-ia64,
config/x-solaris, config/t-vxworks, config/m68k/t-uclinux,
config/rs6000/x-rs6000, config/rs6000/x-darwin64,
config/rs6000/x-darwin, config/rs6000/t-rs6000,
config/score/t-score-elf, config/arm/t-strongarm-pe,
config/arm/t-pe, config/arm/t-arm, config/arm/t-wince-pe,
config/v850/t-v850, config/v850/t-v850e, config/bfin/t-bfin-linux:
Revert automatic dependency patch.
gcc/java/
* Make-lang.in: Revert automatic dependency patch.
gcc/objc/
* Make-lang.in: Revert automatic dependency patch.
gcc/objcp/
* Make-lang.in: Revert automatic dependency patch.
gcc/cp/
* Make-lang.in: Revert automatic dependency patch.
gcc/fortran/
* Make-lang.in: Revert automatic dependency patch.

From-SVN: r133652

16 years agodecl.c (gnat_to_gnu_entity): Also set the public flag if the procedure is imported.
Eric Botcazou [Thu, 27 Mar 2008 18:53:02 +0000 (18:53 +0000)]
decl.c (gnat_to_gnu_entity): Also set the public flag if the procedure is imported.

* decl.c (gnat_to_gnu_entity) <E_Procedure>: Also set the public flag
if the procedure is imported.

From-SVN: r133650

16 years agore PR target/35657 (Alignments of DFP types aren't consistent)
H.J. Lu [Thu, 27 Mar 2008 18:52:18 +0000 (18:52 +0000)]
re PR target/35657 (Alignments of DFP types aren't consistent)

2008-03-27  H.J. Lu  <hongjiu.lu@intel.com>

PR target/35657
* config/i386/i386.c (ix86_function_arg_boundary): Align
decimal floating point to its natural boundary.

From-SVN: r133649

16 years agomulti-ix.c: Limit CHUNK size between 1 and 500.
Uros Bizjak [Thu, 27 Mar 2008 17:49:43 +0000 (18:49 +0100)]
multi-ix.c: Limit CHUNK size between 1 and 500.

        * gcc.c-torture/execute/multi-ix.c: Limit CHUNK size between 1 and 500.
        (main): Exit early for CHUNK less than 40 to avoid stack corruption.

From-SVN: r133648

16 years agore PR tree-optimization/35716 (gfortran.dg/assign_6.f and gfortran.dg/g77/dnrm2.f)
Richard Guenther [Thu, 27 Mar 2008 17:09:54 +0000 (17:09 +0000)]
re PR tree-optimization/35716 (gfortran.dg/assign_6.f and gfortran.dg/g77/dnrm2.f)

2008-03-27  Richard Guenther  <rguenther@suse.de>

PR middle-end/35716
* fold-const.c (fold_comparison): Restrict distinct decl
comparison folding to VAR_DECLs and PARM_DECLs.  Do not
solely rely on operand_equal_p.

From-SVN: r133647

16 years agore PR c/32511 (GCC rejects inline+weak function)
Richard Guenther [Thu, 27 Mar 2008 16:34:55 +0000 (16:34 +0000)]
re PR c/32511 (GCC rejects inline+weak function)

2008-03-27  Richard Guenther  <rguenther@suse.de>

PR c/32511
* c-common.c (handle_weak_attribute): Reject combination of
weak and inline.

* gcc.dg/attr-weak-1.c: New testcase.

From-SVN: r133646

16 years agore PR tree-optimization/32810 (Not folding of const element for goto)
Richard Guenther [Thu, 27 Mar 2008 16:32:28 +0000 (16:32 +0000)]
re PR tree-optimization/32810 (Not folding of const element for goto)

2008-03-27  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/32810
* tree-ssa-ccp.c (get_symbol_constant_value): Strip useless
conversions from DECL_INITIAL.
(fold_const_aggregate_ref): Likewise from constructor elements.

* gcc.dg/tree-ssa/ssa-ccp-18.c: New testcase.

From-SVN: r133645

16 years agore PR bootstrap/35704 (Bootstrap failure on i686-apple-darwin9 at revision 133519...
Douglas Gregor [Thu, 27 Mar 2008 14:53:57 +0000 (14:53 +0000)]
re PR bootstrap/35704 (Bootstrap failure on i686-apple-darwin9 at revision 133519 (take 2).)

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

PR obj-c++/35704
* typeck.c (build_x_compound_expr): Use cp_build_compound_expr.
(build_compound_expr): New, for compatibility with C
build_compound_expr.
(cp_build_compound_expr): Renamed from build_compound_expr.
(build_c_cast): New, for compatibility with C build_c_cast.
(cp_build_c_cast): Renamed from build_c_cast.
* init.c (build_vec_delete_1): Fix calls to build_compound_expr.
* decl.c (cxx_maybe_build_cleanup): Ditto.
* cp-tree.h (build_compound_expr): Add C-compatibile prototype.
(cp_build_compound_expr): Renamed from build_compound_expr.
(build_c_cast): Add C-compatible prototype.
(cp_build_c_cast): Renamed from build_c_cast.
* typeck2.c (build_functional_cast): Use cp_build_c_cast.
* parser.c (cp_parser_cast_expression): Fix call to build_c_cast.

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

PR obj-c++/35704
* objc-act.c (objc_build_component_ref): Fix call to
finish_class_member_access_expr.
(objc_generate_cxx_ctor_or_dtor): Fix call to
build_special_member_call.

From-SVN: r133643

16 years agopt.c (tsubst_copy): Cope with tsubst_pack_expansion returning a pack expansion...
Douglas Gregor [Thu, 27 Mar 2008 14:31:47 +0000 (14:31 +0000)]
pt.c (tsubst_copy): Cope with tsubst_pack_expansion returning a pack expansion...

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

* pt.c (tsubst_copy) <case SIZEOF_EXPR>: Cope with
tsubst_pack_expansion returning a pack expansion, or a TREE_VEC
ending in a pack expansion, both of which can occur when
substituting into a nested template.
(tsubst_copy_and_build) <case SIZEOF_EXPR>: When we're
instantiating the sizeof...(X) form, make tsubst_copy do the work.
* parser.c (cp_parser_template_parameter): Deal with unnamed
non-type template parameter packs identified by pack expansions in
the parameter type.

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

       * g++.dg/cpp0x/variadic91.C: New.

From-SVN: r133642

16 years agoconfigure.ac (frags): Don't set, use frag instead.
Paolo Bonzini [Thu, 27 Mar 2008 13:40:08 +0000 (13:40 +0000)]
configure.ac (frags): Don't set, use frag instead.

2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac (frags): Don't set, use frag instead.
(PICFLAG): Set here and substitute.
* Makefile.in (PICFLAG): Substitute from autoconf.
* configure: Regenerate.

From-SVN: r133639

16 years agotree-affine.h (aff_combination_expand): Declare.
Zdenek Dvorak [Thu, 27 Mar 2008 10:25:36 +0000 (11:25 +0100)]
tree-affine.h (aff_combination_expand): Declare.

2008-03-27  Zdenek Dvorak  <ook@ucw.cz>

* tree-affine.h (aff_combination_expand): Declare.
(get_inner_reference_aff): Likewise.
* tree-affine.c (aff_combination_expand): Split out from
tree_to_aff_combination_expand.
(get_inner_reference_aff): New function.
* tree-parloops.c (loop_parallel_p): Free vectorizer info.
        * tree-ssa-loop-im.c: Include tree-affine.h and pointer-set.h.
        (struct lim_aux_data): sm_done field removed.
        (mem_ref_loc_p, mem_ref_locs_p): New types.
        (struct mem_ref): Added id, stored, accesses_in_loop,
        indep_loop, dep_loop, indep_ref, dep_ref fields.
        Removed is_stored, locs and next fields.
        (memory_accesses): New variable.
        (movement_possibility): Do not allow moving statements
        that store to memory.
        (outermost_indep_loop, simple_mem_ref_in_stmt, mem_ref_in_stmt):
        New functions.
        (determine_max_movement): For statements with memory references,
        find the outermost loop in that the reference is independent.
        (move_computations_stmt): Mark the virtual operands for
        renaming.
        (memref_free, mem_ref_alloc, mem_ref_locs_alloc, mark_ref_stored,
        gather_mem_refs_stmt, gather_mem_refs_in_loops, vtoe_hash, vtoe_eq,
        vtoe_free, record_vop_access, get_vop_accesses, get_vop_stores,
        add_vop_ref_mapping, create_vop_ref_mapping_loop,
        create_vop_ref_mapping, analyze_memory_references,
        cannot_overlap_p, mem_refs_may_alias_p, rewrite_mem_ref_loc,
        get_all_locs_in_loop, ref_always_accessed_p,
        refs_independent_p, record_indep_loop, ref_indep_loop_p_1,
        ref_indep_loop_p, can_sm_ref_p, find_refs_for_sm,
        store_motion_loop, store_motion): New functions.
        (struct vop_to_refs_elt): New type.
        (record_mem_ref_loc, free_mem_ref_locs, rewrite_mem_refs,
        memref_hash, memref_eq, hoist_memory_references): Rewritten.
        (schedule_sm): Replaced by...
        (execute_sm): ... this.
        (determine_lsm_ref, hoist_memory_references,
        loop_suitable_for_sm, gather_mem_refs_stmt, gather_mem_refs,
        find_more_ref_vops, free_mem_ref, free_mem_refs,
        determine_lsm_loop, determine_lsm): Removed.
        (tree_ssa_lim_finalize): Free data structures used by store
        motion.
        (tree_ssa_lim): Call analyze_memory_references.  Use
        store_motion instead of determine_lsm.

* gcc.dg/tree-ssa/loop-32.c: New testcase.
* gcc.dg/tree-ssa/loop-33.c: Likewise.

From-SVN: r133637

16 years agoconfig.cc (m68hc11, [...]): Add usegas.h, rename tmake_file to m68hc11/t-m68hc11.
Paolo Bonzini [Thu, 27 Mar 2008 10:04:08 +0000 (10:04 +0000)]
config.cc (m68hc11, [...]): Add usegas.h, rename tmake_file to m68hc11/t-m68hc11.

2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* config.cc (m68hc11, m6811, m68hc12, m6812): Add usegas.h,
rename tmake_file to m68hc11/t-m68hc11.
(mcore): Set inhibit_libc to true.
* config.host (alpha*-dec-*vms*): Set extra_programs.
(interix3*): Don't use host_xmake_file.
* configure.ac: Let config.gcc override inhibit_libc.
* configure: Regenerate.

* config/alpha/x-vms (EXTRA_PROGRAMS): Remove.
* config/x-interix: Remove.

* config/t-openbsd-thread: Remove commented out lines.

* config/m68hc11/t-m68hc11-gas: Rename to...
* config/m68hc11/t-m68hc11: ... this.  Remove T_CPPFLAGS.

* config/mcore/t-mcore: Remove T_CFLAGS.
* config/mcore/t-mcore-pe: Likewise.

From-SVN: r133636

16 years agoextensions.m4: New.
Paolo Bonzini [Thu, 27 Mar 2008 09:46:19 +0000 (09:46 +0000)]
extensions.m4: New.

config:
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* extensions.m4: New.

gcc:
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Replace custom __GNU_SOURCE test with
AC_USE_SYSTEM_EXTENSIONS.  Move it earlier.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r133635

16 years agoMakefile.tpl (PICFLAG, [...]): Remove.
Paolo Bonzini [Thu, 27 Mar 2008 09:35:02 +0000 (09:35 +0000)]
Makefile.tpl (PICFLAG, [...]): Remove.

2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.tpl (PICFLAG, PICFLAG_FOR_TARGET): Remove.
* Makefile.in: Regenerate.

config:
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* mh-armpic: Remove.
* mh-i370pic: Remove.
* mh-m68kpic: Remove.
* mh-ppcpic: Remove.
* mh-sparcpic: Remove.
* mh-ia64pic: Remove.
* mh-papic: Remove.
* mh-s390pic: Remove.
* mh-x86pic: Remove.

From-SVN: r133634

16 years agofold-const.c (target.h): Include.
Richard Guenther [Thu, 27 Mar 2008 09:17:43 +0000 (09:17 +0000)]
fold-const.c (target.h): Include.

2008-03-27  Richard Guenther  <rguenther@suse.de>

* fold-const.c (target.h): Include.
(fold_comparison): Fold comparison of addresses of decls
that bind locally or of constants.  Consolidate address folding code.
* tree-vrp.c (operand_less_p): Deal with non-INTEGER_CST
results from fold_binary_to_constant.
(compare_values_warnv): Likewise.

* gcc.dg/fold-addr-1.c: New testcase.

From-SVN: r133632

16 years agore PR tree-optimization/35429 (ICE with complex arithmetic)
Andrew Pinski [Thu, 27 Mar 2008 08:55:50 +0000 (01:55 -0700)]
re PR tree-optimization/35429 (ICE with complex arithmetic)

2008-03-27  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/35429
        * fold-const.c (fold_truthop): Check for integeral types when folding
        a == 0 && b == 0 and a != 0 || b != 0 .

2008-03-27  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/35429
        * gcc.c-torture/compile/complex-5.c: New test.

From-SVN: r133631