1. 03 Aug, 2007 4 commits
  2. 02 Aug, 2007 18 commits
    • re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues) · 8a8d6e0b
      2007-08-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/32770
      	* gfortran.dg/unf_read_corrupted_1.f90:  Make all kinds
      	explicit so test passes with -fdefault-integer-8.
      	* gfortran.dg/unformatted_recl_1.f90:  Likewise.
      	* gfortran.dg/unformatted_subrecord_1.f90:  Likewise.
      
      From-SVN: r127168
      Thomas Koenig committed
    • re PR c++/30849 (ICE with invalid asm statement) · f8ff69ea
      	PR c++/30849
      	PR c++/30850
      	PR c++/30851
      	* parser.c (cp_parser_asm_definition): Detect and discard asm
      	statements with invalid inputs or outputs.
              (cp_parser_asm_operand_list): Return error mark node if any
              of the operands are invalid. Adjust documentation.
      
      	PR c++/30849
      	* g++.dg/parse/asm1.C: New test.
      
      	PR c++/30850
      	* g++.dg/parse/asm2.C: Likewise.
      
      	PR c++/30851
      	* g++.dg/parse/asm3.C: Likewise.
      
      From-SVN: r127167
      Lee Millward committed
    • DR 660, [Ready] in Toronto. · 2ee0c1fb
      2007-08-02  Paolo Carlini  <pcarlini@suse.de>
      
      	DR 660, [Ready] in Toronto.
      	* include/bits/stl_function.h (bit_and, bit_or, bit_xor): Add.
      	* testsuite/20_util/function_objects/dr660.cc: New.
      	* docs/html/ext/howto.html: Add an entry for DR 660, update.
      
      	* docs/html/ext/lwg-closed.html, docs/html/ext/lwg-active.html,
      	docs/html/ext/lwg-defects.html: Import Revision 49.
      
      From-SVN: r127166
      Paolo Carlini committed
    • re PR middle-end/25446 (-fpic/-fPIC failure in gcc.dg/vect/vect-ifcvt-9.c) · 50926624
      	PR middle-end/25446
      	* c-objc-common.c (c_cannot_inline_tree_fn): Check for an
      	always_inline attribute on the function decl.
      
      From-SVN: r127163
      Nathan Froyd committed
    • re PR middle-end/25445 (-fpic/-fPIC failure in gcc.dg/tree-ssa/wholeprogram-1.c) · d236f595
      	PR middle-end/25445
      	* varasm.c (default_binds_local_p_1): Consult flag_whole_program
      	if we are compiling with -fPIC.
      
      From-SVN: r127162
      Nathan Froyd committed
    • install missing file from last checkin · 0d37d3a7
      From-SVN: r127161
      Kaveh Ghazi committed
    • longlong.h [__mips__] (count_leading_zeros, [...]): Define for MIPS32 and MIPS64. · 44f9fcef
      2007-08-02  Sandra Loosemore  <sandra@codesourcery.com>
      	    Nigel Stephens  <nigel@mips.com>
      
      	gcc/
      	* longlong.h [__mips__] (count_leading_zeros, COUNT_LEADING_ZEROS_0):
      	Define for MIPS32 and MIPS64.
      
      Co-Authored-By: Nigel Stephens <nigel@mips.com>
      
      From-SVN: r127159
      Sandra Loosemore committed
    • host-hpux.c: Change copyright header to refer to version 3 of the GNU General Public License... · 2f83c7d6
      * config/host-hpux.c: Change copyright header to refer to version 3 of the GNU
        General Public License and to point readers at the COPYING3 file and the FSF's
        license web page.
      * config/alpha/predicates.md, config/alpha/vms-ld.c,
      config/alpha/linux.h, config/alpha/alpha.opt,
      config/alpha/linux-elf.h, config/alpha/vms.h, config/alpha/elf.h,
      config/alpha/vms-unwind.h, config/alpha/ev4.md,
      config/alpha/ev6.md, config/alpha/alpha.c, config/alpha/vms-cc.c,
      config/alpha/alpha.h, config/alpha/sync.md,
      config/alpha/openbsd.h, config/alpha/alpha.md,
      config/alpha/alpha-modes.def, config/alpha/ev5.md,
      config/alpha/alpha-protos.h, config/alpha/freebsd.h,
      config/alpha/osf5.h, config/alpha/netbsd.h, config/alpha/vms64.h,
      config/alpha/constraints.md, config/alpha/osf.h,
      config/alpha/xm-vms.h, config/alpha/unicosmk.h, config/linux.h,
      config/frv/predicates.md, config/frv/frv.h, config/frv/linux.h,
      config/frv/frv.md, config/frv/frv.opt, config/frv/frv-modes.def,
      config/frv/frv-asm.h, config/frv/frv-protos.h,
      config/frv/frv-abi.h, config/frv/frv.c, config/s390/tpf.h,
      config/s390/s390.c, config/s390/predicates.md, config/s390/s390.h,
      config/s390/linux.h, config/s390/tpf.md, config/s390/tpf.opt,
      config/s390/2064.md, config/s390/2084.md, config/s390/s390.md,
      config/s390/s390.opt, config/s390/s390-modes.def,
      config/s390/fixdfdi.h, config/s390/constraints.md,
      config/s390/s390-protos.h, config/s390/s390x.h, config/elfos.h,
      config/dbxcoff.h, config/m32c/predicates.md, config/m32c/cond.md,
      config/m32c/m32c.c, config/m32c/minmax.md, config/m32c/blkmov.md,
      config/m32c/m32c-pragma.c, config/m32c/m32c.h,
      config/m32c/prologue.md, config/m32c/m32c.abi,
      config/m32c/muldiv.md, config/m32c/bitops.md, config/m32c/mov.md,
      config/m32c/addsub.md, config/m32c/m32c.md, config/m32c/m32c.opt,
      config/m32c/t-m32c, config/m32c/m32c-modes.def,
      config/m32c/jump.md, config/m32c/shift.md,
      config/m32c/m32c-protos.h, config/libgloss.h,
      config/spu/spu-protos.h, config/spu/predicates.md,
      config/spu/spu-builtins.h, config/spu/spu.c,
      config/spu/spu-builtins.def, config/spu/spu-builtins.md,
      config/spu/spu.h, config/spu/spu-elf.h, config/spu/constraints.md,
      config/spu/spu.md, config/spu/spu-c.c, config/spu/spu.opt,
      config/spu/spu-modes.def, config/spu/t-spu-elf, config/interix.h,
      config/sparc/hypersparc.md, config/sparc/predicates.md,
      config/sparc/linux.h, config/sparc/sp64-elf.h,
      config/sparc/supersparc.md, config/sparc/cypress.md,
      config/sparc/openbsd1-64.h, config/sparc/openbsd64.h,
      config/sparc/niagara.md, config/sparc/sparc.md,
      config/sparc/long-double-switch.opt, config/sparc/ultra3.md,
      config/sparc/sparc.opt, config/sparc/sync.md,
      config/sparc/sp-elf.h, config/sparc/sparc-protos.h,
      config/sparc/ultra1_2.md, config/sparc/biarch64.h,
      config/sparc/sparc.c, config/sparc/little-endian.opt,
      config/sparc/sysv4-only.h, config/sparc/sparc.h,
      config/sparc/linux64.h, config/sparc/freebsd.h,
      config/sparc/sol2.h, config/sparc/rtemself.h,
      config/sparc/netbsd-elf.h, config/sparc/vxworks.h,
      config/sparc/sparc-modes.def, config/sparc/sparclet.md,
      config/sparc/sysv4.h, config/vx-common.h, config/netbsd-aout.h,
      config/flat.h, config/m32r/m32r.md, config/m32r/predicates.md,
      config/m32r/little.h, config/m32r/m32r.c, config/m32r/m32r.opt,
      config/m32r/linux.h, config/m32r/constraints.md,
      config/m32r/m32r.h, config/m32r/m32r-protos.h, config/vxworks.opt,
      config/darwin-c.c, config/darwin.opt, config/i386/i386.h,
      config/i386/cygming.h, config/i386/linux.h, config/i386/cygwin.h,
      config/i386/i386.md, config/i386/netware-crt0.c,
      config/i386/sco5.h, config/i386/mmx.md, config/i386/vx-common.h,
      config/i386/kaos-i386.h, config/i386/winnt-stubs.c,
      config/i386/netbsd64.h, config/i386/djgpp.h, config/i386/gas.h,
      config/i386/sol2.h, config/i386/constraints.md,
      config/i386/netware-libgcc.c, config/i386/sysv5.h,
      config/i386/predicates.md, config/i386/geode.md,
      config/i386/x86-64.h, config/i386/kfreebsd-gnu.h,
      config/i386/freebsd64.h, config/i386/vxworksae.h,
      config/i386/pentium.md, config/i386/lynx.h, config/i386/i386elf.h,
      config/i386/rtemself.h, config/i386/netbsd-elf.h,
      config/i386/ppro.md, config/i386/k6.md, config/i386/netware.c,
      config/i386/netware.h, config/i386/i386-modes.def,
      config/i386/sysv4-cpp.h, config/i386/i386-interix.h,
      config/i386/cygwin1.c, config/i386/djgpp.opt, config/i386/uwin.h,
      config/i386/unix.h, config/i386/ptx4-i.h, config/i386/xm-djgpp.h,
      config/i386/att.h, config/i386/winnt.c, config/i386/beos-elf.h,
      config/i386/sol2-10.h, config/i386/darwin64.h, config/i386/sse.md,
      config/i386/i386.opt, config/i386/bsd.h, config/i386/cygming.opt,
      config/i386/xm-mingw32.h, config/i386/linux64.h,
      config/i386/openbsdelf.h, config/i386/xm-cygwin.h,
      config/i386/sco5.opt, config/i386/darwin.h, config/i386/mingw32.h,
      config/i386/winnt-cxx.c, config/i386/i386-interix3.h,
      config/i386/nwld.c, config/i386/nwld.h, config/i386/host-cygwin.c,
      config/i386/cygwin2.c, config/i386/i386-protos.h,
      config/i386/sync.md, config/i386/openbsd.h,
      config/i386/host-mingw32.c, config/i386/i386-aout.h,
      config/i386/nto.h, config/i386/biarch64.h,
      config/i386/i386-coff.h, config/i386/freebsd.h,
      config/i386/driver-i386.c, config/i386/knetbsd-gnu.h,
      config/i386/host-i386-darwin.c, config/i386/vxworks.h,
      config/i386/crtdll.h, config/i386/i386.c, config/i386/sysv4.h,
      config/darwin-protos.h, config/linux.opt, config/sol2.c,
      config/sol2.h, config/sh/symbian.c, config/sh/sh-protos.h,
      config/sh/linux.h, config/sh/elf.h, config/sh/superh.h,
      config/sh/sh4.md, config/sh/coff.h, config/sh/newlib.h,
      config/sh/embed-elf.h, config/sh/symbian-pre.h, config/sh/rtems.h,
      config/sh/kaos-sh.h, config/sh/sh4a.md, config/sh/constraints.md,
      config/sh/sh64.h, config/sh/sh.opt, config/sh/symbian-post.h,
      config/sh/sh-c.c, config/sh/predicates.md, config/sh/sh.c,
      config/sh/sh.h, config/sh/shmedia.md, config/sh/sh-modes.def,
      config/sh/little.h, config/sh/sh1.md, config/sh/sh4-300.md,
      config/sh/superh64.h, config/sh/rtemself.h,
      config/sh/netbsd-elf.h, config/sh/sh.md, config/sh/vxworks.h,
      config/usegas.h, config/svr3.h, config/pdp11/pdp11-protos.h,
      config/pdp11/2bsd.h, config/pdp11/pdp11.md, config/pdp11/pdp11.c,
      config/pdp11/pdp11.opt, config/pdp11/pdp11-modes.def,
      config/pdp11/pdp11.h, config/avr/rtems.h, config/avr/avr-protos.h,
      config/avr/predicates.md, config/avr/constraints.md,
      config/avr/avr.md, config/avr/avr.c, config/avr/avr.opt,
      config/avr/avr.h, config/sol2-protos.h, config/dbxelf.h,
      config/lynx.opt, config/crx/crx.h, config/crx/crx-protos.h,
      config/crx/crx.md, config/crx/crx.c, config/crx/crx.opt,
      config/c4x/c4x-c.c, config/c4x/c4x.c, config/c4x/c4x.opt,
      config/c4x/c4x-modes.def, config/c4x/rtems.h,
      config/c4x/predicates.md, config/c4x/c4x.h,
      config/c4x/c4x-protos.h, config/c4x/c4x.md, config/kfreebsd-gnu.h,
      config/xtensa/predicates.md, config/xtensa/xtensa.c,
      config/xtensa/linux.h, config/xtensa/xtensa.h,
      config/xtensa/elf.h, config/xtensa/xtensa.md,
      config/xtensa/xtensa.opt, config/xtensa/constraints.md,
      config/xtensa/xtensa-protos.h, config/dbx.h,
      config/stormy16/predicates.md, config/stormy16/stormy16.md,
      config/stormy16/stormy16.c, config/stormy16/stormy16.opt,
      config/stormy16/stormy16.h, config/stormy16/stormy16-protos.h,
      config/host-solaris.c, config/fr30/fr30.h,
      config/fr30/predicates.md, config/fr30/fr30-protos.h,
      config/fr30/fr30.md, config/fr30/fr30.c, config/fr30/fr30.opt,
      config/vxworksae.h, config/sol2-c.c, config/lynx.h,
      config/m68hc11/m68hc11-protos.h, config/m68hc11/predicates.md,
      config/m68hc11/m68hc11.md, config/m68hc11/m68hc11.c,
      config/m68hc11/m68hc11.opt, config/m68hc11/m68hc11.h,
      config/m68hc11/m68hc12.h, config/openbsd-oldgas.h,
      config/host-linux.c, config/interix3.h, config/cris/cris.c,
      config/cris/predicates.md, config/cris/linux.h,
      config/cris/cris.h, config/cris/aout.h, config/cris/cris.md,
      config/cris/linux.opt, config/cris/cris.opt, config/cris/elf.opt,
      config/cris/aout.opt, config/cris/cris-protos.h,
      config/vxworks-dummy.h, config/netbsd.h, config/netbsd-elf.h,
      config/iq2000/iq2000.h, config/iq2000/predicates.md,
      config/iq2000/iq2000-protos.h, config/iq2000/iq2000.md,
      config/iq2000/iq2000.c, config/iq2000/iq2000.opt,
      config/host-darwin.c, config/mt/mt.md, config/mt/mt.c,
      config/mt/mt.opt, config/mt/t-mt, config/mt/mt.h,
      config/mt/mt-protos.h, config/svr4.h, config/host-darwin.h,
      config/chorus.h, config/mn10300/mn10300.c,
      config/mn10300/mn10300.opt, config/mn10300/predicates.md,
      config/mn10300/mn10300.h, config/mn10300/linux.h,
      config/mn10300/constraints.md, config/mn10300/mn10300-protos.h,
      config/mn10300/mn10300.md, config/ia64/predicates.md,
      config/ia64/itanium1.md, config/ia64/unwind-ia64.h,
      config/ia64/ia64-c.c, config/ia64/sync.md, config/ia64/ia64.c,
      config/ia64/itanium2.md, config/ia64/ia64.h, config/ia64/vect.md,
      config/ia64/freebsd.h, config/ia64/ia64.md,
      config/ia64/ia64-modes.def, config/ia64/constraints.md,
      config/ia64/hpux.h, config/ia64/ia64-protos.h, config/windiss.h,
      config/gofast.h, config/rtems.h, config/sol2-10.h,
      config/m68k/predicates.md, config/m68k/m68k.md,
      config/m68k/linux.h, config/m68k/m68k-modes.def,
      config/m68k/print-sysroot-suffix.sh, config/m68k/m68k-protos.h,
      config/m68k/coff.h, config/m68k/m68k-none.h, config/m68k/ieee.opt,
      config/m68k/openbsd.h, config/m68k/m68k-aout.h,
      config/m68k/m68k.opt, config/m68k/m68020-elf.h,
      config/m68k/m68kelf.h, config/m68k/m68k-devices.def,
      config/m68k/uclinux-oldabi.h, config/m68k/m68k.c,
      config/m68k/constraints.md, config/m68k/rtemself.h,
      config/m68k/netbsd-elf.h, config/m68k/m68k.h,
      config/m68k/uclinux.h, config/rs6000/power4.md,
      config/rs6000/host-darwin.c, config/rs6000/6xx.md,
      config/rs6000/linux.h, config/rs6000/eabi.h,
      config/rs6000/aix41.opt, config/rs6000/xcoff.h,
      config/rs6000/secureplt.h, config/rs6000/linuxspe.h,
      config/rs6000/eabialtivec.h, config/rs6000/8540.md,
      config/rs6000/darwin8.h, config/rs6000/kaos-ppc.h,
      config/rs6000/windiss.h, config/rs6000/603.md,
      config/rs6000/aix41.h, config/rs6000/cell.md,
      config/rs6000/mpc.md, config/rs6000/aix43.h, config/rs6000/beos.h,
      config/rs6000/gnu.h, config/rs6000/rtems.h, config/rs6000/aix.opt,
      config/rs6000/darwin.md, config/rs6000/darwin64.h,
      config/rs6000/default64.h, config/rs6000/7xx.md,
      config/rs6000/darwin.opt, config/rs6000/spe.md,
      config/rs6000/rs6000.opt, config/rs6000/rs6000-c.c,
      config/rs6000/rios2.md, config/rs6000/linuxaltivec.h,
      config/rs6000/7450.md, config/rs6000/linux64.h,
      config/rs6000/constraints.md, config/rs6000/440.md,
      config/rs6000/darwin.h, config/rs6000/host-ppc64-darwin.c,
      config/rs6000/rs6000.c, config/rs6000/aix52.h,
      config/rs6000/rs6000.h, config/rs6000/power6.md,
      config/rs6000/predicates.md, config/rs6000/altivec.md,
      config/rs6000/aix64.opt, config/rs6000/rios1.md,
      config/rs6000/rs6000-modes.def, config/rs6000/rs64.md,
      config/rs6000/eabisim.h, config/rs6000/sysv4le.h,
      config/rs6000/darwin7.h, config/rs6000/dfp.md,
      config/rs6000/linux64.opt, config/rs6000/sync.md,
      config/rs6000/vxworksae.h, config/rs6000/power5.md,
      config/rs6000/lynx.h, config/rs6000/biarch64.h,
      config/rs6000/rs6000.md, config/rs6000/sysv4.opt,
      config/rs6000/eabispe.h, config/rs6000/e500.h,
      config/rs6000/freebsd.h, config/rs6000/rs6000-protos.h,
      config/rs6000/netbsd.h, config/rs6000/e500-double.h,
      config/rs6000/aix.h, config/rs6000/vxworks.h,
      config/rs6000/40x.md, config/rs6000/aix51.h,
      config/rs6000/sysv4.h, config/arc/arc-protos.h, config/arc/arc.md,
      config/arc/arc.c, config/arc/arc.opt, config/arc/arc-modes.def,
      config/arc/arc.h, config/mcore/mcore-elf.h,
      config/mcore/mcore-protos.h, config/mcore/predicates.md,
      config/mcore/mcore.md, config/mcore/mcore.c,
      config/mcore/mcore.opt, config/mcore/mcore.h,
      config/mcore/mcore-pe.h, config/darwin.c, config/freebsd-nthr.h,
      config/score/predicates.md, config/score/score-version.h,
      config/score/score-protos.h, config/score/misc.md,
      config/score/elf.h, config/score/score.c, config/score/mac.md,
      config/score/score7.md, config/score/score.h,
      config/score/score-conv.h, config/score/score-mdaux.c,
      config/score/score.md, config/score/score.opt,
      config/score/score-modes.def, config/score/score-mdaux.h,
      config/score/mul-div.S, config/arm/uclinux-elf.h,
      config/arm/semi.h, config/arm/ecos-elf.h, config/arm/arm1020e.md,
      config/arm/symbian.h, config/arm/linux-elf.h,
      config/arm/arm1026ejs.md, config/arm/arm1136jfs.md,
      config/arm/elf.h, config/arm/aout.h, config/arm/arm.c,
      config/arm/thumb2.md, config/arm/vec-common.md, config/arm/coff.h,
      config/arm/strongarm-pe.h, config/arm/arm.h,
      config/arm/cortex-a8-neon.md, config/arm/semiaof.h,
      config/arm/cortex-a8.md, config/arm/uclinux-eabi.h,
      config/arm/arm-modes.def, config/arm/linux-eabi.h,
      config/arm/rtems-elf.h, config/arm/neon-schedgen.ml,
      config/arm/arm-cores.def, config/arm/arm-protos.h,
      config/arm/vfp.md, config/arm/aof.h, config/arm/linux-gas.h,
      config/arm/wince-pe.h, config/arm/neon.md,
      config/arm/constraints.md, config/arm/neon.ml,
      config/arm/xscale-elf.h, config/arm/strongarm-coff.h,
      config/arm/arm.opt, config/arm/arm926ejs.md,
      config/arm/predicates.md, config/arm/iwmmxt.md,
      config/arm/arm_neon.h, config/arm/unknown-elf.h,
      config/arm/kaos-arm.h, config/arm/bpabi.h, config/arm/pe.opt,
      config/arm/neon-testgen.ml, config/arm/arm.md,
      config/arm/xscale-coff.h, config/arm/pe.c,
      config/arm/arm-generic.md, config/arm/pe.h,
      config/arm/kaos-strongarm.h, config/arm/freebsd.h,
      config/arm/neon-docgen.ml, config/arm/netbsd.h, config/arm/fpa.md,
      config/arm/strongarm-elf.h, config/arm/cirrus.md,
      config/arm/netbsd-elf.h, config/arm/vxworks.h,
      config/arm/neon-gen.ml, config/kaos.h, config/darwin-driver.c,
      config/pa/predicates.md, config/pa/pa64-hpux.h,
      config/pa/pa-hpux.opt, config/pa/som.h, config/pa/pa-hpux1010.opt,
      config/pa/pa-hpux1111.opt, config/pa/pa-pro-end.h,
      config/pa/elf.h, config/pa/fptr.c, config/pa/pa64-linux.h,
      config/pa/pa.md, config/pa/pa.opt, config/pa/pa-hpux.h,
      config/pa/pa-hpux10.h, config/pa/pa-hpux11.h,
      config/pa/pa-hpux1010.h, config/pa/pa-protos.h,
      config/pa/pa-osf.h, config/pa/pa-hpux1111.h, config/pa/pa-64.h,
      config/pa/milli64.S, config/pa/pa.c, config/pa/pa-linux.h,
      config/pa/pa.h, config/pa/pa32-linux.h, config/pa/pa64-hpux.opt,
      config/pa/pa64-regs.h, config/pa/pa-modes.def,
      config/pa/constraints.md, config/darwin9.h, config/mips/4100.md,
      config/mips/linux.h, config/mips/elfoabi.h, config/mips/elf.h,
      config/mips/sdb.h, config/mips/windiss.h, config/mips/rtems.h,
      config/mips/3000.md, config/mips/iris5.h, config/mips/5000.md,
      config/mips/7000.md, config/mips/9000.md, config/mips/4600.md,
      config/mips/linux64.h, config/mips/elforion.h,
      config/mips/constraints.md, config/mips/generic.md,
      config/mips/predicates.md, config/mips/4300.md,
      config/mips/mips-ps-3d.md, config/mips/iris.h, config/mips/24k.md,
      config/mips/mips.md, config/mips/mips.opt, config/mips/4k.md,
      config/mips/5k.md, config/mips/vr4120-div.S,
      config/mips/openbsd.h, config/mips/iris6.h, config/mips/4000.md,
      config/mips/mips-protos.h, config/mips/6000.md,
      config/mips/mips.c, config/mips/mips.h, config/mips/r3900.h,
      config/mips/74k.md, config/mips/netbsd.h, config/mips/vxworks.h,
      config/mips/mips-modes.def, config/mips/vr.h,
      config/soft-fp/t-softfp, config/openbsd.h, config/ptx4.h,
      config/freebsd-spec.h, config/vax/vax.c, config/vax/openbsd.h,
      config/vax/vax.h, config/vax/elf.h, config/vax/vax.md,
      config/vax/bsd.h, config/vax/vax.opt, config/vax/vax-modes.def,
      config/vax/openbsd1.h, config/vax/netbsd.h,
      config/vax/vax-protos.h, config/vax/netbsd-elf.h,
      config/vax/vaxv.h, config/vax/ultrix.h, config/freebsd.h,
      config/h8300/rtems.h, config/h8300/predicates.md,
      config/h8300/h8300.c, config/h8300/h8300.h, config/h8300/elf.h,
      config/h8300/h8300.md, config/h8300/h8300.opt,
      config/h8300/coff.h, config/h8300/h8300-protos.h,
      config/v850/v850.md, config/v850/predicates.md,
      config/v850/v850-c.c, config/v850/v850.c, config/v850/v850.opt,
      config/v850/v850.h, config/v850/v850-protos.h, config/vxworks.c,
      config/knetbsd-gnu.h, config/sol2-6.h, config/vxworks.h,
      config/mmix/mmix.h, config/mmix/predicates.md,
      config/mmix/mmix-protos.h, config/mmix/mmix.md,
      config/mmix/mmix.c, config/mmix/mmix.opt,
      config/mmix/mmix-modes.def, config/bfin/bfin.opt,
      config/bfin/rtems.h, config/bfin/bfin-modes.def,
      config/bfin/predicates.md, config/bfin/bfin-protos.h,
      config/bfin/bfin.c, config/bfin/bfin.h, config/bfin/bfin.md: Likewise.
      
      From-SVN: r127157
      Nick Clifton committed
    • Make-lang.in: Change copyright header to refer to version 3 of the GNU General Public License... · af84f9c5
      * Make-lang.in: Change copyright header to refer to version 3 of the GNU General
        Public License and to point readers at the COPYING3 file and the FSF's license
        web page.
      * lang-specs.h, objcp-decl.c, objcp-decl.h, config-lang.in, objcp-lang.c: 
        Likewise.
      
      From-SVN: r127156
      Nick Clifton committed
    • Make-lang.in: Change copyright header to refer to version 3 of the GNU General Public License... · 2b7d992a
      * Make-lang.in: Change copyright header to refer to version 3 of the GNU General
        Public License and to point readers at the COPYING3 file and the FSF's license
        web page.
      * lang-specs.h, objc-act.c, objc-tree.def, objc-act.h, config-lang.in, 
        objc-lang.c: Likewise.
      
      From-SVN: r127155
      Nick Clifton committed
    • typeck.c: Change copyright header to refer to version 3 of the GNU General Public... · e77f031d
      * typeck.c: Change copyright header to refer to version 3 of the GNU General 
        Public License and to point readers at the COPYING3 file and the FSF's license
        web page.
      * optimize.c, lang-specs.h, init.c, class.c, repo.c, decl.c, config-lang.in, 
        cp-tree.def, call.c, decl.h, ptree.c, Make-lang.in, method.c, rtti.c, 
        cp-objcp-common.c, g++spec.c, cp-objcp-common.h, except.c, error.c, 
        operators.def, cvt.c, tree.c, mangle.c, cp-tree.h, dump.c, search.c, 
        friend.c, expr.c, cp-gimplify.c, cxx-pretty-print.c, cp-lang.c, typeck2.c, 
        pt.c, cxx-pretty-print.h, semantics.c, name-lookup.c, lex.c, decl2.c,
        name-lookup.h, parser.c: Likewise.
      
      From-SVN: r127154
      Nick Clifton committed
    • emit-rtl.c (reset_used_decls): Rename to... · 5eb2a9f2
      gcc/
      	* emit-rtl.c (reset_used_decls): Rename to...
      	(set_used_decls): ...this.  Set the used flag rather than clearing it.
      	(unshare_all_rtl_again): Update accordingly.  Set flags on argument
      	DECL_RTLs rather than resetting them.
      
      From-SVN: r127153
      Richard Sandiford committed
    • gen-vect-2.c: Use "char" for vector elements if "int" is only 16 bit bits wide. · a15da80d
      	* gcc.dg/tree-ssa/gen-vect-2.c: Use "char" for vector elements if
      	  "int" is only 16 bit bits wide.
      	* gcc.dg/tree-ssa/gen-vect-11a.c: Likewise.
      
      From-SVN: r127152
      Rask Ingemann Lambertsen committed
    • s390.md ("*xordi3_cconly"): Change xr to xg. · c7fd8cd8
      2007-08-02  Andreas Krebbel  <krebbel1@de.ibm.com>
      
      	* config/s390/s390.md ("*xordi3_cconly"): Change xr to xg.
      
      From-SVN: r127148
      Andreas Krebbel committed
    • re PR middle-end/32668 (The type-generic builtins apply default promotions) · 59f89d34
      gcc/cp:
      	PR middle-end/32668
      	* call.c (magic_varargs_p): Honor the "type generic" attribute.
      
      gcc/testsuite:
      	* g++.dg/torture/type-generic-1.C: New.
      	* gcc.dg/pr28796-2.c: Move tests ...
      	* gcc.dg/tg-tests.h: ... here.
      	* gcc.dg/torture/type-generic-1.c: New.
      
      From-SVN: r127146
      Kaveh R. Ghazi committed
    • Daily bump. · cf4a86e3
      From-SVN: r127143
      GCC Administrator committed
  3. 01 Aug, 2007 18 commits
    • * cp-demangle.c (d_print_comp): Guard against null. · ac847e32
      From-SVN: r127139
      Michael Snyder committed
    • re PR libfortran/32954 (pack with -fdefault-integer-8) · 870c06b9
      2007-08-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR libfortran/32954
      	* intrinsic.c (resolve_mask_arg):  New function.
      	(gfc_resolve_maxloc):  Use resolve_mask_arg for mask resolution.
      	(gfc_resolve_maxval):  Likewise.
      	(gfc_resolve_minloc):  Likewise.
      	(gfc_resolve_minval):  Likewise.
      	(gfc_resolve_pack):  Likewise.
      	(gfc_resolve_product):  Likewise.
      	(gfc_resolve_sum):  Likewise.
      	(gfc_resolve_unpack):  Likewise.
      
      2007-08-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR libfortran/32954
      	* minmaxloc_3.f90:  New test case.
      
      From-SVN: r127137
      Thomas Koenig committed
    • reload.c (find_reloads_address_part): Pass correct MEMREFLOC argument to find_reloads_address. · e4fd64d6
      2007-08-01  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* reload.c (find_reloads_address_part):  Pass correct MEMREFLOC
      	argument to find_reloads_address.
      
      From-SVN: r127136
      Sandra Loosemore committed
    • re PR fortran/32936 (ALLOCATE: "STAT expression ... must be a variable" - but it is one) · b8a0d3cf
      2007-08-01  Tobias Burnus  <burnus@net-b.de>
      
             PR fortran/32936
             * match.c (gfc_match_allocate): Better check that STAT is
             a variable.
      
             * check.c (gfc_check_allocated): Reorder checks to improve
             error message.
      
      2007-08-01  Tobias Burnus  <burnus@net-b.de>
      
             PR fortran/32936
             * gfortran.dg/allocate_stat.f90: New.
      
      From-SVN: r127135
      Tobias Burnus committed
    • * gcc.target/i386/pr23098.c: XFAIL on vxworks targets. · 8fe428c6
      From-SVN: r127134
      Nathan Froyd committed
    • re PR tree-optimization/32919 (SSA corruption because of abnormal edges and PRE) · 62b0d9ec
      	PR tree-optimization/32919
      	* tree-ssa-sccvn.c (visit_phi): Do not visit abnormal PHIs.
      	* tree-ssa-coalesce.c (ssa_conflicts_dump): New.
      	(coalesce_ssa_name): Call it.
      
      From-SVN: r127132
      Daniel Jacobowitz committed
    • s-osinte-kfreebsd-gnu.ads ((sigset_t_ptr): Removed, replaced by anonymous access type. · 08e7e8cb
      2007-07-27  Aurelien Jarno  <aurelien@aurel32.net>
      
              * s-osinte-kfreebsd-gnu.ads ((sigset_t_ptr): Removed, replaced by
              anonymous access type.
              (pthread_sigmask): Now take an access sigset_t.
      
      From-SVN: r127130
      Aurelien Jarno committed
    • arith.c: Change copyright header to refer to version 3 of the GNU General Public... · d234d788
      * arith.c: Change copyright header to refer to version 3 of the GNU General 
        Public License and to point readers at the COPYING3 file and the FSF's 
        license web page.
      * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c, symbol.c, 
        iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h, matchexp.c, 
        dump-parse-tree.c, trans-common.c, array.c, Make-lang.in, trans-openmp.c, 
        gfortran.h, error.c, iso-c-binding.def, lang.opt, data.c, trans-const.c, 
        trans-stmt.c, expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, 
        scanner.c, trans-types.c, trans.h, gfortranspec.c, trans-types.h, 
        lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c, iresolve.c, match.c,
        trans-decl.c, trans-io.c, target-memory.c, match.h, target-memory.h, parse.c,
        arith.h, check.c, dependency.c, parse.h, types.def, convert.c, dependency.h,
        primary.c, trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
      
      From-SVN: r127129
      Nick Clifton committed
    • mips16.S (__mips16_unordsf2, [...]): New. · 45059ab1
      2007-08-01  Sandra Loosemore  <sandra@codesourcery.com>
      	    David Ung  <davidu@mips.com>
      
      	gcc/
      	* config/mips/mips16.S (__mips16_unordsf2, __mips16_floatunsisf): New.
      	(__mips16_unorddf2, __mips16_floatunsidf): New.
      	* config/mips/mips.c (mips_init_libfuncs): Add optab entries for
      	above functions.
      	* config/mips/t-libgcc-mips16 (LIB1ASMFUNCS): Add new functions.
      
      Co-Authored-By: David Ung <davidu@mips.com>
      
      From-SVN: r127128
      Sandra Loosemore committed
    • execute.exp: Change copyright header to refer to version 3 of the GNU General Public License... · cd976c16
      * gcc.c-torture/execute/execute.exp: Change copyright header to refer to version
        3 of the GNU General Public License and to point readers at the COPYING3 file
        and the FSF's license web page.
      * gcc.c-torture/execute/ieee/ieee.exp, gcc.c-torture/unsorted/unsorted.exp,
        gcc.c-torture/compile/compile.exp, gcc.c-torture/compile/structs.c, 
        gcc.target/powerpc/powerpc.exp, gcc.target/arm/neon/neon.exp, gcc.target/arm/arm.exp,
        gcc.target/cris/torture/cris-torture.exp, gcc.target/cris/cris.exp, gcc.target/ia64/ia64.exp,
        gcc.target/alpha/alpha.exp, gcc.target/m68k/m68k.exp, gcc.target/spu/spu.exp, gcc.target/mips/mips.exp,
        gcc.target/sparc/sparc.exp, gcc.target/i386/i386.exp, gcc.target/x86_64/abi/abi-x86_64.exp, gnat.dg/specs/specs.exp,
        gnat.dg/dg.exp, gnat.dg/style/style.exp, gcc.dg/special/mips-abi.exp, gcc.dg/special/special.exp,
        gcc.dg/pch/pch.exp, gcc.dg/vxworks/vxworks.exp, gcc.dg/dg.exp, gcc.dg/charset/charset.exp, gcc.dg/weak/weak.exp,
        gcc.dg/tree-ssa/tree-ssa.exp, gcc.dg/tls/tls.exp, gcc.dg/cpp/cpp.exp, gcc.dg/cpp/trad/trad.exp,
        gcc.dg/matrix/matrix.exp, gcc.dg/vmx/vmx.exp, gcc.dg/compat/struct-layout-1.exp, gcc.dg/compat/compat.exp,
        gcc.dg/compat/struct-layout-1_generate.c, gcc.dg/debug/debug.exp, gcc.dg/debug/dwarf2/dwarf2.exp, gcc.dg/tree-prof/tree-prof.exp,
        gcc.dg/ipa/ipa.exp, gcc.dg/dfp/dfp.exp, gcc.dg/noncompile/noncompile.exp,
        gcc.dg/vect/costmodel/ppc/ppc-costmodel-vect.exp, gcc.dg/vect/costmodel/spu/spu-costmodel-vect.exp,
        gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp, gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp,
        gcc.dg/vect/vect.exp, gcc.dg/format/format.exp, gcc.misc-tests/i386-prefetch.exp, gcc.misc-tests/sort2.exp,
        gcc.misc-tests/matrix1.exp, gcc.misc-tests/dectest.exp, gcc.misc-tests/options.exp, gcc.misc-tests/gcov.exp,
        gcc.misc-tests/mg-2.exp, gcc.misc-tests/mg.exp, gcc.misc-tests/bprob.exp, gcc.misc-tests/acker1.exp,
        gcc.misc-tests/dhry.exp, gcc.misc-tests/linkage.exp, gcc.misc-tests/arm-isr.exp, gcc.misc-tests/sieve.exp,
        g++.old-deja/g++.niklas/README, g++.old-deja/g++.gb/README, g++.old-deja/old-deja.exp,
        gfortran.fortran-torture/execute/execute.exp, gfortran.fortran-torture/compile/compile.exp,
        treelang/output/output-1.c, treelang/output/output-1.tree, treelang/execute/execute.exp, treelang/Makefile.in,
        treelang/compile/compile.exp, g++.dg/dg.exp, g++.dg/debug/debug.exp, g++.dg/debug/dwarf2/dwarf2.exp,
        g++.dg/charset/charset.exp, g++.dg/vect/vect.exp, g++.dg/tls/tls.exp, g++.dg/tree-prof/tree-prof.exp,
        g++.dg/pch/pch.exp, g++.dg/special/ecos.exp, g++.dg/compat/struct-layout-1.exp,
        g++.dg/compat/struct-layout-1_generate.c, g++.dg/compat/compat.exp, g++.dg/gcov/gcov.exp,
        g++.dg/bprob/bprob.exp, config/default.exp, gcc.test-framework/test-framework.awk,
        gcc.test-framework/gen_directive_tests, gcc.test-framework/test-framework.exp,
        objc.dg/special/special.exp, objc.dg/gnu-encoding/gnu-encoding.exp,
        objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c, objc.dg/pch/pch.exp, objc.dg/dg.exp, lib/copy-file.exp,
        lib/profopt.exp, lib/gcc.exp, lib/mike-g++.exp, lib/c-compat.exp, lib/scanrtl.exp, lib/gfortran-dg.exp, lib/g++.exp,
        lib/obj-c++.exp, lib/wrapper.exp, lib/gnat-dg.exp, lib/compat.exp, lib/c-torture.exp, lib/gcc-dg.exp, lib/scanasm.exp, lib/gnat.exp,
        lib/treelang-dg.exp, lib/prune.exp, lib/gcov.exp, lib/treelang.exp, lib/dg-pch.exp, lib/scantree.exp,
        lib/g++-dg.exp, lib/objc-dg.exp, lib/file-format.exp, lib/target-libpath.exp, lib/obj-c++-dg.exp, lib/scandump.exp,
        lib/target-supports-dg.exp, lib/gcc-defs.exp, lib/fortran-torture.exp, lib/objc.exp, lib/scanipa.exp,
        lib/mike-gcc.exp, lib/objc-torture.exp, lib/gfortran.exp, lib/target-supports.exp, obj-c++.dg/dg.exp, gfortran.dg/dg.exp,
        gfortran.dg/vect/vect.exp, objc/execute/execute.exp, objc/execute/exceptions/exceptions.exp, 
        objc/compile/compile.exp: Likewise.
      
      From-SVN: r127127
      Nick Clifton committed
    • trans-decl.c (generate_local_decl): Emit warning on unused parameter on "-Wall… · d92693b4
      trans-decl.c (generate_local_decl): Emit warning on unused parameter on "-Wall -Wextra" or "-Wunused-parameter" but...
      
      gcc/fortran:
      2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
      
      	* trans-decl.c (generate_local_decl): Emit warning on unused parameter
      	on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
      	messages that start with lower case to upper case.
      	* invoke.texi (-Wparameter-unused): Document differences between gcc
      	and gfortran regarding this option.
      
      gcc/testsuite:
      2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
      
      	* gfortran.dg/parameter_unused.f90: Adjusted dg-options and
      	error message text.
      
      From-SVN: r127126
      Daniel Franke committed
    • re PR fortran/32945 (ICE with initialization expressions) · d05360a6
      gcc/fortran:
      2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/32945
      	* expr.c (check_specification_function): Skip check if no symtree 
      	is available.
      
      gcc/testsuite:
      2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/32945
      	* gfortran.dg/initialization_12.f90: New test.
      
      From-SVN: r127124
      Daniel Franke committed
    • tree-pretty-print.c (dump_generic_node): Dump OMP_SECTIONS_SWITCH. · e5c95afe
      	* tree-pretty-print.c (dump_generic_node): Dump OMP_SECTIONS_SWITCH.
      	Display new operands of OMP_SECTIONS and OMP_CONTINUE.
      	* tree.h (OMP_SECTIONS_CONTROL): New macro.
      	(OMP_DIRECTIVE_P): Add OMP_SECTIONS_SWITCH.
      	* omp-low.c (get_ws_args_for, determine_parallel_type,
      	expand_omp_for_generic, expand_omp_for_static_nochunk,
      	expand_omp_for_static_chunk, expand_omp_for, expand_omp_sections):
      	Work with more precise CFG.
      	(build_omp_regions_1): Handle OMP_SECTIONS_SWITCH.
      	(lower_omp_sections): Emit OMP_SECTIONS_SWITCH.  Add arguments to
      	OMP_CONTINUE.
      	* tree-gimple.c (is_gimple_stmt): Handle OMP_SECTIONS_SWITCH.
      	* gimple-low.c (lower_stmt): Ditto.
      	* tree-inline.c (estimate_num_insns_1): Ditto.
      	* tree.def (OMP_SECTIONS, OMP_CONTINUE): Added new operands.
      	(OMP_SECTIONS_SWITCH): New.
      	* tree-cfgcleanup.c (cleanup_omp_return): New.
      	(cleanup_tree_cfg_bb): Call cleanup_omp_return.
      	* tree-cfg.c (make_edges): Create back edges for OMP_CONTINUE
      	and exit edge for OMP_FOR.  Handle OMP_SECTIONS_SWITCH.
      	(tree_redirect_edge_and_branch): Handle omp constructs.
      
      	* fortran/trans-openmp.c (gfc_trans_omp_sections): Build OMP_SECTIONS
      	with three arguments.
      
      From-SVN: r127121
      Zdenek Dvorak committed
    • Update sv.po · 203bb67e
      From-SVN: r127120
      Philipp Thomas committed
    • tree-cfg.c (tree_merge_blocks): Preserve loop exit phi nodes only in loop closed ssa. · 7c8eb293
      	* tree-cfg.c (tree_merge_blocks): Preserve loop exit phi nodes only
      	in loop closed ssa.
      
      From-SVN: r127119
      Zdenek Dvorak committed
    • tree-ssa-threadupdate.c (thread_through_all_blocks): Record that the loop… · 592c303d
      tree-ssa-threadupdate.c (thread_through_all_blocks): Record that the loop structures may need fixing.
      
      	* tree-ssa-threadupdate.c (thread_through_all_blocks): Record that
      	the loop structures may need fixing.
      	* tree-cfgcleanup.c (cleanup_tree_cfg_noloop, repair_loop_structures):
      	New functions.
      	(cleanup_tree_cfg_loop): Removed.
      	(cleanup_tree_cfg): If loops need fixing, call repair_loop_structures.
      	* tree-predcom.c (tree_predictive_commoning): Return TODO_cleanup_cfg
      	instead of running cleanup_tree_cfg_loop.
      	* cfgloop.h (LOOPS_NEED_FIXUP): New constant.
      	* tree-flow.h (cleanup_tree_cfg_loop): Declaration removed.
      	(tree_predictive_commoning): Declaration changed.
      	* passes.c (execute_function_todo): Do not use cleanup_tree_cfg_loop.
      
      From-SVN: r127118
      Zdenek Dvorak committed
    • invoke.texi (l1-cache-size): Update documentation. · 46cb0441
      	* doc/invoke.texi (l1-cache-size): Update documentation.
      	(l2-cache-size): Document.
      	* params.h (L2_CACHE_SIZE): New macro.
      	* tree-ssa-loop-prefetch.c (L1_CACHE_SIZE_BYTES): Reflect
      	that L1_CACHE_SIZE is in kB now.
      	(L2_CACHE_SIZE_BYTES): New macro.
      	(tree_ssa_prefetch_arrays): Show size in kB.
      	* config/i386/i386.h (struct processor_costs): Add l1_cache_size
      	and l2_cache_size fields.
      	* config/i386/driver-i386.c (describe_cache): Detect cache size
      	in kB.
      	* config/i386/i386.c (size_cost, i386_cost, i486_cost,pentium_cost,
      	pentiumpro_cost, geode_cost, k6_cost, athlon_cost, k8_cost,
      	amdfam10_cost, pentium4_cost, nocona_cost, core2_cost,
      	generic64_cost, generic32_cost): Add l1_cache_size and l2_cache_size.
      	(override_options): Set l1-cache-size and l2-cache-size to default
      	values if not specified otherwise.
      	* params.def (PARAM_L1_CACHE_SIZE): Change to set in kB.
      	(PARAM_L2_CACHE_SIZE): New.
      
      From-SVN: r127117
      Zdenek Dvorak committed
    • 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... · 0ea339ea
      gcc/
      2007-xx-xx  Nigel Stephens  <nigel@mips.com>
      	    David Ung  <davidu@mips.com>
      	    Thiemo Seufer  <ths@mips.com>
      	    Chris Dearman  <chris@mips.com>
      	    Richard Sandiford  <richard@codesourcery.com>
      
      	* config.gcc (mips*-sde-elf*): New stanza.
      	(mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*)
      	(mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*)
      	(mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*)
      	(mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*)
      	(mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss)
      	(mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16
      	to tmake_file.
      	* config/mips/sde.h: New file.
      	* config/mips/t-libgcc-mips16: Likewise.
      	* config/mips/t-sde: Likewise.
      	* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings
      	of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR,
      	_MIPS_FPSET and _MIPS_SZINT.
      	* config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise.
      	* config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate
      	insertion of a default -mips option.  Use MIPS_32BIT_OPTION_SPEC.
      	* config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete.
      	* config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
      	* config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
      	* config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32,
      	_ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG,
      	_MIPS_SZPTR and _MIPS_FPSET.
      	(MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no
      	architecture is specified.
      	(MIPS_32BIT_OPTION_SPEC): New macro.
      
      Co-Authored-By: Chris Dearman <chris@mips.com>
      Co-Authored-By: David Ung <davidu@mips.com>
      Co-Authored-By: Richard Sandiford <richard@codesourcery.com>
      Co-Authored-By: Thiemo Seufer <ths@mips.com>
      
      From-SVN: r127113
      Nigel Stephens committed