aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kabaev <kan@FreeBSD.org>2004-07-28 03:11:36 +0000
committerAlexander Kabaev <kan@FreeBSD.org>2004-07-28 03:11:36 +0000
commit9a63ad9273061dc19cbd117762e365ea9634e241 (patch)
tree052f4bb635f2bea2c5e350bd60c902be100a0d1e
parentfe349557597c18e74a14e9a0d2bdb422892159d8 (diff)
downloadsrc-9a63ad9273061dc19cbd117762e365ea9634e241.tar.gz
src-9a63ad9273061dc19cbd117762e365ea9634e241.zip
Gcc 3.4.2 20040728.
Notes
Notes: svn path=/vendor/gcc/dist/; revision=132718
-rw-r--r--contrib/gcc/ChangeLog21097
-rw-r--r--contrib/gcc/ChangeLog.14
-rw-r--r--contrib/gcc/ChangeLog.1016352
-rw-r--r--contrib/gcc/ChangeLog.26
-rw-r--r--contrib/gcc/ChangeLog.36
-rw-r--r--contrib/gcc/ChangeLog.42
-rw-r--r--contrib/gcc/ChangeLog.52
-rw-r--r--contrib/gcc/ChangeLog.68
-rw-r--r--contrib/gcc/ChangeLog.74
-rw-r--r--contrib/gcc/ChangeLog.814448
-rw-r--r--contrib/gcc/ChangeLog.921488
-rw-r--r--contrib/gcc/Makefile.in3068
-rw-r--r--contrib/gcc/README.Portability226
-rw-r--r--contrib/gcc/aclocal.m41078
-rw-r--r--contrib/gcc/alias.c764
-rw-r--r--contrib/gcc/alloc-pool.c367
-rw-r--r--contrib/gcc/alloc-pool.h55
-rw-r--r--contrib/gcc/ansidecl.h11
-rw-r--r--contrib/gcc/attribs.c59
-rw-r--r--contrib/gcc/basic-block.h572
-rw-r--r--contrib/gcc/bb-reorder.c1242
-rw-r--r--contrib/gcc/bitmap.c153
-rw-r--r--contrib/gcc/bitmap.h43
-rw-r--r--contrib/gcc/bt-load.c1377
-rw-r--r--contrib/gcc/builtin-attrs.def100
-rw-r--r--contrib/gcc/builtin-types.def122
-rw-r--r--contrib/gcc/builtins.c4429
-rw-r--r--contrib/gcc/builtins.def1157
-rw-r--r--contrib/gcc/c-aux-info.c55
-rw-r--r--contrib/gcc/c-common.c2834
-rw-r--r--contrib/gcc/c-common.def3
-rw-r--r--contrib/gcc/c-common.h582
-rw-r--r--contrib/gcc/c-convert.c8
-rw-r--r--contrib/gcc/c-cppbuiltin.c591
-rw-r--r--contrib/gcc/c-decl.c5788
-rw-r--r--contrib/gcc/c-dump.c18
-rw-r--r--contrib/gcc/c-errors.c34
-rw-r--r--contrib/gcc/c-format.c913
-rw-r--r--contrib/gcc/c-incpath.c364
-rw-r--r--contrib/gcc/c-incpath.h23
-rw-r--r--contrib/gcc/c-lang.c111
-rw-r--r--contrib/gcc/c-lex.c752
-rw-r--r--contrib/gcc/c-objc-common.c304
-rw-r--r--contrib/gcc/c-opts.c1640
-rw-r--r--contrib/gcc/c-parse.in928
-rw-r--r--contrib/gcc/c-pch.c433
-rw-r--r--contrib/gcc/c-ppoutput.c415
-rw-r--r--contrib/gcc/c-pragma.c89
-rw-r--r--contrib/gcc/c-pragma.h33
-rw-r--r--contrib/gcc/c-pretty-print.c2213
-rw-r--r--contrib/gcc/c-pretty-print.h197
-rw-r--r--contrib/gcc/c-semantics.c536
-rw-r--r--contrib/gcc/c-tree.h346
-rw-r--r--contrib/gcc/c-typeck.c2775
-rw-r--r--contrib/gcc/c.opt825
-rw-r--r--contrib/gcc/caller-save.c115
-rw-r--r--contrib/gcc/calls.c1770
-rw-r--r--contrib/gcc/cfg.c460
-rw-r--r--contrib/gcc/cfganal.c191
-rw-r--r--contrib/gcc/cfgbuild.c128
-rw-r--r--contrib/gcc/cfgcleanup.c664
-rw-r--r--contrib/gcc/cfghooks.c48
-rw-r--r--contrib/gcc/cfghooks.h83
-rw-r--r--contrib/gcc/cfglayout.c826
-rw-r--r--contrib/gcc/cfglayout.h26
-rw-r--r--contrib/gcc/cfgloop.c420
-rw-r--r--contrib/gcc/cfgloop.h341
-rw-r--r--contrib/gcc/cfgloopanal.c1482
-rw-r--r--contrib/gcc/cfgloopmanip.c1244
-rw-r--r--contrib/gcc/cfgrtl.c1427
-rw-r--r--contrib/gcc/cgraph.c644
-rw-r--r--contrib/gcc/cgraph.h192
-rw-r--r--contrib/gcc/cgraphunit.c1613
-rw-r--r--contrib/gcc/collect2.c1209
-rw-r--r--contrib/gcc/collect2.h27
-rw-r--r--contrib/gcc/combine.c1488
-rw-r--r--contrib/gcc/common.opt808
-rw-r--r--contrib/gcc/config.build123
-rw-r--r--contrib/gcc/config.gcc2762
-rw-r--r--contrib/gcc/config.host155
-rw-r--r--contrib/gcc/config.in830
-rw-r--r--contrib/gcc/config/alpha/alpha-modes.def23
-rw-r--r--contrib/gcc/config/alpha/alpha-protos.h245
-rw-r--r--contrib/gcc/config/alpha/alpha.c2906
-rw-r--r--contrib/gcc/config/alpha/alpha.h528
-rw-r--r--contrib/gcc/config/alpha/alpha.md697
-rw-r--r--contrib/gcc/config/alpha/elf.h73
-rw-r--r--contrib/gcc/config/alpha/ev4.md8
-rw-r--r--contrib/gcc/config/alpha/ev5.md8
-rw-r--r--contrib/gcc/config/alpha/ev6.md8
-rw-r--r--contrib/gcc/config/alpha/freebsd.h24
-rw-r--r--contrib/gcc/config/alpha/gnu.h6
-rw-r--r--contrib/gcc/config/alpha/lib1funcs.asm2
-rw-r--r--contrib/gcc/config/alpha/linux-elf.h18
-rw-r--r--contrib/gcc/config/alpha/linux.h18
-rw-r--r--contrib/gcc/config/alpha/netbsd.h13
-rw-r--r--contrib/gcc/config/alpha/openbsd.h50
-rw-r--r--contrib/gcc/config/alpha/osf.h48
-rw-r--r--contrib/gcc/config/alpha/osf5.h22
-rw-r--r--contrib/gcc/config/alpha/t-osf-pthread5
-rw-r--r--contrib/gcc/config/alpha/t-osf44
-rw-r--r--contrib/gcc/config/alpha/unicosmk.h91
-rw-r--r--contrib/gcc/config/alpha/vms-cc.c81
-rw-r--r--contrib/gcc/config/alpha/vms-crt0-64.c10
-rw-r--r--contrib/gcc/config/alpha/vms-crt0.c10
-rw-r--r--contrib/gcc/config/alpha/vms-dwarf2.asm8
-rw-r--r--contrib/gcc/config/alpha/vms-dwarf2eh.asm8
-rw-r--r--contrib/gcc/config/alpha/vms-ld.c74
-rw-r--r--contrib/gcc/config/alpha/vms-psxcrt0-64.c10
-rw-r--r--contrib/gcc/config/alpha/vms-psxcrt0.c10
-rw-r--r--contrib/gcc/config/alpha/vms.h98
-rw-r--r--contrib/gcc/config/alpha/vms64.h8
-rw-r--r--contrib/gcc/config/alpha/vms_tramp.asm8
-rw-r--r--contrib/gcc/config/alpha/xm-vms.h11
-rw-r--r--contrib/gcc/config/arm/README-interworking2
-rw-r--r--contrib/gcc/config/arm/aof.h295
-rw-r--r--contrib/gcc/config/arm/aout.h154
-rw-r--r--contrib/gcc/config/arm/arm-modes.def66
-rw-r--r--contrib/gcc/config/arm/arm-protos.h346
-rw-r--r--contrib/gcc/config/arm/arm.c4192
-rw-r--r--contrib/gcc/config/arm/arm.h1374
-rw-r--r--contrib/gcc/config/arm/arm.md3143
-rw-r--r--contrib/gcc/config/arm/cirrus.md478
-rw-r--r--contrib/gcc/config/arm/coff.h50
-rw-r--r--contrib/gcc/config/arm/crtn.asm2
-rw-r--r--contrib/gcc/config/arm/ecos-elf.h26
-rw-r--r--contrib/gcc/config/arm/elf.h75
-rw-r--r--contrib/gcc/config/arm/fpa.md752
-rw-r--r--contrib/gcc/config/arm/freebsd.h49
-rw-r--r--contrib/gcc/config/arm/ieee754-df.S1224
-rw-r--r--contrib/gcc/config/arm/ieee754-sf.S816
-rw-r--r--contrib/gcc/config/arm/iwmmxt.md1524
-rw-r--r--contrib/gcc/config/arm/kaos-arm.h24
-rw-r--r--contrib/gcc/config/arm/kaos-strongarm.h24
-rw-r--r--contrib/gcc/config/arm/lib1funcs.asm668
-rw-r--r--contrib/gcc/config/arm/linux-elf.h52
-rw-r--r--contrib/gcc/config/arm/linux-gas.h32
-rw-r--r--contrib/gcc/config/arm/mmintrin.h1257
-rw-r--r--contrib/gcc/config/arm/netbsd-elf.h36
-rw-r--r--contrib/gcc/config/arm/netbsd.h38
-rw-r--r--contrib/gcc/config/arm/pe.c41
-rw-r--r--contrib/gcc/config/arm/pe.h86
-rw-r--r--contrib/gcc/config/arm/rtems-elf.h27
-rw-r--r--contrib/gcc/config/arm/semi.h32
-rw-r--r--contrib/gcc/config/arm/semiaof.h30
-rw-r--r--contrib/gcc/config/arm/strongarm-coff.h26
-rw-r--r--contrib/gcc/config/arm/strongarm-elf.h26
-rw-r--r--contrib/gcc/config/arm/strongarm-pe.h26
-rw-r--r--contrib/gcc/config/arm/t-arm-coff2
-rw-r--r--contrib/gcc/config/arm/t-arm-elf35
-rw-r--r--contrib/gcc/config/arm/t-linux3
-rw-r--r--contrib/gcc/config/arm/t-netbsd5
-rw-r--r--contrib/gcc/config/arm/t-pe8
-rw-r--r--contrib/gcc/config/arm/t-semi6
-rw-r--r--contrib/gcc/config/arm/t-strongarm-pe5
-rw-r--r--contrib/gcc/config/arm/t-vxworks10
-rw-r--r--contrib/gcc/config/arm/t-wince-pe37
-rw-r--r--contrib/gcc/config/arm/t-xscale-elf4
-rw-r--r--contrib/gcc/config/arm/uclinux-elf.h26
-rw-r--r--contrib/gcc/config/arm/unknown-elf.h39
-rw-r--r--contrib/gcc/config/arm/vxworks.h95
-rw-r--r--contrib/gcc/config/arm/wince-pe.h29
-rw-r--r--contrib/gcc/config/arm/xscale-elf.h51
-rw-r--r--contrib/gcc/config/darwin-c.c33
-rw-r--r--contrib/gcc/config/darwin-protos.h170
-rw-r--r--contrib/gcc/config/darwin.c609
-rw-r--r--contrib/gcc/config/darwin.h154
-rw-r--r--contrib/gcc/config/dbx.h8
-rw-r--r--contrib/gcc/config/dbxcoff.h16
-rw-r--r--contrib/gcc/config/dbxelf.h16
-rw-r--r--contrib/gcc/config/elfos.h86
-rw-r--r--contrib/gcc/config/fp-bit.c104
-rw-r--r--contrib/gcc/config/fp-bit.h8
-rw-r--r--contrib/gcc/config/freebsd-nthr.h8
-rw-r--r--contrib/gcc/config/freebsd-spec.h17
-rw-r--r--contrib/gcc/config/freebsd.h11
-rw-r--r--contrib/gcc/config/frv/cmovd.c17
-rw-r--r--contrib/gcc/config/frv/cmovh.c17
-rw-r--r--contrib/gcc/config/frv/cmovw.c17
-rw-r--r--contrib/gcc/config/frv/frv-abi.h8
-rw-r--r--contrib/gcc/config/frv/frv-asm.h18
-rw-r--r--contrib/gcc/config/frv/frv-modes.def14
-rw-r--r--contrib/gcc/config/frv/frv-protos.h329
-rw-r--r--contrib/gcc/config/frv/frv.c1736
-rw-r--r--contrib/gcc/config/frv/frv.h392
-rw-r--r--contrib/gcc/config/frv/frv.md70
-rw-r--r--contrib/gcc/config/frv/frvbegin.c33
-rw-r--r--contrib/gcc/config/frv/frvend.c19
-rw-r--r--contrib/gcc/config/frv/lib1funcs.asm17
-rw-r--r--contrib/gcc/config/frv/t-frv6
-rw-r--r--contrib/gcc/config/gnu.h12
-rw-r--r--contrib/gcc/config/gofast.h146
-rw-r--r--contrib/gcc/config/i386/athlon.md1033
-rw-r--r--contrib/gcc/config/i386/att.h30
-rw-r--r--contrib/gcc/config/i386/beos-elf.h11
-rw-r--r--contrib/gcc/config/i386/biarch64.h8
-rw-r--r--contrib/gcc/config/i386/bsd.h27
-rw-r--r--contrib/gcc/config/i386/crtdll.h27
-rw-r--r--contrib/gcc/config/i386/cygming.h391
-rw-r--r--contrib/gcc/config/i386/cygwin.asm42
-rw-r--r--contrib/gcc/config/i386/cygwin.h560
-rw-r--r--contrib/gcc/config/i386/cygwin1.c54
-rw-r--r--contrib/gcc/config/i386/cygwin2.c67
-rw-r--r--contrib/gcc/config/i386/darwin.h27
-rw-r--r--contrib/gcc/config/i386/djgpp.h29
-rw-r--r--contrib/gcc/config/i386/emmintrin.h22
-rw-r--r--contrib/gcc/config/i386/freebsd-aout.h12
-rw-r--r--contrib/gcc/config/i386/freebsd.h28
-rw-r--r--contrib/gcc/config/i386/freebsd64.h13
-rw-r--r--contrib/gcc/config/i386/gas.h18
-rw-r--r--contrib/gcc/config/i386/gnu.h10
-rw-r--r--contrib/gcc/config/i386/gthr-win32.c4
-rw-r--r--contrib/gcc/config/i386/i386-aout.h8
-rw-r--r--contrib/gcc/config/i386/i386-coff.h15
-rw-r--r--contrib/gcc/config/i386/i386-interix.h78
-rw-r--r--contrib/gcc/config/i386/i386-interix3.h10
-rw-r--r--contrib/gcc/config/i386/i386-modes.def42
-rw-r--r--contrib/gcc/config/i386/i386-protos.h400
-rw-r--r--contrib/gcc/config/i386/i386.c4972
-rw-r--r--contrib/gcc/config/i386/i386.h872
-rw-r--r--contrib/gcc/config/i386/i386.md5228
-rw-r--r--contrib/gcc/config/i386/i386elf.h18
-rw-r--r--contrib/gcc/config/i386/k6.md14
-rw-r--r--contrib/gcc/config/i386/kaos-i386.h24
-rw-r--r--contrib/gcc/config/i386/kfreebsdgnu.h35
-rw-r--r--contrib/gcc/config/i386/linux-aout.h13
-rw-r--r--contrib/gcc/config/i386/linux.h45
-rw-r--r--contrib/gcc/config/i386/linux64.h41
-rw-r--r--contrib/gcc/config/i386/lynx-ng.h15
-rw-r--r--contrib/gcc/config/i386/lynx.h15
-rw-r--r--contrib/gcc/config/i386/mingw32.h63
-rw-r--r--contrib/gcc/config/i386/mmintrin.h8
-rw-r--r--contrib/gcc/config/i386/moss.h9
-rw-r--r--contrib/gcc/config/i386/netbsd-elf.h16
-rw-r--r--contrib/gcc/config/i386/netbsd.h2
-rw-r--r--contrib/gcc/config/i386/netbsd64.h14
-rw-r--r--contrib/gcc/config/i386/nto.h99
-rw-r--r--contrib/gcc/config/i386/openbsd.h13
-rw-r--r--contrib/gcc/config/i386/pentium.md20
-rw-r--r--contrib/gcc/config/i386/pmmintrin.h12
-rw-r--r--contrib/gcc/config/i386/ppro.md12
-rw-r--r--contrib/gcc/config/i386/ptx4-i.h18
-rw-r--r--contrib/gcc/config/i386/rtemself.h9
-rw-r--r--contrib/gcc/config/i386/sco5.h17
-rw-r--r--contrib/gcc/config/i386/sol2.h25
-rw-r--r--contrib/gcc/config/i386/svr3dbx.h10
-rw-r--r--contrib/gcc/config/i386/svr3gas.h12
-rw-r--r--contrib/gcc/config/i386/sysv3.h15
-rw-r--r--contrib/gcc/config/i386/sysv4-cpp.h10
-rw-r--r--contrib/gcc/config/i386/sysv4.h27
-rw-r--r--contrib/gcc/config/i386/sysv5.h8
-rw-r--r--contrib/gcc/config/i386/t-beos3
-rw-r--r--contrib/gcc/config/i386/t-cygming19
-rw-r--r--contrib/gcc/config/i386/t-cygwin27
-rw-r--r--contrib/gcc/config/i386/t-interix5
-rw-r--r--contrib/gcc/config/i386/t-nto4
-rw-r--r--contrib/gcc/config/i386/t-sco51
-rw-r--r--contrib/gcc/config/i386/t-vxworks8
-rw-r--r--contrib/gcc/config/i386/unix.h10
-rw-r--r--contrib/gcc/config/i386/uwin.h14
-rw-r--r--contrib/gcc/config/i386/vsta.h8
-rw-r--r--contrib/gcc/config/i386/vxworks.h74
-rw-r--r--contrib/gcc/config/i386/winnt.c379
-rw-r--r--contrib/gcc/config/i386/x-mingw324
-rw-r--r--contrib/gcc/config/i386/x86-64.h24
-rw-r--r--contrib/gcc/config/i386/xm-cygwin.h23
-rw-r--r--contrib/gcc/config/i386/xm-djgpp.h23
-rw-r--r--contrib/gcc/config/i386/xm-mingw32.h40
-rw-r--r--contrib/gcc/config/i386/xmmintrin.h31
-rw-r--r--contrib/gcc/config/ia64/crtbegin.asm269
-rw-r--r--contrib/gcc/config/ia64/crtend.asm102
-rw-r--r--contrib/gcc/config/ia64/crti.asm20
-rw-r--r--contrib/gcc/config/ia64/crtn.asm14
-rw-r--r--contrib/gcc/config/ia64/elf.h10
-rw-r--r--contrib/gcc/config/ia64/fde-glibc.c14
-rw-r--r--contrib/gcc/config/ia64/freebsd.h19
-rw-r--r--contrib/gcc/config/ia64/hpux.h55
-rw-r--r--contrib/gcc/config/ia64/ia64-c.c20
-rw-r--r--contrib/gcc/config/ia64/ia64-modes.def51
-rw-r--r--contrib/gcc/config/ia64/ia64-protos.h222
-rw-r--r--contrib/gcc/config/ia64/ia64.c5224
-rw-r--r--contrib/gcc/config/ia64/ia64.h286
-rw-r--r--contrib/gcc/config/ia64/ia64.md1861
-rw-r--r--contrib/gcc/config/ia64/itanium1.md1616
-rw-r--r--contrib/gcc/config/ia64/itanium2.md1762
-rw-r--r--contrib/gcc/config/ia64/lib1funcs.asm46
-rw-r--r--contrib/gcc/config/ia64/linux.h124
-rw-r--r--contrib/gcc/config/ia64/quadlib.c8
-rw-r--r--contrib/gcc/config/ia64/sysv4.h26
-rw-r--r--contrib/gcc/config/ia64/t-hpux11
-rw-r--r--contrib/gcc/config/ia64/t-ia6413
-rw-r--r--contrib/gcc/config/ia64/unwind-ia64.c168
-rw-r--r--contrib/gcc/config/ia64/unwind-ia64.h8
-rw-r--r--contrib/gcc/config/interix.h21
-rw-r--r--contrib/gcc/config/interix3.h8
-rw-r--r--contrib/gcc/config/kaos.h31
-rw-r--r--contrib/gcc/config/kfreebsdgnu.h41
-rw-r--r--contrib/gcc/config/libgloss.h8
-rw-r--r--contrib/gcc/config/linux-aout.h18
-rw-r--r--contrib/gcc/config/linux.h53
-rw-r--r--contrib/gcc/config/lynx-ng.h8
-rw-r--r--contrib/gcc/config/lynx.h27
-rw-r--r--contrib/gcc/config/netbsd-aout.h12
-rw-r--r--contrib/gcc/config/netbsd-elf.h9
-rw-r--r--contrib/gcc/config/netbsd.h21
-rw-r--r--contrib/gcc/config/openbsd-oldgas.h8
-rw-r--r--contrib/gcc/config/openbsd.h23
-rw-r--r--contrib/gcc/config/ptx4.h49
-rw-r--r--contrib/gcc/config/rs6000/40x.md107
-rw-r--r--contrib/gcc/config/rs6000/440.md120
-rw-r--r--contrib/gcc/config/rs6000/603.md127
-rw-r--r--contrib/gcc/config/rs6000/6xx.md234
-rw-r--r--contrib/gcc/config/rs6000/7450.md162
-rw-r--r--contrib/gcc/config/rs6000/7xx.md167
-rw-r--r--contrib/gcc/config/rs6000/8540.md235
-rw-r--r--contrib/gcc/config/rs6000/aix.h134
-rw-r--r--contrib/gcc/config/rs6000/aix41.h29
-rw-r--r--contrib/gcc/config/rs6000/aix43.h41
-rw-r--r--contrib/gcc/config/rs6000/aix51.h46
-rw-r--r--contrib/gcc/config/rs6000/aix52.h46
-rw-r--r--contrib/gcc/config/rs6000/altivec-defs.h30
-rw-r--r--contrib/gcc/config/rs6000/altivec.h69
-rw-r--r--contrib/gcc/config/rs6000/altivec.md486
-rw-r--r--contrib/gcc/config/rs6000/beos.h30
-rw-r--r--contrib/gcc/config/rs6000/biarch64.h22
-rw-r--r--contrib/gcc/config/rs6000/crtsavres.asm102
-rw-r--r--contrib/gcc/config/rs6000/darwin-ldouble.c205
-rw-r--r--contrib/gcc/config/rs6000/darwin.h170
-rw-r--r--contrib/gcc/config/rs6000/default64.h24
-rw-r--r--contrib/gcc/config/rs6000/eabi-ci.asm2
-rw-r--r--contrib/gcc/config/rs6000/eabi-cn.asm2
-rw-r--r--contrib/gcc/config/rs6000/eabi.h39
-rw-r--r--contrib/gcc/config/rs6000/eabialtivec.h34
-rw-r--r--contrib/gcc/config/rs6000/eabisim.h33
-rw-r--r--contrib/gcc/config/rs6000/eabispe.h70
-rw-r--r--contrib/gcc/config/rs6000/freebsd.h29
-rw-r--r--contrib/gcc/config/rs6000/gnu.h30
-rw-r--r--contrib/gcc/config/rs6000/host-darwin.c189
-rw-r--r--contrib/gcc/config/rs6000/kaos-ppc.h24
-rw-r--r--contrib/gcc/config/rs6000/libgcc-ppc64.ver7
-rw-r--r--contrib/gcc/config/rs6000/linux.h60
-rw-r--r--contrib/gcc/config/rs6000/linux64.h686
-rw-r--r--contrib/gcc/config/rs6000/linuxaltivec.h32
-rw-r--r--contrib/gcc/config/rs6000/linuxspe.h70
-rw-r--r--contrib/gcc/config/rs6000/lynx.h80
-rw-r--r--contrib/gcc/config/rs6000/lynxbase.h45
-rw-r--r--contrib/gcc/config/rs6000/mpc.md99
-rw-r--r--contrib/gcc/config/rs6000/netbsd.h50
-rw-r--r--contrib/gcc/config/rs6000/power4.md392
-rw-r--r--contrib/gcc/config/rs6000/power5.md299
-rw-r--r--contrib/gcc/config/rs6000/ppc-asm.h38
-rw-r--r--contrib/gcc/config/rs6000/ppc64-fp.c55
-rw-r--r--contrib/gcc/config/rs6000/rios1.md179
-rw-r--r--contrib/gcc/config/rs6000/rios2.md117
-rw-r--r--contrib/gcc/config/rs6000/rs6000-c.c41
-rw-r--r--contrib/gcc/config/rs6000/rs6000-modes.def43
-rw-r--r--contrib/gcc/config/rs6000/rs6000-protos.h350
-rw-r--r--contrib/gcc/config/rs6000/rs6000.c7611
-rw-r--r--contrib/gcc/config/rs6000/rs6000.h934
-rw-r--r--contrib/gcc/config/rs6000/rs6000.md3233
-rw-r--r--contrib/gcc/config/rs6000/rs64.md128
-rw-r--r--contrib/gcc/config/rs6000/rtems.h27
-rw-r--r--contrib/gcc/config/rs6000/sol-ci.asm2
-rw-r--r--contrib/gcc/config/rs6000/sol-cn.asm2
-rw-r--r--contrib/gcc/config/rs6000/spe.h649
-rw-r--r--contrib/gcc/config/rs6000/spe.md530
-rw-r--r--contrib/gcc/config/rs6000/sysv4.h656
-rw-r--r--contrib/gcc/config/rs6000/sysv4le.h41
-rw-r--r--contrib/gcc/config/rs6000/t-beos17
-rw-r--r--contrib/gcc/config/rs6000/t-darwin9
-rw-r--r--contrib/gcc/config/rs6000/t-fprules29
-rw-r--r--contrib/gcc/config/rs6000/t-linux6453
-rw-r--r--contrib/gcc/config/rs6000/t-newas17
-rw-r--r--contrib/gcc/config/rs6000/t-ppccomm23
-rw-r--r--contrib/gcc/config/rs6000/t-ppcgas7
-rw-r--r--contrib/gcc/config/rs6000/t-rs600031
-rw-r--r--contrib/gcc/config/rs6000/t-spe68
-rw-r--r--contrib/gcc/config/rs6000/t-vxworks10
-rw-r--r--contrib/gcc/config/rs6000/tramp.asm2
-rw-r--r--contrib/gcc/config/rs6000/vxworks.h82
-rw-r--r--contrib/gcc/config/rs6000/windiss.h42
-rw-r--r--contrib/gcc/config/rs6000/x-darwin4
-rw-r--r--contrib/gcc/config/rs6000/x-linux642
-rw-r--r--contrib/gcc/config/rs6000/xcoff.h165
-rw-r--r--contrib/gcc/config/rtems.h24
-rw-r--r--contrib/gcc/config/s390/2064.md131
-rw-r--r--contrib/gcc/config/s390/2084.md262
-rw-r--r--contrib/gcc/config/s390/fixdfdi.h24
-rw-r--r--contrib/gcc/config/s390/linux.h73
-rw-r--r--contrib/gcc/config/s390/s390-modes.def60
-rw-r--r--contrib/gcc/config/s390/s390-protos.h161
-rw-r--r--contrib/gcc/config/s390/s390.c3889
-rw-r--r--contrib/gcc/config/s390/s390.h457
-rw-r--r--contrib/gcc/config/s390/s390.md5624
-rw-r--r--contrib/gcc/config/s390/s390x.h25
-rw-r--r--contrib/gcc/config/s390/t-tpf13
-rw-r--r--contrib/gcc/config/s390/tpf.h112
-rw-r--r--contrib/gcc/config/sol2.h47
-rw-r--r--contrib/gcc/config/sparc/aout.h26
-rw-r--r--contrib/gcc/config/sparc/biarch64.h10
-rw-r--r--contrib/gcc/config/sparc/cypress.md8
-rw-r--r--contrib/gcc/config/sparc/elf.h30
-rw-r--r--contrib/gcc/config/sparc/freebsd.h37
-rw-r--r--contrib/gcc/config/sparc/gmon-sol2.c29
-rw-r--r--contrib/gcc/config/sparc/hypersparc.md8
-rw-r--r--contrib/gcc/config/sparc/linux.h89
-rw-r--r--contrib/gcc/config/sparc/linux64.h102
-rw-r--r--contrib/gcc/config/sparc/lite.h18
-rw-r--r--contrib/gcc/config/sparc/litecoff.h19
-rw-r--r--contrib/gcc/config/sparc/liteelf.h25
-rw-r--r--contrib/gcc/config/sparc/netbsd-elf.h41
-rw-r--r--contrib/gcc/config/sparc/openbsd.h29
-rw-r--r--contrib/gcc/config/sparc/openbsd64.h19
-rw-r--r--contrib/gcc/config/sparc/pbd.h39
-rw-r--r--contrib/gcc/config/sparc/rtemself.h23
-rw-r--r--contrib/gcc/config/sparc/sol2-64.h11
-rw-r--r--contrib/gcc/config/sparc/sol2-bi.h80
-rw-r--r--contrib/gcc/config/sparc/sol2-gas-bi.h6
-rw-r--r--contrib/gcc/config/sparc/sol2-gld-bi.h27
-rw-r--r--contrib/gcc/config/sparc/sol2-gld.h5
-rw-r--r--contrib/gcc/config/sparc/sol2.h86
-rw-r--r--contrib/gcc/config/sparc/sol26-sld.h7
-rw-r--r--contrib/gcc/config/sparc/sp64-aout.h10
-rw-r--r--contrib/gcc/config/sparc/sp64-elf.h22
-rw-r--r--contrib/gcc/config/sparc/sp86x-elf.h25
-rw-r--r--contrib/gcc/config/sparc/sparc-modes.def24
-rw-r--r--contrib/gcc/config/sparc/sparc-protos.h177
-rw-r--r--contrib/gcc/config/sparc/sparc.c2926
-rw-r--r--contrib/gcc/config/sparc/sparc.h525
-rw-r--r--contrib/gcc/config/sparc/sparc.md729
-rw-r--r--contrib/gcc/config/sparc/sparclet.md8
-rw-r--r--contrib/gcc/config/sparc/supersparc.md8
-rw-r--r--contrib/gcc/config/sparc/sysv4-only.h35
-rw-r--r--contrib/gcc/config/sparc/sysv4.h24
-rw-r--r--contrib/gcc/config/sparc/t-sol23
-rw-r--r--contrib/gcc/config/sparc/ultra1_2.md58
-rw-r--r--contrib/gcc/config/sparc/ultra3.md29
-rw-r--r--contrib/gcc/config/svr3.h81
-rw-r--r--contrib/gcc/config/svr4.h39
-rw-r--r--contrib/gcc/config/t-darwin18
-rw-r--r--contrib/gcc/config/t-freebsd3
-rw-r--r--contrib/gcc/config/t-gnu2
-rw-r--r--contrib/gcc/config/t-kfreebsd-gnu16
-rw-r--r--contrib/gcc/config/t-libunwind6
-rw-r--r--contrib/gcc/config/t-linux7
-rw-r--r--contrib/gcc/config/t-netbsd3
-rw-r--r--contrib/gcc/config/t-openbsd3
-rw-r--r--contrib/gcc/config/t-rtems3
-rw-r--r--contrib/gcc/config/t-slibgcc-darwin30
-rw-r--r--contrib/gcc/config/t-slibgcc-elf-ver5
-rw-r--r--contrib/gcc/config/t-vxworks22
-rw-r--r--contrib/gcc/config/usegas.h8
-rw-r--r--contrib/gcc/config/vxlib.c325
-rw-r--r--contrib/gcc/config/vxworks.h64
-rw-r--r--contrib/gcc/config/windiss.h38
-rwxr-xr-xcontrib/gcc/configure15684
-rw-r--r--contrib/gcc/configure.ac3169
-rw-r--r--contrib/gcc/conflict.c81
-rw-r--r--contrib/gcc/convert.c222
-rw-r--r--contrib/gcc/convert.h12
-rw-r--r--contrib/gcc/coretypes.h65
-rw-r--r--contrib/gcc/coverage.c972
-rw-r--r--contrib/gcc/coverage.h48
-rw-r--r--contrib/gcc/cp-demangle.c6977
-rw-r--r--contrib/gcc/cp-demangle.h149
-rw-r--r--contrib/gcc/cp-demint.c241
-rw-r--r--contrib/gcc/cp/ChangeLog17372
-rw-r--r--contrib/gcc/cp/ChangeLog.14
-rw-r--r--contrib/gcc/cp/ChangeLog.28
-rw-r--r--contrib/gcc/cp/ChangeLog.322648
-rw-r--r--contrib/gcc/cp/Make-lang.in241
-rw-r--r--contrib/gcc/cp/NEWS4
-rw-r--r--contrib/gcc/cp/call.c2688
-rw-r--r--contrib/gcc/cp/cfns.gperf5
-rw-r--r--contrib/gcc/cp/class.c2641
-rw-r--r--contrib/gcc/cp/config-lang.in14
-rw-r--r--contrib/gcc/cp/cp-lang.c132
-rw-r--r--contrib/gcc/cp/cp-tree.def85
-rw-r--r--contrib/gcc/cp/cp-tree.h2421
-rw-r--r--contrib/gcc/cp/cvt.c419
-rw-r--r--contrib/gcc/cp/cxx-pretty-print.c1737
-rw-r--r--contrib/gcc/cp/cxx-pretty-print.h52
-rw-r--r--contrib/gcc/cp/decl.c7183
-rw-r--r--contrib/gcc/cp/decl.h15
-rw-r--r--contrib/gcc/cp/decl2.c3146
-rw-r--r--contrib/gcc/cp/dump.c91
-rw-r--r--contrib/gcc/cp/error.c1404
-rw-r--r--contrib/gcc/cp/except.c316
-rw-r--r--contrib/gcc/cp/expr.c46
-rw-r--r--contrib/gcc/cp/friend.c222
-rw-r--r--contrib/gcc/cp/g++spec.c133
-rw-r--r--contrib/gcc/cp/init.c1505
-rw-r--r--contrib/gcc/cp/lang-specs.h34
-rw-r--r--contrib/gcc/cp/lex.c895
-rw-r--r--contrib/gcc/cp/lex.h53
-rw-r--r--contrib/gcc/cp/mangle.c717
-rw-r--r--contrib/gcc/cp/method.c679
-rw-r--r--contrib/gcc/cp/name-lookup.c4923
-rw-r--r--contrib/gcc/cp/name-lookup.h335
-rw-r--r--contrib/gcc/cp/operators.def22
-rw-r--r--contrib/gcc/cp/optimize.c84
-rw-r--r--contrib/gcc/cp/parser.c15323
-rw-r--r--contrib/gcc/cp/pt.c4362
-rw-r--r--contrib/gcc/cp/ptree.c84
-rw-r--r--contrib/gcc/cp/repo.c101
-rw-r--r--contrib/gcc/cp/rtti.c472
-rw-r--r--contrib/gcc/cp/search.c1552
-rw-r--r--contrib/gcc/cp/semantics.c2558
-rw-r--r--contrib/gcc/cp/tree.c1400
-rw-r--r--contrib/gcc/cp/typeck.c2444
-rw-r--r--contrib/gcc/cp/typeck2.c450
-rw-r--r--contrib/gcc/cplus-dem.c113
-rw-r--r--contrib/gcc/cppcharset.c1411
-rw-r--r--contrib/gcc/cppdefault.c51
-rw-r--r--contrib/gcc/cppdefault.h30
-rw-r--r--contrib/gcc/cpperror.c107
-rw-r--r--contrib/gcc/cppexp.c279
-rw-r--r--contrib/gcc/cppfiles.c1829
-rw-r--r--contrib/gcc/cpphash.c39
-rw-r--r--contrib/gcc/cpphash.h347
-rw-r--r--contrib/gcc/cppinit.c1139
-rw-r--r--contrib/gcc/cpplex.c1906
-rw-r--r--contrib/gcc/cpplib.c901
-rw-r--r--contrib/gcc/cpplib.h429
-rw-r--r--contrib/gcc/cppmacro.c367
-rw-r--r--contrib/gcc/cpppch.c717
-rw-r--r--contrib/gcc/cppspec.c22
-rw-r--r--contrib/gcc/cpptrad.c418
-rw-r--r--contrib/gcc/cppucnid.h336
-rw-r--r--contrib/gcc/cppucnid.pl130
-rw-r--r--contrib/gcc/cppucnid.tab239
-rw-r--r--contrib/gcc/crtstuff.c42
-rw-r--r--contrib/gcc/cse.c1289
-rw-r--r--contrib/gcc/cselib.c567
-rw-r--r--contrib/gcc/cselib.h22
-rw-r--r--contrib/gcc/dbxout.c946
-rw-r--r--contrib/gcc/dbxout.h11
-rw-r--r--contrib/gcc/debug.c34
-rw-r--r--contrib/gcc/debug.h86
-rw-r--r--contrib/gcc/defaults.h187
-rw-r--r--contrib/gcc/demangle.h368
-rw-r--r--contrib/gcc/df.c1092
-rw-r--r--contrib/gcc/df.h216
-rw-r--r--contrib/gcc/diagnostic.c1516
-rw-r--r--contrib/gcc/diagnostic.def2
-rw-r--r--contrib/gcc/diagnostic.h213
-rw-r--r--contrib/gcc/doc/bugreport.texi8
-rw-r--r--contrib/gcc/doc/c-tree.texi162
-rw-r--r--contrib/gcc/doc/compat.texi6
-rw-r--r--contrib/gcc/doc/configfiles.texi4
-rw-r--r--contrib/gcc/doc/configterms.texi6
-rw-r--r--contrib/gcc/doc/contrib.texi74
-rw-r--r--contrib/gcc/doc/contribute.texi4
-rw-r--r--contrib/gcc/doc/cpp.texi555
-rw-r--r--contrib/gcc/doc/cppenv.texi4
-rw-r--r--contrib/gcc/doc/cppinternals.texi22
-rw-r--r--contrib/gcc/doc/cppopts.texi125
-rw-r--r--contrib/gcc/doc/extend.texi1829
-rw-r--r--contrib/gcc/doc/fragments.texi3
-rw-r--r--contrib/gcc/doc/frontends.texi95
-rw-r--r--contrib/gcc/doc/gcc.texi65
-rw-r--r--contrib/gcc/doc/gccint.texi43
-rw-r--r--contrib/gcc/doc/gcov.texi294
-rw-r--r--contrib/gcc/doc/gty.texi77
-rw-r--r--contrib/gcc/doc/hostconfig.texi212
-rw-r--r--contrib/gcc/doc/include/gcc-common.texi21
-rw-r--r--contrib/gcc/doc/include/texinfo.tex4654
-rw-r--r--contrib/gcc/doc/interface.texi27
-rw-r--r--contrib/gcc/doc/invoke.texi3404
-rw-r--r--contrib/gcc/doc/libgcc.texi484
-rw-r--r--contrib/gcc/doc/makefile.texi58
-rw-r--r--contrib/gcc/doc/md.texi495
-rw-r--r--contrib/gcc/doc/objc.texi34
-rw-r--r--contrib/gcc/doc/passes.texi141
-rw-r--r--contrib/gcc/doc/portability.texi15
-rw-r--r--contrib/gcc/doc/rtl.texi230
-rw-r--r--contrib/gcc/doc/sourcebuild.texi259
-rw-r--r--contrib/gcc/doc/standards.texi8
-rw-r--r--contrib/gcc/doc/tm.texi4254
-rw-r--r--contrib/gcc/doc/trouble.texi219
-rw-r--r--contrib/gcc/dojump.c999
-rw-r--r--contrib/gcc/doloop.c63
-rw-r--r--contrib/gcc/dominance.c437
-rw-r--r--contrib/gcc/dummy-conditions.c12
-rw-r--r--contrib/gcc/dwarf2.h7
-rw-r--r--contrib/gcc/dwarf2asm.c258
-rw-r--r--contrib/gcc/dwarf2asm.h59
-rw-r--r--contrib/gcc/dwarf2out.c3846
-rw-r--r--contrib/gcc/dwarf2out.h15
-rw-r--r--contrib/gcc/emit-rtl.c1981
-rw-r--r--contrib/gcc/errors.c49
-rw-r--r--contrib/gcc/errors.h15
-rw-r--r--contrib/gcc/et-forest.c1113
-rw-r--r--contrib/gcc/et-forest.h66
-rw-r--r--contrib/gcc/except.c608
-rw-r--r--contrib/gcc/except.h103
-rw-r--r--contrib/gcc/explow.c256
-rw-r--r--contrib/gcc/expmed.c471
-rw-r--r--contrib/gcc/expr.c3648
-rw-r--r--contrib/gcc/expr.h530
-rw-r--r--contrib/gcc/f/ChangeLog4011
-rw-r--r--contrib/gcc/f/Make-lang.in287
-rw-r--r--contrib/gcc/f/ansify.c6
-rw-r--r--contrib/gcc/f/bad.c11
-rw-r--r--contrib/gcc/f/bld.c2540
-rw-r--r--contrib/gcc/f/bld.h278
-rw-r--r--contrib/gcc/f/bugs.texi13
-rw-r--r--contrib/gcc/f/com-rt.def18
-rw-r--r--contrib/gcc/f/com.c675
-rw-r--r--contrib/gcc/f/com.h27
-rw-r--r--contrib/gcc/f/data.c10
-rw-r--r--contrib/gcc/f/equiv.c9
-rw-r--r--contrib/gcc/f/expr.c996
-rw-r--r--contrib/gcc/f/ffe.texi17
-rw-r--r--contrib/gcc/f/fini.c4
-rw-r--r--contrib/gcc/f/g77.texi53
-rw-r--r--contrib/gcc/f/g77spec.c54
-rw-r--r--contrib/gcc/f/global.c43
-rw-r--r--contrib/gcc/f/global.h4
-rw-r--r--contrib/gcc/f/implic.c8
-rw-r--r--contrib/gcc/f/info.c4
-rw-r--r--contrib/gcc/f/intdoc.c13
-rw-r--r--contrib/gcc/f/intdoc.in4
-rw-r--r--contrib/gcc/f/intdoc.texi4
-rw-r--r--contrib/gcc/f/intrin.c7
-rw-r--r--contrib/gcc/f/invoke.texi12
-rw-r--r--contrib/gcc/f/lab.c10
-rw-r--r--contrib/gcc/f/lab.h4
-rw-r--r--contrib/gcc/f/lang-specs.h10
-rw-r--r--contrib/gcc/f/lang.opt402
-rw-r--r--contrib/gcc/f/lex.c183
-rw-r--r--contrib/gcc/f/malloc.c37
-rw-r--r--contrib/gcc/f/name.c5
-rw-r--r--contrib/gcc/f/news.texi36
-rw-r--r--contrib/gcc/f/parse.c9
-rw-r--r--contrib/gcc/f/proj.h6
-rw-r--r--contrib/gcc/f/root.texi2
-rw-r--r--contrib/gcc/f/src.c4
-rw-r--r--contrib/gcc/f/st.c34
-rw-r--r--contrib/gcc/f/sta.c342
-rw-r--r--contrib/gcc/f/stb.c7439
-rw-r--r--contrib/gcc/f/stb.h78
-rw-r--r--contrib/gcc/f/stc.c3630
-rw-r--r--contrib/gcc/f/stc.h128
-rw-r--r--contrib/gcc/f/std.c1762
-rw-r--r--contrib/gcc/f/std.h106
-rw-r--r--contrib/gcc/f/ste.c227
-rw-r--r--contrib/gcc/f/ste.h28
-rw-r--r--contrib/gcc/f/storag.c11
-rw-r--r--contrib/gcc/f/storag.h4
-rw-r--r--contrib/gcc/f/str.h7
-rw-r--r--contrib/gcc/f/stt.c56
-rw-r--r--contrib/gcc/f/stw.c10
-rw-r--r--contrib/gcc/f/symbol.c44
-rw-r--r--contrib/gcc/f/symbol.h4
-rw-r--r--contrib/gcc/f/target.c15
-rw-r--r--contrib/gcc/f/target.h307
-rw-r--r--contrib/gcc/f/top.c815
-rw-r--r--contrib/gcc/f/top.h3
-rw-r--r--contrib/gcc/f/type.c13
-rw-r--r--contrib/gcc/f/where.c4
-rw-r--r--contrib/gcc/fibheap.c2
-rw-r--r--contrib/gcc/fibheap.h5
-rw-r--r--contrib/gcc/filenames.h51
-rw-r--r--contrib/gcc/final.c990
-rw-r--r--contrib/gcc/fix-header.c207
-rwxr-xr-xcontrib/gcc/fixproto58
-rw-r--r--contrib/gcc/flags.h213
-rw-r--r--contrib/gcc/flow.c753
-rw-r--r--contrib/gcc/fold-const.c3550
-rw-r--r--contrib/gcc/fp-test.c4
-rw-r--r--contrib/gcc/function.c2040
-rw-r--r--contrib/gcc/function.h145
-rw-r--r--contrib/gcc/gbl-ctors.h6
-rw-r--r--contrib/gcc/gcc.c2123
-rw-r--r--contrib/gcc/gcc.h27
-rwxr-xr-xcontrib/gcc/gccbug.in8
-rw-r--r--contrib/gcc/gccspec.c17
-rw-r--r--contrib/gcc/gcov-dump.c436
-rw-r--r--contrib/gcc/gcov-io.c544
-rw-r--r--contrib/gcc/gcov-io.h780
-rw-r--r--contrib/gcc/gcov-iov.c68
-rw-r--r--contrib/gcc/gcov.c2511
-rw-r--r--contrib/gcc/gcse.c2754
-rw-r--r--contrib/gcc/gdbinit.in2
-rw-r--r--contrib/gcc/gen-protos.c27
-rw-r--r--contrib/gcc/genattr.c142
-rw-r--r--contrib/gcc/genattrtab.c1527
-rw-r--r--contrib/gcc/genattrtab.h59
-rw-r--r--contrib/gcc/genautomata.c3695
-rw-r--r--contrib/gcc/gencheck.c33
-rw-r--r--contrib/gcc/gencodes.c21
-rw-r--r--contrib/gcc/genconditions.c50
-rw-r--r--contrib/gcc/genconfig.c58
-rw-r--r--contrib/gcc/genconstants.c19
-rw-r--r--contrib/gcc/genemit.c159
-rw-r--r--contrib/gcc/genextract.c87
-rw-r--r--contrib/gcc/genflags.c61
-rw-r--r--contrib/gcc/gengenrtl.c104
-rw-r--r--contrib/gcc/gengtype-lex.l59
-rw-r--r--contrib/gcc/gengtype-yacc.y4
-rw-r--r--contrib/gcc/gengtype.c2047
-rw-r--r--contrib/gcc/gengtype.h52
-rw-r--r--contrib/gcc/genmodes.c1220
-rw-r--r--contrib/gcc/genmultilib88
-rw-r--r--contrib/gcc/genopinit.c122
-rw-r--r--contrib/gcc/genoutput.c292
-rw-r--r--contrib/gcc/genpeep.c62
-rw-r--r--contrib/gcc/genpreds.c14
-rw-r--r--contrib/gcc/genrecog.c368
-rw-r--r--contrib/gcc/gensupport.c178
-rw-r--r--contrib/gcc/gensupport.h20
-rw-r--r--contrib/gcc/ggc-common.c660
-rw-r--r--contrib/gcc/ggc-none.c29
-rw-r--r--contrib/gcc/ggc-page.c671
-rw-r--r--contrib/gcc/ggc-simple.c189
-rw-r--r--contrib/gcc/ggc-zone.c1398
-rw-r--r--contrib/gcc/ggc.h255
-rw-r--r--contrib/gcc/ginclude/float.h8
-rw-r--r--contrib/gcc/ginclude/iso646.h8
-rw-r--r--contrib/gcc/ginclude/stdarg.h8
-rw-r--r--contrib/gcc/ginclude/stdbool.h8
-rw-r--r--contrib/gcc/ginclude/stddef.h21
-rw-r--r--contrib/gcc/global.c248
-rw-r--r--contrib/gcc/graph.c97
-rw-r--r--contrib/gcc/graph.h8
-rw-r--r--contrib/gcc/gthr-dce.h7
-rw-r--r--contrib/gcc/gthr-gnat.c81
-rw-r--r--contrib/gcc/gthr-gnat.h43
-rw-r--r--contrib/gcc/gthr-posix.c207
-rw-r--r--contrib/gcc/gthr-posix.h22
-rw-r--r--contrib/gcc/gthr-rtems.h11
-rw-r--r--contrib/gcc/gthr-solaris.h7
-rw-r--r--contrib/gcc/gthr-vxworks.h285
-rw-r--r--contrib/gcc/gthr-win32.h20
-rw-r--r--contrib/gcc/gthr.h2
-rw-r--r--contrib/gcc/haifa-sched.c890
-rw-r--r--contrib/gcc/hard-reg-set.h4
-rw-r--r--contrib/gcc/hashtab.c249
-rw-r--r--contrib/gcc/hashtab.h31
-rw-r--r--contrib/gcc/hashtable.c138
-rw-r--r--contrib/gcc/hashtable.h30
-rw-r--r--contrib/gcc/hex.c21
-rw-r--r--contrib/gcc/hooks.c178
-rw-r--r--contrib/gcc/hooks.h52
-rw-r--r--contrib/gcc/host-default.c28
-rw-r--r--contrib/gcc/hosthooks-def.h37
-rw-r--r--contrib/gcc/hosthooks.h37
-rw-r--r--contrib/gcc/hwint.h205
-rw-r--r--contrib/gcc/ifcvt.c779
-rw-r--r--contrib/gcc/input.h48
-rw-r--r--contrib/gcc/integrate.c346
-rw-r--r--contrib/gcc/integrate.h35
-rw-r--r--contrib/gcc/intl.c35
-rw-r--r--contrib/gcc/intl.h19
-rw-r--r--contrib/gcc/jump.c339
-rw-r--r--contrib/gcc/langhooks-def.h166
-rw-r--r--contrib/gcc/langhooks.c308
-rw-r--r--contrib/gcc/langhooks.h268
-rw-r--r--contrib/gcc/lbasename.c20
-rw-r--r--contrib/gcc/lcm.c217
-rw-r--r--contrib/gcc/libfuncs.h207
-rw-r--r--contrib/gcc/libgcc-darwin.ver219
-rw-r--r--contrib/gcc/libgcc-std.ver29
-rw-r--r--contrib/gcc/libgcc2.c1131
-rw-r--r--contrib/gcc/libgcc2.h32
-rw-r--r--contrib/gcc/libgcov.c583
-rw-r--r--contrib/gcc/libiberty.h8
-rw-r--r--contrib/gcc/line-map.c64
-rw-r--r--contrib/gcc/line-map.h37
-rw-r--r--contrib/gcc/lists.c30
-rw-r--r--contrib/gcc/local-alloc.c334
-rw-r--r--contrib/gcc/longlong.h84
-rw-r--r--contrib/gcc/loop-init.c220
-rw-r--r--contrib/gcc/loop-unroll.c1383
-rw-r--r--contrib/gcc/loop-unswitch.c409
-rw-r--r--contrib/gcc/loop.c1598
-rw-r--r--contrib/gcc/loop.h71
-rw-r--r--contrib/gcc/machmode.def295
-rw-r--r--contrib/gcc/machmode.h114
-rw-r--r--contrib/gcc/main.c10
-rw-r--r--contrib/gcc/mips-tdump.c255
-rw-r--r--contrib/gcc/mips-tfile.c864
-rw-r--r--contrib/gcc/mkconfig.sh116
-rw-r--r--contrib/gcc/mkdeps.c124
-rw-r--r--contrib/gcc/mkdeps.h30
-rw-r--r--contrib/gcc/mkheaders.in20
-rw-r--r--contrib/gcc/mklibgcc.in123
-rw-r--r--contrib/gcc/mode-classes.def31
-rw-r--r--contrib/gcc/objc/Make-lang.in117
-rw-r--r--contrib/gcc/objc/config-lang.in15
-rw-r--r--contrib/gcc/objc/lang-specs.h35
-rw-r--r--contrib/gcc/objc/objc-act.c4717
-rw-r--r--contrib/gcc/objc/objc-act.h178
-rw-r--r--contrib/gcc/objc/objc-lang.c50
-rw-r--r--contrib/gcc/objc/objc-tree.def14
-rw-r--r--contrib/gcc/obstack.h40
-rw-r--r--contrib/gcc/optabs.c2131
-rw-r--r--contrib/gcc/optabs.h195
-rw-r--r--contrib/gcc/opts.c1878
-rw-r--r--contrib/gcc/opts.h56
-rw-r--r--contrib/gcc/opts.sh175
-rw-r--r--contrib/gcc/output.h331
-rw-r--r--contrib/gcc/params.c18
-rw-r--r--contrib/gcc/params.def152
-rw-r--r--contrib/gcc/params.h8
-rw-r--r--contrib/gcc/pex-unix.c166
-rw-r--r--contrib/gcc/postreload.c1560
-rw-r--r--contrib/gcc/predict.c415
-rw-r--r--contrib/gcc/predict.def5
-rw-r--r--contrib/gcc/predict.h17
-rw-r--r--contrib/gcc/prefix.c47
-rw-r--r--contrib/gcc/prefix.h6
-rw-r--r--contrib/gcc/pretty-print.c548
-rw-r--r--contrib/gcc/pretty-print.h273
-rw-r--r--contrib/gcc/print-rtl.c143
-rw-r--r--contrib/gcc/print-tree.c96
-rw-r--r--contrib/gcc/profile.c1257
-rw-r--r--contrib/gcc/protoize.c485
-rw-r--r--contrib/gcc/ra-build.c491
-rw-r--r--contrib/gcc/ra-colorize.c332
-rw-r--r--contrib/gcc/ra-debug.c151
-rw-r--r--contrib/gcc/ra-rewrite.c218
-rw-r--r--contrib/gcc/ra.c112
-rw-r--r--contrib/gcc/ra.h131
-rw-r--r--contrib/gcc/read-rtl.c102
-rw-r--r--contrib/gcc/real.c1526
-rw-r--r--contrib/gcc/real.h159
-rw-r--r--contrib/gcc/recog.c754
-rw-r--r--contrib/gcc/recog.h157
-rw-r--r--contrib/gcc/reg-stack.c416
-rw-r--r--contrib/gcc/regclass.c572
-rw-r--r--contrib/gcc/regmove.c287
-rw-r--r--contrib/gcc/regrename.c279
-rw-r--r--contrib/gcc/regs.h19
-rw-r--r--contrib/gcc/reload.c678
-rw-r--r--contrib/gcc/reload.h107
-rw-r--r--contrib/gcc/reload1.c2130
-rw-r--r--contrib/gcc/reorg.c306
-rw-r--r--contrib/gcc/resource.c109
-rw-r--r--contrib/gcc/resource.h23
-rw-r--r--contrib/gcc/rtl-error.c77
-rw-r--r--contrib/gcc/rtl.c271
-rw-r--r--contrib/gcc/rtl.def175
-rw-r--r--contrib/gcc/rtl.h1280
-rw-r--r--contrib/gcc/rtlanal.c660
-rw-r--r--contrib/gcc/sbitmap.c153
-rw-r--r--contrib/gcc/sbitmap.h95
-rw-r--r--contrib/gcc/scan-decls.c22
-rw-r--r--contrib/gcc/scan.c41
-rw-r--r--contrib/gcc/scan.h38
-rw-r--r--contrib/gcc/sched-deps.c527
-rw-r--r--contrib/gcc/sched-ebb.c405
-rw-r--r--contrib/gcc/sched-int.h180
-rw-r--r--contrib/gcc/sched-rgn.c673
-rw-r--r--contrib/gcc/sched-vis.c70
-rw-r--r--contrib/gcc/sdbout.c282
-rw-r--r--contrib/gcc/sdbout.h6
-rw-r--r--contrib/gcc/sibcall.c79
-rw-r--r--contrib/gcc/simplify-rtx.c1742
-rw-r--r--contrib/gcc/splay-tree.c4
-rw-r--r--contrib/gcc/splay-tree.h25
-rw-r--r--contrib/gcc/sreal.c561
-rw-r--r--contrib/gcc/sreal.h65
-rw-r--r--contrib/gcc/stack.h8
-rw-r--r--contrib/gcc/stmt.c1440
-rw-r--r--contrib/gcc/stor-layout.c840
-rw-r--r--contrib/gcc/stringpool.c162
-rw-r--r--contrib/gcc/stub-objc.c71
-rw-r--r--contrib/gcc/system.h187
-rw-r--r--contrib/gcc/target-def.h137
-rw-r--r--contrib/gcc/target.h290
-rw-r--r--contrib/gcc/targhooks.c213
-rw-r--r--contrib/gcc/targhooks.h39
-rw-r--r--contrib/gcc/timevar.c124
-rw-r--r--contrib/gcc/timevar.def15
-rw-r--r--contrib/gcc/timevar.h25
-rw-r--r--contrib/gcc/tlink.c145
-rw-r--r--contrib/gcc/toplev.c4925
-rw-r--r--contrib/gcc/toplev.h162
-rw-r--r--contrib/gcc/tracer.c98
-rw-r--r--contrib/gcc/tree-dump.c145
-rw-r--r--contrib/gcc/tree-dump.h23
-rw-r--r--contrib/gcc/tree-inline.c848
-rw-r--r--contrib/gcc/tree-inline.h24
-rw-r--r--contrib/gcc/tree-optimize.c231
-rw-r--r--contrib/gcc/tree.c1661
-rw-r--r--contrib/gcc/tree.def133
-rw-r--r--contrib/gcc/tree.h1527
-rw-r--r--contrib/gcc/tsystem.h17
-rw-r--r--contrib/gcc/unroll.c305
-rw-r--r--contrib/gcc/unwind-c.c10
-rw-r--r--contrib/gcc/unwind-dw2-fde-darwin.c99
-rw-r--r--contrib/gcc/unwind-dw2-fde-glibc.c29
-rw-r--r--contrib/gcc/unwind-dw2-fde.c185
-rw-r--r--contrib/gcc/unwind-dw2-fde.h34
-rw-r--r--contrib/gcc/unwind-dw2.c216
-rw-r--r--contrib/gcc/unwind-pe.h30
-rw-r--r--contrib/gcc/unwind-sjlj.c29
-rw-r--r--contrib/gcc/unwind.h9
-rw-r--r--contrib/gcc/unwind.inc11
-rw-r--r--contrib/gcc/value-prof.c708
-rw-r--r--contrib/gcc/value-prof.h64
-rw-r--r--contrib/gcc/varasm.c1814
-rw-r--r--contrib/gcc/varray.c219
-rw-r--r--contrib/gcc/varray.h60
-rw-r--r--contrib/gcc/version.c3
-rw-r--r--contrib/gcc/vmsdbgout.c285
-rw-r--r--contrib/gcc/web.c306
-rw-r--r--contrib/gcc/xcoff.h17
-rw-r--r--contrib/gcc/xcoffout.c73
-rw-r--r--contrib/gcc/xcoffout.h28
-rw-r--r--contrib/gcc/xexit.c53
-rw-r--r--contrib/gcc/xmalloc.c183
-rw-r--r--contrib/gcc/xstrdup.c34
-rw-r--r--contrib/gcc/xstrerror.c67
916 files changed, 319636 insertions, 200115 deletions
diff --git a/contrib/gcc/ChangeLog b/contrib/gcc/ChangeLog
index eb90643cbdec..efcecf7bd7ab 100644
--- a/contrib/gcc/ChangeLog
+++ b/contrib/gcc/ChangeLog
@@ -1,17812 +1,5931 @@
-2003-11-05 Roger Sayle <roger@eyesopen.com>
+2004-07-24 Alexander Kabaev <kan@freebsd.org>
+
+ * config/ia64/ia64.h (SUBTARGET_EXTRA_SPECS): Default to nothing.
+ (EXTRA_SPECS): Use SUBTARGET_EXTRA_SPECS.
+
+2004-07-26 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/16239
+ * config/rs6000/rs6000.md (movdi_internal64): Further disparage
+ f->f.
+
+2004-07-26 Richard Sandiford <rsandifo@redhat.com>
+
+ PR rtl-optimization/16643
+ * cfglayout.h (cfg_layout_initialize): Add a flags parameter.
+ * cfglayout.c (cfg_layout_initialize): Pass it to cleanup_cfg.
+ * basic-block.h (reorder_basic_blocks): Add a flags parameter.
+ * cfglayout.c (reorder_basic_blocks): Pass it to cfg_layout_initialize.
+ * loop-init.c (loop_optimizer_init): Pass 0 to cfg_layout_initialize.
+ * rtl.h (tracer): Add a flags parameter.
+ * tracer.c (tracer): Pass it to cfg_layout_initialise.
+ * toplev.c (rest_of_handle_stack_regs): Pass 0 to reorder_basic_blocks.
+ (rest_of_handle_reorder_blocks): Update calls to tracer and
+ reorder_basic_blocks, passing CLEANUP_UPDATE_LIFE if appropriate.
+ (rest_of_handle_tracer): Pass 0 to tracer.
+
+2004-07-24 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h: Do not disable TLS.
+
+2004-07-24 Alexander Kabaev <kan@freebsd.org>
+ Zack Weinberg <zack@codesourcery.com
+
+ PR 16684
+ * c-decl.c (diagnose_mismatched_decls): Don't issue a
+ redundant-declaration warning the first time a builtin is
+ declared explicitly.
+
+2004-07-21 Jakub Jelinek <jakub@redhat.com>
+ Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/15345
+ PR c/16450
+ * toplev.c (rest_of_handle_inlining): Set DECL_DEFER_OUTPUT on C
+ nested functions as well.
+ * tree-optimize.c (tree_rest_of_compilation): Don't clear decl rtls
+ for deferred nested inlines.
+
+2004-07-17 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * libgcc2.c (__enable_execute_stack): New symbol.
+ * libgcc-std.ver (GCC_3.4.2): New version. Inherit from GCC_3.4
+ and declare __enable_execute_stack.
+ * mklibgcc.in (lib2funcs): Add _enable_execute_stack.
+ * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): ANSIfy.
+ * config/sol2.h (TRANSFER_FROM_TRAMPOLINE): Rename into
+ ENABLE_EXECUTE_STACK and ANSIfy.
+ * config/alpha/alpha.c (alpha_initialize_trampoline): Conditionalize
+ on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
+ * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Rename into
+ ENABLE_EXECUTE_STACK.
+ * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
+ * config/i386/i386.c (x86_initialize_trampoline): Conditionalize
+ on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
+ * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Rename into
+ ENABLE_EXECUTE_STACK.
+ * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
+ * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
+ * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
+ * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
+ * config/sparc/sparc.c (sparc_initialize_trampoline): Conditionalize
+ on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
+ (sparc64_initialize_trampoline): Likewise.
+ * doc/tm.texi (trampolines): Add ENABLE_EXECUTE_STACK macro.
+
+2004-07-16 Andris Pavenis <pavenis@latnet.lv>
+
+ PR preprocessor/16366
+ * internal.h (struct cpp_reader): New field dir_hash.
+ * files.c (make_cpp_dir): Use dir_hash, not file_hash.
+ (_cpp_init_files, _cpp_cleanup_files): Update for new field.
+
+2004-07-15 James E Wilson <wilson@specifixinc.com>
- PR optimization/10339
- * builtins.c (expand_builtin_strcmp): Try to emit cmpstrsi insn
- directly instead of unsafely transforming call into a memcmp.
- (expand_builtin_strncmp): Likewise.
-
-2003-11-03 Alexander Kabaev <ak03@gte.com>
-
- * real.c (encode_ieee_single): Ensure proper promotion.
-
-2003-11-04 H.J. Lu <hongjiu.lu@intel.com>
-
- Backport from 3.4-branch
-
- 2003-07-13 Andreas Jaeger <aj@suse.de>
-
- * config.gcc: Add pmmintrin.h for x86_64-*-*.
-
- 2003-06-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*.
-
- * config/i386/i386.c (override_options): Turn on MASK_SSE2
- for -mpni.
- (bdesc_2arg): Add PNI builtins with 2 args.
- (bdesc_1arg): Add PNI builtins with 1 arg.
- (ix86_init_mmx_sse_builtins): Handle PNI builtins.
- (ix86_expand_builtin): Likewise.
-
- * config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A,
- MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT,
- MASK_TLS_DIRECT_SEG_REFS): Renumbered.
- (TARGET_PNI): New.
- (TARGET_SWITCHES): Add -mpni and -mno-pni.
- (TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI.
- (ix86_builtins): Add PNI builtins.
- (config/i386/i386.md): Add PNI patterns.
-
- * config/i386/pmmintrin.h: New file.
-
- * config/i386/i386.c (override_options): Turn on MASK_SSE for
- -msse2.
- (MASK_SSE1): Removed.
- (MASK_SSE164): Removed.
- (MASK_SSE264): Removed.
- (bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace
- MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264
- with MASK_SSE2 | MASK_64BIT.
- (bdesc_1arg): Likewise.
- (ix86_init_mmx_sse_builtins): Likewise.
-
- * config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2.
-
- 2003-06-20 H.J. Lu <hongjiu.lu@intel.com>
-
- * doc/extend.texi: Document new builtin functions for Intel
- Prescott New Intrunctions.
-
- * doc/invoke.texi: Document new command-line options, -mpni and
- -mno-pni, for Intel Prescott New Intrunctions.
-
- 2003-06-05 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc (extra_headers): Add emmintrin.h for i[34567]86-*-*
- and x86_64-*-*.
-
- * config/i386/mmintrin.h: Update version and add alternate
- intrinsic names.
- * config/i386/xmmintrin.h: Likewise.
-
- * config/i386/xmmintrin.h: Include <emmintrin.h>. Move SSE2
- intrinsics to ...
- * config/i386/emmintrin.h: Here. New file.
-
-2003-11-04 H.J. Lu <hongjiu.lu@intel.com>
-
- Backport from 3.4-branch
- 2003-04-25 H.J. Lu <hjl@gnu.org>
-
- * config/ia64/ia64.c (ia64_expand_compare_and_swap): Add rmode
- for return mode.
- (ia64_expand_builtin): Set rmode to SImode for
- IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_SI,
- IA64_BUILTIN_VAL_COMPARE_AND_SWAP_SI and
- IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_DI. Set remode to DImode
- for IA64_BUILTIN_VAL_COMPARE_AND_SWAP_DI.
-
- 2003-04-24 H.J. Lu <hjl@gnu.org>
-
- * config/ia64/ia64.c (ia64_init_builtins): Add si_ftype_pdi_di_di
- for __sync_bool_compare_and_swap_di for int return type.
-
- * config/ia64/ia64intrin.h (__sync_bool_compare_and_swap_di):
- Change return type to int.
- (__sync_bool_compare_and_swap): Likewise.
-
-2003-11-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner,
- and Andrew Pinski.
-
-2003-11-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (stdio_va_list): Allow tab before va_list.
- Merge two substitutions.
- * fixinc/fixincl.x: Regenerate.
- Fixes PR bootstrap/12666.
-
-2003-10-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- PR target/11598
- PR libgcj/10610
- * config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.
-
-2003-10-27 Falk Hueffner <falk@debian.org>
-
- PR target/12654
- * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do
- comparison against constant by adjusting the argument except for
- EQ and NE.
-
-2003-10-26 Ottavio Campana <ottavio@campana.vi.it>
-
- PR target/12690
- * config/i386/mmintrin.h (_mm_set1_pi8): Fix comment.
-
-2003-10-25 Bruce Korb <bkorb@gnu.org>
-
- * gcc/fixinc/tests/base/ansi/string.h:
- This fixes a result from a broken sed or a hand-edited output file.
- The '__GNUC__' wrappers were misplaced.
-
-2003-10-25 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12712
- * reg-stack.c (convert_regs_1): Create an arbitrary input stack
- if the block has no predecessors.
- (convert_regs_2): Document the problem with successors whose
- only predecessor is the block to be processed.
- (convert_regs): Don't create the arbitrary input stack here.
-
-2003-10-22 David Taylor <dtaylor@emc.com>
-
- PR debug/12500
- * dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P.
-
-2003-10-20 Zack Weinberg <zack@codesourcery.com>
-
- * fixinc/inclhack.def (hpux11_snprintf): New edit.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/stdio.h: Add test for hpux11_snprintf.
-
-2003-05-16 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/unwind-ia64.c (uw_update_reg_address): Handle
- .save XX, r0.
-
-2003-10-19 Mark Mitchell <mark@codesourcery.com>
-
- * doc/include/gcc-common.texi: Bump version number.
- * version.c (version_string): Reset to prerelease format.
-
-2003-10-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/extend.texi: Fix typos.
-
-2003-10-16 Release Manager
-
- * GCC 3.3.2 Released.
-
-2003-10-14 Jason Merrill <jason@redhat.com>
-
- PR c/11885
- * stor-layout.c (update_alignment_for_field): Packed non-bit-fields
- get byte alignment.
-
-2003-10-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (alpha_pthread_gcc): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New
- testcase.
- Fixes PR bootstrap/9330.
-
-2003-10-14 Steven Bosscher <steven@gcc.gnu.org>
-
- PR target/11087
- Backport from gcc-3_3-rhl-branch and mainline.
-
- 2003-07-17 Jakub Jelinek <jakub@redhat.com>
-
- * loop.c (basic_induction_var): Check if convert_modes
- emitted any instructions. Remove them and return 0 if so.
-
-2003-10-13 Matt Kraai <kraai@alumni.cmu.edu>
-
- PR target/11949
Backport from mainline:
+ 2004-02-19 Steve Ellcey <sje@cup.hp.com>
+ * config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
+ * testsuite/gcc.dg/20040219-1.c: New test.
- 2003-05-05 Aldy Hernandez <aldyh@redhat.com>
+2004-07-15 Aldy Hernandez <aldyh@redhat.com>
- * testsuite/gcc.c-torture/compile/simd-6.c: New.
- * c-typeck.c (digest_init): Handle arrays of vector constants.
+ * config/rs6000/rs6000.md ("*cceq_ior_compare"): Allow
+ unconditionally.
+ * config/rs6000/spe.md ("e500_cceq_ior_compare"): Remove.
-2003-10-11 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-14 James E Wilson <wilson@specifixinc.com>
- PR optimization/12544
- * function.c (put_var_into_stack): Don't generate ADDRESSOFs
- for DECL_NONLOCAL decls.
+ PR target/16325
+ * config/mips/mips.h (STARTING_FRAME_OFFSET): When flag_profile_value
+ and ! TARGET_64BIT, include REG_PARM_STACK_SPACE.
-2003-10-09 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-14 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR optimization/12510
Backport from mainline:
+ 2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr>
- 2003-09-08 Jakub Jelinek <jakub@redhat.com>
-
- * toplev.c (rest_of_compilation): Call split_all_insns before
- regstack if optimizing but not scheduling after reload.
-
-2003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (stdio_va_list): Removed _ap fix.
- (irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21
- introduced some multi-line prototypes.
- * fixinc/fixincl.x: Regenerate.
- Fixes PR libf2c/12263.
-
-2003-10-08 Timo Kokkonen <tjko@iki.fi>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR bootstrap/12490
- * scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
- to define the size of the extern_C_braces array. Set it to 200.
- (scan_decls): Abort when extern_C_braces_length is out-of-bounds.
-
-2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/13926
+ * config/sparc/sparc-protos.h (output_ubranch): New prototype.
+ * config/sparc/sparc.c (output_ubranch): New function.
+ * config/sparc/sparc.md (jump pattern): Use it.
- PR optimization/12215
- * cse.c (cse_set_around_loop): Emit the move at the beginning
- of the next basic block for trapping sets.
+2004-07-13 Richard Sandiford <rsandifo@redhat.com>
-2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR rtl-optimization/16380
+ * loop.c (check_dbra_loop): Sink comparison instructions if they
+ do something other than set cc0.
- PR optimization/11637
- * combine.c (adjust_for_new_dest): New function to adjust the
- notes and LOG_LINKS when the dest of an insn has changed.
- (try_combine): Use it when deleting the first insn of a two-insn
- parallel or splitting a two-load parallel.
+2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-10-04 Stephane Carrez <stcarrez@nerim.fr>
+ PR target/16494
+ * config/sparc/sparc.c (output_cbranch): Properly guard
+ the code handling far branches with TARGET_V9.
+ * config/sparc/sparc.md (length attribute): Document the
+ side-effect of having a length greater or equal to 3.
- * config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is
- identical to m68hc12 as far as libraries are concerned.
+2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Lloyd Parkes <lloyd@must-have-coffee.gen.nz>
-2003-10-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/15186
+ * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC_BASE): Pass
+ /usr/ucblib/sparcv9 as -R path when -compat-bsd is specified.
- PR c/12446
- * c-typeck.c (convert_for_assignment): Issue an error for
- array to pointer assignment after default conversion.
- (digest_init): Likewise.
+2004-07-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Martin Sebor <sebor@roguewave.com>
-2003-10-03 Gerald Pfeifer <gerald@pfeifer.com>
+ PR target/12602
+ * doc/invoke.texi (SPARC options): Document -threads
+ and -pthreads on Solaris.
- * doc/extend.texi (Function Attributes): Fix title of GNU C
- Preprocessor manual.
- (C++ Extensions): Fix reference to "Predefined Macros" in the
- GNU C Preprocessor manual.
+2004-07-13 Anthony Heading <aheading@jpmorgan.com>
-2003-10-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR/11883
- * cfgloop.c (flow_loops_find): Fix handling of abnormal edges.
-
-2003-10-02 Mark Mitchell <mark@codesourcery.com>
-
- PR optimization/12180
- * c-objc-common.c (inline_forbidden_p): Do not permit inlining of
- functions containing calls to __builtin_next_arg.
-
-2003-10-02 Josef Zlomek <zlomekj@suse.cz>
-
- PR/12292
- * combine.c (make_field_assignment): Check whether rtx's code
- is CONST_INT before using INTVAL.
-
-2003-10-02 Josef Zlomek <zlomekj@suse.cz>
-
- Waldek Hebisch <hebisch@math.uni.wroc.pl>
- PR/12072
- * varasm.c (compare_constant): Fix thinko.
-
-2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist.
+ * configure.ac (gcc_cv_as_offsetable_lo10): Fix a typo.
* configure: Rebuilt.
-2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-07-12 Vladimir Makarov <vmakarov@redhat.com>
- * aclocal.m4: Add ultrix* to /dev/zero blacklist.
- * configure: Rebuilt.
+ PR target/16445
+ * config/ia64/ia64.c (bundling): Don't count ignored insns.
-2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-07-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like
- Solaris 7-9.
+ * pa.c (output_indirect_call): Only use %r2 as the link register in
+ indirect calls with the long PA 2.0 pc-relative branch.
- * fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by
- wildcards which explicitly match micro versions.
- * fixinc/fixincl.x: Regenerate.
-
-2003-10-01 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor
- DWARF_ALT_FRAME_RETURN_COLUMN.
- * unwind-dw2.c (dwarf_reg_size_table): Expand by one.
- (_Unwind_GetGR, _Unwind_SetGR): Validate lookup column.
- (uw_frame_state_for): Return end-of-stack for null return address.
-
- * config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return.
- (alpha_expand_prologue): Store a zero for it.
- (alpha_expand_epilogue): Don't reload it.
- * config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New.
- * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64
- for the sigframe return address.
-
-2003-10-01 Nick Clifton <nickc@redhat.com>
-
- * Import this patch from mainline:
-
- 2003-02-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * collect2.c (pexecute_pid): Rename to pid.
- (collect_wait, collect_execute, scan_prog_file, scan_libraries): Use
- pid.
-
-2003-09-23 David S. Miller <davem@redhat.com>
-
- * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine
- before redefining.
- * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
-
-2003-10-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-10 James E Wilson <wilson@specifixinc.com>
- PR optimization/11753
- * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to
- the length in the non-V9 case.
+ * config/gofast.h (gofast_maybe_init_libfuncs): Use SImode for litodp.
-2003-09-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-10 Jakub Jelinek <jakub@redhat.com>
- PR optimization/12340
- * loop.h (struct induction): Document the new semantics
- of the 'same' field for bivs.
- * unroll.c (biv_total_increment): Don't count the same
- biv increment several times.
- (loop_iterations) [GENERAL_INDUCT]: Likewise.
+ * Backport from mainline:
+ 2004-07-08 Paolo Bonzini <bonzini@gnu.org>
+ Jakub Jelinek <jakub@redhat.com>
-2003-09-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ * config/i386/i386.c (override_options): Enable
+ SSE prefetches with -mtune, as long as we are
+ compiling for i686 or higher. All i686 processors
+ accept SSE prefetches as NOPS, some i586's don't.
- PR bootstrap/12358
- * pa.c (output_bvb): Fix typo.
+ 2004-07-07 Jakub Jelinek <jakub@redhat.com>
-2003-09-24 Alexandre Oliva <aoliva@redhat.com>
+ * config/i386/i386.c (override_options): Don't set x86_prefetch_sse
+ from -mtune= option.
- * cpplib.c (do_pragma): Reintroduce cb_line_change call in the
- code path that calls a handler.
+2004-07-10 Jakub Jelinek <jakub@redhat.com>
-2003-09-23 Geoffrey Keating <geoffk@apple.com>
+ PR tree-optimization/16372
+ * fold-const.c (build_range_check): Use TYPE_MODE's precision for
+ enumerals.
- * config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies.
+2004-07-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't
- pass zero-size arrays by reference.
- (rs6000_va_arg): Likewise.
+ PR target/16459
+ * pa.c (output_indirect_call): Use %r2 as the link register when
+ calling $$dyncall with a pc-relative branch.
-2003-09-22 Joel Sherrill <joel@oarcorp.com>
+2004-07-08 Gerald Pfeifer <gerald@pfeifer.com>
- * combine.c, config/mips/t-elf, config/c4x/rtems.h: Revert patches
- which should not have been committed with other RTEMS changes.
+ * doc/install.texi (Binaries): Mention OpenPKG.
-2003-09-22 Olivier Hainque <hainque@act-europe.fr>
+2004-07-09 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR target/9786
- * reg-stack.c (convert_regs_1): Purge possible dead eh edges
- after potential deletion of trapping insn. Avoids later ICE
- from call to fixup_abnormal_edges.
- (convert_regs_2): Stack the current block successors before
- processing this block, that is, before the potential deletion of
- dead edges by convert_regs_1, because these edges have been used
- to initialize the predecessors count.
+ PR target/16416
+ * config/sparc/sol2-bi.h (OPTION_DEFAULT_SPECS): New macro.
+ Override default settings to account for -m32 and -m64.
-2003-09-21 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-08 Vladimir Makarov <vmakarov@redhat.com>
- PR target/12301
- * reorg.c (stop_search_p): Return 1 for insns that can
- throw internally.
+ PR target/16414
+ * config/ia64/ia64.c (ia64_dfa_new_cycle): Fix typo in comparison
+ of asm_noperands result.
-2003-09-19 Joel Sherrill <joel@oarcorp.com>
+2004-07-08 Eric Botcazou <ebotcazou@libertysurf.fr>
- * config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to
- 68881.
+ PR target/16430
+ * config/sparc/sparc.c (function_value): In 64-bit mode,
+ return the aggregates larger than 16 bytes like unions.
-2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/m68k/t-rtems (m68k-*-rtems*): New.
- * config.gcc: Use config/m68k/t-rtems.
-
-2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/mips/t-rtems: New.
- * config.gcc (mips*-*-rtems*): Use config/mips/t-rtems.
-
-2003-09-19 T. Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12166
- * config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1.
-
-2003-09-18 Mark Mitchell <mark@codesourcery.com>
-
- PR target/11184
- * builtins.c (expand_builtin_apply): Use convert_memory_address
- before returning the value.
-
-2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (gcc_cv_as_hidden): Only disable if no GNU ld
- detected.
- * configure: Regenerate.
- Fixes PR target/12248.
+2004-07-08 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-09-17 Richard Henderson <rth@redhat.com>
+ PR target/16199
+ * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): When
+ 'temp' is zero, generate new pseudos as needed and emit the
+ sequence of insns in single-assignment form. Resync comments
+ with code.
+ (sparc_emit_set_const64): Pass zero as 'temp' argument to above
+ function before reload.
- * config/alpha/alpha.c (alpha_expand_mov): Do gen_movdi_er_maybe_g
- always during initial code generation.
- * config/alpha/alpha.md (movdi_er_maybe_g): Don't conditionalize
- on flag_inline_functions.
+2004-07-07 Richard Sandiford <rsandifo@redhat.com>
-2003-09-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/16407
+ * config/mips/mips-protos.h (mips_declare_common_object): Declare.
+ * config/mips/mips.c (mips_declare_common_object): New function,
+ mostly split out from...
+ (mips_output_aligned_decl_common): ...here.
+ * config/mips/mips.h (ASM_OUTPUT_LOCAL): Remove in favor of...
+ (ASM_OUTPUT_ALIGNED_LOCAL): ...this new definition.
+ * config/mips/iris6.h (ASM_OUTPUT_ALIGNED_LOCAL): Undefine this
+ rather than ASM_OUTPUT_LOCAL. Call mips_declare_common_object.
- PR optimization/11646
- * cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the
- EDGE_ABNORMAL flag for EH edges.
- * toplev.c (rest_of_compilation): Delete unreachable blocks
- if dead edges were purged after the first CSE pass.
+2004-07-07 Jason Merrill <jason@redhat.com>
-2003-09-16 Jakub Jelinek <jakub@redhat.com>
+ PR c++/15815
+ * doc/extend.texi (C++ Interface): Correct information and
+ discourage use.
- * config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+2004-07-07 Andreas Schwab <schwab@suse.de>
-2003-09-15 Alexandre Oliva <aoliva@redhat.com>
+ * config/ia64/ia64.md: Define new attribute "empty".
+ (prologue_use, nop_x, insn_group_barrier): Set it.
- * cpplib.c (do_pragma): Remove unnecessary cb_line_change.
+ * config/ia64/ia64.c (ia64_reorg): When looking for trailing call
+ skip over "empty" insns.
-2003-09-14 Alexandre Oliva <aoliva@redhat.com>
+2004-07-07 Vladimir Makarov <vmakarov@redhat.com>
- * cppmain.c (cb_line_change): Revert 2003-08-04's change.
- * c-lex.c (cb_line_change): Skip line changing whenever
- cppmain.c would.
+ PR target/16130
+ PR target/16142
+ PR target/16143
+ * config/ia64/ia64.c (ia64_dfa_new_cycle): Reset DFA state for asm
+ insn.
-2003-09-11 Alexandre Oliva <aoliva@redhat.com>
+2004-07-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
- PR fortran/11522
- * dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function
- for ultimate origin even if block is abstract.
-
-2003-09-10 Martin Husemann <martin@duskware.de>
-
- PR target/11965
- * config/sparc/sparc.c (sparc_v8plus_shift): Protect against
- constants greater than 63.
- * config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
- against constants greater than 31.
- (*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
- constants greater than 63.
-
-2003-09-09 Richard Henderson <rth@redhat.com>
-
- PR target/12224:
- * config/ia64/ia64.c (ia64_expand_move): Properly truncate
- result when op0 is SImode.
+ PR target/1679.
+ * config/m32r/m32r.c (m32r_function_symbol): New function:
+ Generate a symbol name RTX with the correct m32r specific flags
+ set.
+ (block_move_call): Use new function to generate correct symbol.
+ * config/m32r/m32r-protos.h: Add prototype for new funcion.
+ * config/m32r/m32r.h (INITIALIZE_TRAMPOLINE): Use the new
+ function.
-2003-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-07-07 Richard Sandiford <rsandifo@redhat.com>
- * configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if
- assembler supports Sun syntax for cmov.
- * configure: Regenerate.
- * config.in: Li{ewise.
- * config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to
- HAVE_AS_IX86_CMOV_SUN_SYNTAX.
- * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove.
- Fixes PR target/12101.
+ PR target/16357
+ * config/mips/mips.c (mips_block_move_straight): Pass BLKmode memrefs
+ to mips_expand_unaligned_load, mips_expand_unaligned_store, and
+ move_by_pieces.
-2003-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-07-07 Richard Sandiford <rsandifo@redhat.com>
- * configure.in (gcc_cv_as_hidden): Disable unless using GNU ld.
- * configure: Regenerate.
+ PR target/15869
+ * config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow.
-2003-09-08 Mark Mitchell <mark@codesourcery.com>
+2004-07-06 Mark Mitchell <mark@codesourcery.com>
- * mklibgcc.in (libcc.a): Depend on stmp-dirs.
- (libgov.a): Likewise.
- (libgcc_eh.a): Likewise.
+ * doc/include/gcc-common.texi: Increment version number.
+ * version.c (version_string): Likewise.
-2003-09-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-07-06 Joseph S. Myers <jsm@polyomino.org.uk>
- PR target/11689
- * config/i386/i386.c (memory_address_length): Fix computation when
- the base is esp or ebp.
+ * doc/sourcebuild.texi: Use semicolons instead of commas in
+ section title.
-2003-09-07 Mark Mitchell <mark@codesourcery.com>
+2004-07-06 Joseph S. Myers <jsm@polyomino.org.uk>
- PR c++/11852
- * varasm.c (initializer_constant_valid_p): Correct logic for
- CONSTRUCTORs.
+ * doc/bugreport.texi, doc/configterms.texi, doc/contrib.texi,
+ doc/contribute.texi, doc/cpp.texi, doc/cppinternals.texi,
+ doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
+ doc/portability.texi, doc/trouble.texi: Avoid some first-person
+ references and patronizing comments. Based on printed manual.
+ * doc/invoke.texi: Don't reference fortran@gnu.org.
+ * doc/trouble.texi (Warning when a non-void function value is
+ ignored): Rewrite. From Russ Allbery and Chris Devers.
-Sun Sep 7 14:53:36 CEST 2003 Jan Hubicka <jh@suse.cz>
+2004-07-06 Joseph S. Myers <jsm@polyomino.org.uk>
- * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
+ * doc/cppinternals.texi, doc/install.texi, doc/invoke.texi,
+ doc/md.texi, doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi:
+ Use terminology "testsuite" and "enumerated".
-2003-09-07 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
+2004-07-06 Eric Christopher <echristo@redhat.com>
- PR optimization/11662
+ PR rtl-optimization/14700
Backport from mainline:
+ 2004-06-30 Zack Weinberg <zack@codesourcery.com>
+ * combine.c (distribute_notes): Don't look at global_regs for
+ pseudos.
- 2003-07-10 Denis Chertykov <denisc@overta.ru>
- Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (gen_binary): Handle the CLOBBER rtx and
- don't build a binary operation with it.
-
-Sat Sep 6 23:16:35 CEST 2003 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
-
- PR target/12070
- * calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.
-
- PR opt/12082
- * cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.
-
-2003-09-06 Steven Bosscher <steven@gcc.gnu.org>
-
- PR c/9862
- * c-decl.c (c_expand_body): Move return warning from here...
- (finish_function): ...to here.
-
-2003-09-05 Jan Hubicka <jh@suse.cz>
-
- PR target/8869
- * expr.c (convert_modes): Deal properly with integer to vector
- constant conversion.
-
-2003-09-05 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c/10962
- * c-decl.c (field_decl_cmp): Add back function.
- (finish_struct): Sort fields if number greater than 15
- and no anymous structs/unions.
-
-2003-09-04 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.
- * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function.
- * unwind.h (_Unwind_GetBSP): New prototype.
- * libgcc-std.ver: Add empty GCC_3.3.2 version.
- * mkmap-symver.awk: For symbol versions with no exported symbols,
- don't put anything into version script, just change all symbol
- versions which inherit from it to inherit from its ancestor.
-
-2003-09-02 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- This is a fix for PR 10988:
- * m32r.c (m32r_print_operand): Correct comment.
- (m32r_expand_block_move): Correct the handling of leftover/small
- blocks.
- (m32r_block_small_immediate_operand): New predicate.
- * m32r.md (movstrsi_small_internal): New pattern.
- * m32r.h (PREDICATE_CODES): Add m32r_block_small_immediate_operand.
- * m32r-protos.h: Add prototype for m32r_block_small_immediate_operand.
-
-2003-08-25 Richard Henderson <rth@redhat.com>
-
- * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true
- for 16-byte vector modes if sse not enabled; warn for abi change.
- (ix86_value_regno): Only return xmm0 for 16-byte vector types.
-
-2003-08-25 Zack Weinberg <zack@codesourcery.com>
-
- * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
- commented-out logic to use DCE threads (if present), add
- support for POSIX threads.
- * config/ia64/hpux.h: Define CPP_SPEC to set appropriate
- #defines for -pthread. Add -lpthread to LIB_SPEC when
- -pthread. In both cases take -mt as a synonym for -pthread
- for acc compatibility.
- Define GTHREAD_USE_WEAK to 0.
- * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
- Remove old logic for DCE threads from LIB_SPEC.
- * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
-
-2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.
-
-2003-08-23 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (pushdecl): Only put decls which finish_struct will do
- something about onto incomplete chain.
- (finish_struct): If not removing type from incomplete
- list, update prev.
-
-2003-08-23 Alexandre Oliva <aoliva@redhat.com>
-
- * cppmain.c (cb_line_change): Don't skip line changing while
- parsing macro arguments in the top-level context.
-
-2003-08-22 Mark Mitchell <mark@codesourcery.com>
-
- * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.
-
- * config/ia64/ia64.c (ia64_output_mi_thunk): Support ILP32 mode.
-
-2003-08-21 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/11805
- * config/h8300/h8300.md (two anonymous patterns): Remove.
-
-2003-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * stmt.c (expand_asm_operands): Avoid string concatenation.
- * tree.c (default_flag_random_seed): Avoid ISO C definition.
- * varasm.c (output_constant_def): Delete unused variable.
-
-2003-08-18 Matt Kraai <kraai@alumni.cmu.edu>
-
- PR c/11207
- * c-typeck.c (set_init_index): Check for negative index.
-
-2003-08-14 Mark Mitchell <mark@codesourcery.com>
-
- * version.c (version_string): Use "prerelease" not "experimental".
-
-2003-08-11 James E Wilson <wilson@tuliptree.org>
-
- PR optimization/11319
- PR target/10021
- * alias.c (find_base_value, case REG): Return 0 not src if no base
- found.
-
-2003-08-11 Kean Johnston <jkj@sco.com>
-
- * fixinc/inclhack.def (sco_math): Updated test text and select trigger
- according to bkorb's review.
- * fixinc/inclhack.def (sco_regset): Ditto.
- * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Remove all mach
- lines so that this file is unconditionally replaced.
- * fixinc/inclhack.def (sco_string): Use ansi/string.h as the first file
- to check so that the Ultrix string.h check doesnt overwrite the test
- case with its replacement text.
- * fixinc/fixincl.x: Regenerated
- * fixinc/tests/base/math.h: Updated sco_math result text
- * fixinc/tests/base/ansi/string.h: New file.
- * fixinc/tests/base/sys/regset.h: Compacted result text to fewer lines.
-
-2003-08-11 Dale Johannesen <dalej@apple.com>
- * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable handling of
- decrement-and-branch farther away than 32 bits.
-
-2003-08-10 Zack Weinberg <zack@codesourcery.com>
-
- Backport the following changes from mainline:
-
- 2003-05-08 David Mosberger <davidm@hpl.hp.com>
-
- * unwind-libunwind.c (_Unwind_FindEnclosingFunction): New.
-
- 2003-04-03 Richard Henderson <rth@redhat.com>
-
- * unwind-libunwind.c (_Unwind_GetCFA): New.
-
- 2003-03-27 David Mosberger <davidm@hpl.hp.com>
-
- * unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind
- v0.9 API change: replace read of UNW_REG_HANDLER with
- unw_get_proc_info().
- (_Unwind_GetLanguageSpecificData): Replace read of UNW_REG_LSDA
- with unw_get_proc_info().
- (_Unwind_GetRegionStart): Replace UNW_REG_PROC_START with
- unw_get_proc_info().
-
- 2003-03-13 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * unwind-libunwind.c: Replace "GNU CC" with "GCC".
-
- 2002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
-
- * config/t-libunwind: Mention unwind-sjlj.c.
- * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
- to #ifndef __USING_SJLJ_EXCEPTIONS__.
-
- * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
- before inclusion of config.gcc, but after configuring the compiler etc.
- Determine default value for --enable-libunwind-exceptions based on
- whether the host has a libunwind library (not guaranteed to be correct,
- but it's a reasonable first guess and can always be overridden with an
- explicit --enable/disable-libunwind-exceptions.
- * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
- tmake_file when $use_libunwind_exceptions is enabled.
- * Makefile.in: Update comment: LIB2ADDEH is updated not just by
- ia64 (e.g., config/t-linux also updates it).
- * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
- along with the shared version of libgcc since the latter requires
- the former.
-
- * unwind-libunwind.c: New file.
- * config/t-libunwind: Ditto.
-
-2003-08-10 Richard Henderson <rth@redhat.com>
-
- PR target/11693
- * config/ia64/ia64.c (ia64_emit_nops): Skip L slots when
- padding before inline assembly.
-
-2003-08-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR c++/11712
- * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
- __STDC_EXT__ when using C++ dialect.
-
-2003-08-08 Kean Johnston <jkj@sco.com>
-
- PR target/9877
- PR target/8336
- * config.gcc (sco3.2v5*): Use elfos.h and dbxelf.h in tm_file;
- Eliminate need for t-sco5gas target fragment.
- No longer build crt{begin,end}S.o, that were used for COFF support.
- * tlink.c (recompile_files): Add missing = in putenv() calls.
- * unwind-dw2.c (_Unwind_GetCFA): Correct return cast.
- * config/i386/sco5.h: Major overhaul to remove all COFF support
- * config/i386/t-sco5: Multilib for PIC support
- * config/i386/t-sco5gas: Remove
- * config/i386/i386.c: Check value as well as presence of
- SUPPORTS_ONE_ONLY
- * doc/install.texi: Update for modern SCO instructions
- * fixinc/check.tpl: Allow user to specify diff program for make check
- * fixinc/inclhack.def: Fix several SCO header files, namely string.h,
- math.h, sys/byteorder.h and sys/regset.h.
- * fixinc/fixincl.x: Regenerate
- * fixinc/tests/base/math.h: Update
- * fixinc/tests/base/sys/byteorder.h: Update
- * fixinc/tests/base/string.h: Added
- * fixinc/tests/base/sys/regset.h: Added
- * testsuite/gcc.dg/nest.c: Allow failure on SCO (-pg not supported)
-
-2003-08-08 Roger Sayle <roger@eyesopen.com>
-
- PR c/11370
- * calls.c (emit_call_1): Don't bother popping the arguments off of
- the stack after a noreturn function call; The adjustment is dead.
- (expand_call): Likewise.
-
-2003-08-08 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
-
- * config.gcc: Do not override sh/t-linux with sh/t-le.
-
-2003-08-08 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
- (LIB_SPEC): Set -lpthread always when -pthread set. Set -lieee
- when -mieee-fp set and -shared not set.
-
-2003-08-08 Richard Henderson <rth@redhat.com>
-
- PR target/11535
- * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
- RETURN_ADDRESS_POINTER_REGNUM.
- (ia64_expand_prologue): Don't frob it.
- (ia64_output_function_epilogue): Likewise.
- (ia64_return_addr_rtx): New.
- (ia64_split_return_addr_rtx): New.
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
- (RETURN_ADDRESS_POINTER_REGNUM): Remove.
- (GENERAL_REGNO_P): Don't check it.
- (AR_*_REGNUM): Renumber.
- (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
- (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
- (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
- (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
- (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
- * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
- (movdi_ret_addr): New.
-
-2003-08-03 Geoffrey Keating <geoffk@apple.com>
-
- PR 11709
- * varasm.c (output_constant_def_contents): Use
- ASM_DECLARE_CONSTANT_NAME if defined.
- * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
- * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
- objects get at least one byte to prevent assembler problems.
- (ASM_DECLARE_CONSTANT_NAME): New.
-
-2003-08-07 Mark Mitchell <mark@codesourcery.com>
-
- * version.c (version_string): Reset to prerelease.
- * doc/include/gcc-common.texi: Update version.
-
-2003-08-04 Release Manager
-
- * GCC 3.3.1 Released.
-
-2003-08-04 Release Manager
-
- * GCC 3.3.1 Released.
-
-2003-08-03 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/11534
- * cppexp.c (parse_defined): Warn only if -pedantic.
-
-2003-08-03 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (ORDINARY_FLAGS_TO_PASS): Pass AR.
-
- * Makefile.in (STAGE2_FLAGS_TO_PASS): Pass AR_FOR_TARGET and
- RANLIB_FOR_TARGET.
- (stage1_build): Likewise.
-
-2003-08-03 Jan Hubicka <jh@suse.cz>
-
- PR 10510
- * config/pa/pa.h (MAYBE_FP_REG_CLASS_P): New.
- (SECONDARY_MEMORY_NEEDED): Use it.
-
-2003-08-01 Geoffrey Keating <geoffk@apple.com>
-
- PR 11709 (partial fix)
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
- insert a label at the end of an function under Mach-O.
-
- PR 11313
- * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
- when it's not needed.
-
-2003-07-29 Richard Henderson <rth@redhat.com>
-
- PR target/10681
-
- 2003-06-27 J"orn Rennecke <joern.rennecke@superh.com>
- * flow.c (propagate_one_insn): Use proper test for a register
- being part of the return value.
-
- 2003-06-26 Richard Henderson <rth@redhat.com>
- * flow.c (propagate_one_insn): Preserve live-at-end registers
- across tail calls.
-
- 2003-06-26 Richard Henderson <rth@redhat.com>
- * config/ia64/ia64.c (ia64_expand_call): Don't add ar.pfs for sibcalls.
- (ia64_split_call): Only load descriptor for GP register inputs.
- (ia64_expand_epilogue): Check current_frame_info.mask not
- current_function_is_leaf to restore ar.pfs.
-
-2003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Testing): Adjust required versions of DejaGnu.
-
-2003-07-24 Aldy Hernandez <aldyh@redhat.com>
+ 2004-06-24 Eric Christopher <echristo@redhat.com>
+ * combine.c (distribute_notes): Don't delete sets to
+ global register variables.
- Backport the folling patch.
+2004-07-04 Gerald Pfeifer <gerald@pfeifer.com>
- 2003-04-01 Aldy Hernandez <aldyh@redhat.com>
+ * doc/contrib.texi (Contributors): Adjust link for GNU Classpath.
- PR/8878
- * expr.c (expand_expr): Handle VECTOR_CST.
- (const_vector_from_tree): New.
+2004-07-01 Release Manager
- * varasm.c (output_constant): Handle VECTOR_CST.
+ * GCC 3.4.1 released.
- * c-typeck.c (digest_init): Build a vector constant from a
- VECTOR_TYPE.
+2004-06-28 Neil Booth <neil@duron.akihabara.co.uk>
-2003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ PR preprocessor/16192
+ PR preprocessor/15913
+ PR preprocessor/15572
+ * cppexp.c (_cpp_parse_expr): Handle remaining cases where an
+ expression is missing.
+ * cppinit.c (post_options): Traditional cpp doesn't do // comments.
+ * doc/cpp.texi: Don't document what we do for ill-formed expressions.
+ * doc/cppopts.texi: Clarify processing of command-line defines.
- PR target/11607 and PR target/11516
- * pa.md (extzv, extv, insv): Revert latter half of last patch.
+2004-06-28 Richard Sandiford <rsandifo@redhat.com>
-2003-07-23 Mark Mitchell <mark@codesourcery.com>
+ PR target/16176
+ * config/mips/mips.c (mips_expand_unaligned_load): Use a temporary
+ register for the destination of the lwl or ldl.
- PR optimization/10679
- * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
+2004-06-25 Philip Blundell <philb@gnu.org>
-2003-07-22 Bob Wilson <bob.wilson@acm.org>
+ PR wrong-code/15089
+ * loop.c (scan_loop): Do not move user-specified register
+ assignments.
- * unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define.
+2004-06-25 Mark Mitchell <mark@codesourcery.com>
-2003-07-23 Dave Fluri <dave.fluri@onlink.net>
+ PR wrong-code/16129
+ * alias.c (get_alias_set): Adjust setting of
+ DECL_POINTER_ALIAS_SET for pointers to aggregates.
- * doc/extend.texi: Fixes to spelling, grammar, and diction.
+2004-06-25 Richard Sandiford <rsandifo@redhat.com>
-2003-07-21 H.J. Lu <hongjiu.lu@intel.com>
+ PR target/16144
+ * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
+ is 1.0; force it into a register instead.
- PR optimization/11599
- * config/ia64/ia64.md (prefetch): Support predicate.
+2004-06-24 Alan Modra <amodra@bigpond.net.au>
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+ * calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
+ pass raw n_named_args to it.
- PR optimization/11536
- * unroll.c (loop_iterations): Do not replace a register holding
- the final value by its equivalent before the loop if it is not
- invariant.
+2004-06-22 Richard Henderson <rth@redhat.com>
-2003-07-21 Ben Elliston <bje@wasabisystems.com>
+ PR middle-end/16026
+ * function.c (assign_parms): Don't abort for overaligned PARALLEL.
- * doc/invoke.texi (V850 Options): Spelling fixes.
+2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
-2003-07-21 Lisa M. Goldstein <opus@gnu.org>
+ PR target/15551
+ * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE.
+ (allocate_stack_worker): Make unspec_volatile.
+ (allocate_stack_worker_rex64): Likewise.
+ (allocate_stack_worker_postreload): Likewise.
+ (allocate_stack_worker_rex64_postreload): Likewise.
- * doc/invoke.texi: Fixes to style, grammar and diction.
+2004-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-07-20 Mark Mitchell <mark@codesourcery.com>
+ PR rtl-optimization/14782
+ * pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing
+ the address checks for secondary reloads for loads from and stores
+ to floating-point registers.
+ * pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes
+ in the address check. Move work around for ELF32 targets to
+ GO_IF_LEGITIMATE_ADDRESS.
+ (GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be
+ correctly aligned for DImode loads and stores. Don't allow long
+ SFmode displacements on ELF32.
- PR debug/11279
- * dwarf2out.c (gen_enumeration_type_die): Remember that
- enumerators can be unsigned.
+2004-06-21 Richard Henderson <rth@redhat.com>
-2003-07-19 Kelley Cook <kelleycook@wideopenwest.com>
+ PR rtl-opt/16114
+ * cse.c (merge_equiv_classes): Also rehash in response to
+ delete_reg_equiv changes.
+ (rehash_using_reg): Don't exclude REGs from rehashing.
- * c-tree.texi: Backport changes from mainline.
- * c-tree.texi: Ditto.
- * collect2.texi: Ditto.
- * cpp.texi: Ditto.
- * cppopts.texi: Ditto.
- * extend.texi: Ditto.
- * fragments.texi: Ditto.
- * headerdirs.texi: Ditto.
- * install.texi: Ditto.
- * invoke.texi: Ditto.
- * md.texi: Ditto.
- * portability.texi: Ditto.
- * rtl.texi: Ditto.
- * sourcebuild.texi: Ditto.
- * trouble.texi: Ditto.
+2004-06-21 Richard Sandiford <rsandifo@redhat.com>
-2003-07-19 Kelley Cook <kelleycook@wideopenwest.com>
+ PR rtl-optimization/15159
+ * tree.c (unsafe_for_reeval): Return 2 for TRY_CATCH_EXPRs.
- PR optimization/4490
- * doc/invoke.texi (m96bit-long-double, m128bit-long-double): Reword
- documentation to accurately reflect what these options do.
+2004-06-19 Richard Henderson <rth@redhat.com>
-2003-07-18 Richard Henderson <rth@redhat.com>
- David S. Miller <davem@redhat.com>
+ PR target/15941
+ * function.c (assign_parms): If not padding upward or intentionally
+ forcing upward padding, take offset_rtx into account when determining
+ the alignment for stack_parm.
- PR target/11556
- * optabs.c (prepare_operand): Fail gracefully instead of abort
- if the predicate doesn't satisfy.
- (gen_cond_trap): Allow prepare_operand to fail.
- Pass correct opnum argument to prepare_operand.
+2004-06-19 Richard Henderson <rth@redhat.com>
-2003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/15550
+ * ifcvt.c (noce_try_move): Recognize all generated instructions.
- PR optimization/11083
- * toplev.c (rest_of_compilation): Delete unreachable blocks
- if dead edges were purged after the addressof pass.
+2004-06-19 Andrew Pinski <pinskia@physics.uc.edu>
-2003-07-17 Mark Mitchell <mark@codesourcery.com>
+ PR target/10129
+ * config/darwin.c (darwin_encode_section_info): When the decl has
+ a DECL_INITIAL, it is only defined also when it is not a common.
- PR optimization/11557
- * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
- unless we know which function is being called.
+2004-06-17 Zack Weinberg <zack@codesourcery.com>
-2003-07-17 Nathanael Nerode <neroden@gcc.gnu.org>
+ Bug 14610
+ * Makefile.in (min-insn-modes.o): Correct dependencies.
+ * real.c (encode_ieee_extended, decode_ieee_extended): Always
+ produce/consume 12-byte little-endian Intel format.
+ (encode_ieee_extended_128, decode_ieee_extended_128): Delete.
+ (encode_ieee_extended_motorola, decode_ieee_extended_motorola)
+ (encode_ieee_extended_intel_96, decode_ieee_extended_intel_96)
+ (encode_ieee_extended_intel_128, decode_ieee_extended_intel_128):
+ New functions which convert between 12-byte little-endian Intel
+ format and the desired format.
+ (ieee_extended_motorola_format, ieee_extended_intel_96_round_53_format)
+ (ieee_extended_intel_96_format, ieee_extended_intel_128_format):
+ Update.
- PR bootstrap/11043
- * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
- "x-crtfini.o" with "crtinit.o", "crtfini.o".
+2004-06-16 James E Wilson <wilson@specifixinc.com>
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR c++/14808
+ * config/i386/cygwin.h (TARGET_IS_PE_COFF): Delete duplicate macro.
- PR other/11466
- * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
- and its restrictions for the SPARC64 port.
+2004-06-16 Bernardo Innocenti <bernie@develer.com>
Backport from mainline:
- 2003-06-13 Florian Weimer <fw@deneb.enyo.de>
-
- * doc/invoke.texi (SPARC Options): Document "-mimpure-text".
+ 2004-06-16 Bernardo Innocenti <bernie@develer.com>
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
- Phil Edwards <phil@jaj.com>
+ PR target/13292
+ * config/m68k/m68k.h (TARGET_SWITCHES): Don't remove MASK_68040_ONLY
+ on -msoft-float.
+ (TARGET_FLT_EVAL_METHOD): Don't advertise extended precision for
+ 68040 and soft-float.
+ * config/m68k/m68k.md (truncdfsf2): Explicitly require TARGET_68881
+ in the TARGET_68040_ONLY case.
- * doc/install.texi (*-*-solaris2*): Document the step-by-step
- procedure to bootstrap and install.
- Document the preference for the legacy Sun tools in /usr/bin
- over the POSIX tools in /usr/xpg4/bin for the build process.
+2004-06-16 Vladimir Makarov <vmakarov@redhat.com>
-2003-07-16 Richard Henderson <rth@redhat.com>
+ PR target/15653
+ * config/ia64/ia64.c (ia64_dfa_new_cycle): Do not insert nops
+ after shifts before asm.
- PR target/10907
- * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
- even with !TARGET_CONST_GP.
- (ia64_function_ok_for_sibcall): Reject non-local functions.
+2004-06-15 Chris Demetriou <cgd@broadcom.com>
-2003-07-15 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.c (machopic_select_section): Use decl_readonly_section
- to do most of the work.
-
-2003-07-15 David S. Miller <davem@redhat.com>
+ * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
+ definition.
+ * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
+ #undef and #if 0'd definition.
- * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
- emit nop if the last real insn is CALL_INSN.
+2004-06-15 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-2003-07-15 Loren James Rittle <ljrittle@acm.org>
+ * config/m32r/m32r.h (RETURN_ADDR_RTX): Define.
+ (INCOMING_RETURN_ADDR_RTX): Define.
+ * config/m32r/m32r-protos.h (m32r_return_addr): Added.
+ * config/m32r/m32r.c (m32r_exppand_prologue): Changed for
+ __builtin_return_address(0).
+ (m32r_return_addr): Added for __builtin_return_address(0).
+ (m32r_reload_lr): Ditto.
- * config/i386/freebsd.h (SET_ASM_OP): Remove.
- (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
- (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
- MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
+ * longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.
-2003-07-15 Mark Mitchell <mark@codesourcery.com>
+2004-06-15 Giovanni Bajo <giovannibajo@gcc.gnu.org>
- PR debug/11473
- * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
- base classes.
+ * gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
-2003-07-15 James A. Morrison <ja2morri@student.math.uwaterloo.ca>
+2004-06-14 Eric Botcazou <ebotcazou@libertysurf.fr>
- * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
+ * real.c: Fix bit count in head comment.
-2003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-06-14 Jakub Jelinek <jakub@redhat.com>
- PR optimization/11320
- * sched-int.h (struct deps) [reg_conditional_sets]: New field.
- (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
- * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
- current_sched_info->compute_jump_reg_dependencies. Record which
- registers are used and which registers are set by the jump.
- Clear deps->reg_conditional_sets after a barrier.
- Set deps->reg_conditional_sets if the insn is a COND_EXEC.
- Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
- (init_deps): Initialize reg_conditional_sets.
- (free_deps): Clear reg_conditional_sets.
- * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
- Mark registers live on entry of the fallthrough block and conditionally
- set as set by the jump. Mark registers live on entry of non-fallthrough
- blocks as used by the jump.
- * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
- Mark new parameters as unused.
+ PR middle-end/15945
+ * simplify-rtx.c (simplify_binary_operation): Don't optimize out
+ Inf + -Inf, Inf - Inf, Inf / Inf and 0 * Inf if flag_trapping_math.
-2003-07-14 Mark Mitchell <mark@codesourcery.com>
+2004-06-14 Jakub Jelinek <jakub@redhat.com>
- PR debug/11098
- * integrate.c (copy_decl_for_inlining): Do not mark copied decls
- as DECL_ABSTRACT.
+ PR target/15178
+ * config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.
-2003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+2004-06-14 Alan Modra <amodra@bigpond.net.au>
- PR optimization/11440
- * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
- SIGN_EXTRACT SETs.
+ * config/rs6000/rs6000.h (ASM_CPU_SPEC): Handle -mpowerpc64 and -mcpu
+ for power5 and rs64a. Correct condition for default. Correct power3,
+ 620, 630, 7400, 7450, G4, 970 and G5 -mcpu entries. Add -many.
-2003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com>
+2004-06-13 Alan Modra <amodra@bigpond.net.au>
- * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
+ Apply mainline 2004-01-27 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.h: Correct target_flags free bits comment.
+ (PREDICATE_CODES): Remove duplicate.
+ * config/rs6000/linux64.h (CPP_SYSV_SPEC): Don't define.
+ (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow 32 bit TARGET_PROFILE_KERNEL.
+ (MASK_PROFILE_KERNEL): Adjust define.
-2003-07-13 Roger Sayle <roger@eyesopen.com>
+2004-06-13 Hans-Peter Nilsson <hp@axis.com>
- PR optimization/11059
- * expr.c (can_store_by_pieces): Return true if length is zero.
- (store_by_pieces): Do nothing if length is zero.
- (clear_by_pieces): Do nothing if length is zero.
- (clear_storage): Do nothing if length is zero.
- (store_constructor): Simplify code when size is zero, or the
- target has already been cleared. This avoids emitting a
- blockage instruction when initializing empty structures.
+ PR rtl-optimization/15296
+ * reorg.c (fill_simple_delay_slots): Use next_real_insn when
+ getting last consecutive label at a branch.
+ (relax_delay_slots): Similar, near top of loop.
-2003-07-13 Richard Henderson <rth@redhat.com>
+2004-06-12 Andreas Jaeger <aj@suse.de>
- * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
- __gcc_personality_v0.
+ * libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4.
+ * libgcc-darwin.ver: Likewise.
-2003-07-11 Dara Hazeghi <dhazeghi@yahoo.com>
+2004-06-11 Bernardo Innocenti <bernie@develer.com>
- PR optimization/10877
- * doc/install.tex: Update required binutils for i?86-*-linux*
+ PR target/8309
+ PR target/13312
+ Backport from mainline:
-2003-07-11 Ben Elliston <bje@redhat.com>
+ 2004-05-27 Peter Jakubek <peter@laseranimation.com>
- PR c++/1607
- * doc/extend.texi (Function Attributes): Document the effect of
- the C++ "this" parameter on the counting of arguments for the
- "format" and "format_arg" attributes.
+ * reload.c (find_reloads): Force reload for pseudo registers on big
+ endian machines.
-2003-07-11 Danny Smith <dannysmith@users.sourceforge.net>
+2004-06-11 J"orn Rennecke <joern.rennecke@superh.com>
- Backport from mainline.
+ * sh.c (dump_table): New argument start. Changed caller.
+ (fixup_mova): New function.
+ (find_barrier): Use it.
+ (sh_reorg): Likewise. Check for CODE_FOR_casesi_worker_2.
+ If the label a mova refers to is above the mova itself, change
+ the mova into a load.
+ * sh.md (*casesi_worker): Rename to:
+ (casesi_worker_1).
+ (casesi_worker_2): New insn.
- 2003-05-13 Richard Henderson <rth@redhat.com>
+2004-06-11 Hartmut Penner <hpenner@de.ibm.com>
- * c-decl.c (duplicate_decls): Re-invoke make_decl_rtl if
- the old decl had instantiated DECL_RTL.
+ Backport from mainline:
- 2003-05-21 Danny Smith <dannysmitx@users.sourceforge.net>
+ * config/rs6000/rs6000.c (output_vec_const_move):
+ Find all cases of EASY_VECTOR_15_ADD_SELF.
+ (easy_vector_constant_add_self): Accept
+ all vector constant loadable by vsplt* and vadd*.
+ (easy_vector_same): Use easy_vector_splat_const.
+ (easy_vector_const): Use easy_vector_splat_const.
+ (easy_vector_splat_const): New function.
+ (gen_easy_vector_constant_add_self): New function.
- PR c++/9738
- * config/i386/winnt.c (i386_pe_encode_section_info): Enable
- even if not first.
+ * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
+ New prototype.
- 2003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
+ * config/rs6000/altivec.md (movv4si splitter): Change to
+ emit move insn with halfed vector constant.
+ (*movv8hi splitter): Likewise.
+ (*movv16qi splitter): Likewise.
- PR c++/5287, PR c++/7910, PR c++/11021
- * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
- dllimport attribute if function is defined at declaration, but
- report error instead. Likewise for dllimport'd variable
- definitions. Set implicit TREE_PUBLIC for dllimport'd variables
- declared within functions, Report error if dllimport or dllexport
- symbol is not global.
- (i386_pe_dllimport_p): Ignore dllimport attribute of functions
- if defined after declaration or if inlined. Don't allow definition
- of static data members of C++ classes. Don't dllimport virtual
- methods.
- (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
- (i386_pe_mark_dllimport): Remove unnecessary checks.
- (i386_pe_encode_section_info): Warn if the dllimport attribute
- and symbol prefix have been instantiated and then overridden.
+2004-06-10 Joseph S. Myers <jsm@polyomino.org.uk>
- * doc/extend.texi: Document dllimport and dllexport attributes.
+ * doc/sourcebuild.texi (Front End): Add details of more
+ installation documentation required.
-2003-07-10 James E Wilson <wilson@tuliptree.org>
+2004-06-10 Vladimir Makarov <vmakarov@redhat.com>
- PR optimization/9745
- * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
- loop_insn_emit_before.
- (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
+ PR target/15653
+ * haifa-sched.c (schedule_block): Finish cycle after issuing asm
+ insn.
-2003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
+2004-06-10 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
- PR bootstrap/10758
- * doc/install.texi: Document requirements for ia64-*-hpux* target.
+ PR web/15263
+ * doc/install.texi: Remove superfluous linebreak.
-2003-07-09 Mark Mitchell <mark@codesourcery.com>
+2004-06-10 Bernardo Innocenti <bernie@develer.com>
- PR c++/10032
- * doc/invoke.texi (C++ Dialect Options): Change documentation of
- -fpermissive.
+ PR target/13803
+ Backport from mainline:
-2003-07-10 Matt Kraai <kraai@alumni.cmu.edu>
+ 2004-05-05 Peter Barada <peter@the-baradas.com>
- * doc/invoke.texi: Fix misspelling of "@item".
+ * config/m68k/m68k.h(EXTRA_CONSTRAINT): Add 'U' for register offset
+ addressing.
+ * config/m68k/m68k.md: Add 'U,U' alternative to ColdFire variants of
+ movsi, movhi, movqi insn patterns.
-2003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
+2004-06-10 Alan Modra <amodra@bigpond.net.au>
- * doc/install.texi (Configuration): Document the valgrind option
- to --enable-checking.
+ Apply from mainline:
+ 2004-03-12 Jakub Jelinek <jakub@redhat.com>
+ * config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Add
+ prototype.
+ * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): New.
+ * config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Define.
+
+2004-06-10 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/unwind-ia64.c (uw_frame_state_for): Don't assume a
+ leaf function without unwind info at RP 0.
+
+2004-06-10 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/15191
+ 2004-05-15 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.c (rs6000_va_arg <ABI_V4>): Don't use
+ UNITS_PER_WORD to calculate gpr size. Re-instate code to set reg
+ count to 8 to handle n_reg > 2.
+ 2004-05-10 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.c (function_arg_boundary): Always align
+ AltiVec vectors.
+ (function_arg_advance): Pass TARGET_32BIT -mabi=no-altivec AltiVec
+ vectors by refererence. Align the same for TARGET_64BIT to a 16
+ byte boundary. Remove useless code. Add function comment.
+ (function_arg): Similarly. Move gpr rs6000_mixed_function_arg
+ call to where it belongs.
+ (function_arg_partial_nregs): Return true for all TARGET_32BIT
+ -mabi=no-altivec AltiVec vectors. Fix debug output.
+ (rs6000_va_arg): Adjust for AltiVec change.
+ 2004-05-10 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4
+ when size is 8 bytes.
+ (function_arg_advance): Account for stack space used by AltiVec
+ args when -mabi=altivec. Simplify alignment calculations. For
+ ABI_V4, pass AltiVec vectors by reference when -mabi=no-altivec.
+ (function_arg): Similarly.
+ (function_arg_pass_by_reference): True for ABI_V4 AltiVec when
+ not AltiVec ABI.
+ (rs6000_va_arg): Correct fp arg test. Adjust for AltiVec change.
+ Correct alignment, and align before testing reg count. Remove
+ TREE_THIS_VOLATILE from reg. Don't emit unused labels.
+ (rs6000_complex_function_value): Check TARGET_HARD_FLOAT and
+ TARGET_FPRS here..
+ (rs6000_function_value): .. not here before call.
+ 2004-05-07 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.h (STACK_BOUNDARY): Use 128 bit for either
+ TARGET_ALTIVEC or TARGET_ALTIVEC_ABI.
+ * config/rs6000/sysv4.h (ABI_STACK_BOUNDARY): Likewise.
+ (STACK_BOUNDARY): Delete.
+
+2004-06-10 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14960
+ 2004-04-24 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.c (rs6000_stack_info): Rename total_raw_size
+ to non_fixed_size, and leave out fixed_size from the sum.
+ (generate_set_vrsave): Correct clobbers.
+ (rs6000_emit_epilogue): Test TARGET_ALTIVEC with TARGET_ALTIVEC_SAVE.
+ (rs6000_function_value): Test TARGET_ALTIVEC and TARGET_ALTIVEC_ABI.
+ (rs6000_libcall_value): Likewise.
+ * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Likewise.
+ (FUNCTION_ARG_REGNO_P): Likewise.
+
+2004-06-10 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14567
+ 2004-03-13 Alan Modra <amodra@bigpond.net.au>
+ * config/rs6000/rs6000.h (UNITS_PER_ARG, RS6000_ARG_SIZE): Delete.
+ (HARD_REGNO_MODE_OK): Disallow TFmode for fp31.
+ * config/rs6000/rs6000.c (rs6000_arg_size): New function.
+ Update all users of RS6000_ARG_SIZE.
+ (function_arg_advance): Count fregno using mode size.
+ (function_arg): Handle long double split over regs and memory.
+ (function_arg_partial_nregs): Likewise.
+ (rs6000_va_arg): Repackage complex args.
+ 2004-02-23 Fariborz Jahanian <fjahanian@apple.com>
+ * config/rs6000/rs6000.c (function_arg): call to
+ rs6000_mixed_function_arg for DFmode moved to allow
+ normal DFmode incoming register assignment.
+
+2004-06-09 Mark Mitchell <mark@codesourcery.com>
+
+ Revert:
+ PR c++/15815
+ 2004-06-07 Mark Mitchell <mark@codesourcery.com>
+ * doc/extend.texi: Deprecate #pragma interface and #pragma
+ implementation.
+
+2004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR rtl-optimization/15761
+ * cfgloopanal.c (count_strange_loop_iterations,
+ count_loop_iterations): Use gen_int_mode instead
+ of GEN_INT.
+
+2004-06-08 Roger Sayle <roger@eyesopen.com>
+
+ PR c/14649
+ * c-typeck.c (require_constant_value, require_constant_elements):
+ Move declarations to the top of the file.
+ (build_function_call): If we require a constant value, fold with
+ fold_initializer. If the result is a constant, and the function
+ wasn't called using __builtin_foo, issue a pedantic warning.
+ (build_unary_op): If we require a constant value, fold tree with
+ fold_initializer.
+ (build_binary_op): Use require_constant_value to determine whether
+ to call fold or fold_initializer.
+
+2004-06-08 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/15228
+ * function.c (assign_parms): Always set_mem_align with the computed
+ FUNCTION_ARG_BOUNDARY. Don't clear stack_parm if !STRICT_ALIGNMENT.
+
+2004-06-08 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/15598
+ * config/ia64/ia64.c (bundling): Add missed TYPE_A.
+
+2004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR rtl-optimization/15717
+ * config/i386/i386.c (legitimate_constant_p): Do not allow
+ x - symbol_ref.
+
+2004-06-07 James E Wilson <wilson@specifixinc.com>
+
+ PR target/15569
+ * config/ia64/ia64.md (call_value_nogp): Add constraints for op0.
+ (vall_value_gp): Likewise.
+
+2004-06-07 Dan Kegel <dank@kegel.com>
+
+ PR c++/14808
+ * config/i386/cygwin.h (TARGET_IS_PE_COFF): New.
+ * config/i386/cygming.h (TARGET_IS_PE_COFF): New.
+
+2004-06-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/15783
+ * config/sparc/sparc.c (function_arg_union_value): Add 'mode'
+ parameter. Enumerate the registers inside the PARALLEL.
+ (function_arg): Adjust call to function_arg_union_value.
+ (function_value): Likewise.
-2003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-06-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- PR Target/11453
- * pa.md: Disparage all mtsar constraints.
- (extzv, extv, insv): Don't fail on length of {32|64}.
+ * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands
+ when generating PIC code.
-2003-07-08 James E Wilson <wilson@tuliptree.org>
+ * pa.md: Disable the peephole2 patterns that generate indexed
+ floating-point stores when indexing is disabled.
- PR target/10021
- * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
- loop over new variable t2 instead of t.
+2004-06-07 Joseph S. Myers <jsm@polyomino.org.uk>
-2003-07-08 Stephane Carrez <stcarrez@nerim.fr>
+ PR c/14765
+ * c-parse.in (compstmt_primary_start): Set last_expr_type to
+ NULL_TREE.
- * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
- as .file/.loc directives are incompatible with linker relaxation.
+2004-06-07 Mark Mitchell <mark@codesourcery.com>
-2003-07-08 Jakub Jelinek <jakub@redhat.com>
+ PR c++/15815
+ * doc/extend.texi: Deprecate #pragma interface and #pragma
+ implementation.
- PR c/11420
- * config/i386/i386.c (ix86_check_movabs): New function.
- * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
- * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
- (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
+2004-06-07 Richard Henderson <rth@redhat.com>
- * config/i386/i386.md (movdi_1_rex64): Set Y<-m alternative's type
- to ssemov.
+ PR rtl-opt/15193
+ * expmed.c (extract_bit_field): Fix vector_extract return.
-2003-07-08 Jakub Jelinek <jakub@redhat.com>
+2004-06-07 Mark Mitchell <mark@codesourcery.com>
- * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
- REG_EQUIV notes as well.
+ PR c++/15337
+ * c-common.c (c_sizeof_or_alignof_type): Use more detailed error
+ message.
-2003-07-07 Dale Johannesen <dalej@apple.com>
+2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
- PR 10900
- * config/rs6000/darwin-tramp.asm: Fix trampolines.
+ PR target/14542
+ * config/m68hc11/m68hc11.md (move peephole2): Emit a use note to avoid
+ a live change of a register after peephole replacement.
-2003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
+2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
- PR optimization/11368
- * doc/invoke.texi (-falign-functions): Document that
- when n is zero then a machine-dependent default is used.
- (-falign-labels): Document that when n is zero then a
- machine-dependent default is used and that -falign-labels =1
- is equivalent to -fno-align-labels.
- (-falign-loops): Likewise.
- (-falign-jumps): Likewise.
+ PR target/14457
+ * config/m68hc11/m68hc11.c (splitable_operand): New predicate.
+ * config/m68hc11/m68hc11-protos.h (splitable_operand): Declare.
+ * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register it.
+ (inhibit_libc): Must define.
+ * config/m68hc11/m68hc11.md ("movhi_const0"): Use splitable_operand.
+ ("*andhi3_gen", "iorhi3", "*iorhi3_gen"): Likewise.
+ ("xorhi3"): Likewise.
-2003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
- Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-06-05 David S. Miller <davem@nuts.davemloft.net>
- PR optimization/11198
- * alias.c (objects_must_conflict_p): Return 1 if the types have
- the same alias set, not if the alias sets only conflict.
+ * config/sparc/linux.h (TARGET_C99_FUNCTIONS): Set.
+ * config/sparc/linux64.h (TARGET_C99_FUNCTIONS): Likewise.
-2003-07-06 Matthias Klose <doko@debian.org>
+2004-06-04 Eric Christopher <echristo@redhat.com>
Backport from mainline:
+ 2004-06-02 Eric Christopher <echristo@redhat.com>
- 2003-07-04 Zack Weinberg <zack@codesourcery.com>
-
- * doc/extend.texi: Delete entire section on multiline strings.
-
-2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
+ * c-typeck.c (common_type): Don't lose type qualifiers
+ when creating new variants.
- * Makefile.in: Replace PWD with PWD_COMMAND.
+2004-06-03 Bernardo Innocenti <bernie@develer.com>
-2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11304
+ PR target/15782
Backport from mainline:
- 2003-04-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * cfgcleanup.c (flow_find_cross_jump): Use INSN_P, not active_insn_p.
+ 2004-06-01 Peter Barada <peter@the-baradas.com>
+ Peter Jakubek <peter@laseranimation.com>
-2003-07-03 Roger Sayle <roger@eyesopen.com>
+ * config/m68k/m68k.c(m68k_output_mi_thunk): For ColdFire, use %d0 as
+ a scratch to perform an add to memory.
- PR target/10700
- * fold-const.c (extract_muldiv_1): There's nothing that can be done
- if the expression is a SAVE_EXPR.
+2004-06-01 Paul Eggert <eggert@cs.ucla.edu>
-2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/15626
+ * doc/install.texi (sparc-sun-solaris2*): Document messages issued
+ by the Sun linker in conjunction with the Sun assembler.
+ (sparc-sun-solaris2.7): Update revision info for Sun patch 106950.
- PR optimization/11381
- * simplify-rtx.c (simplify_relational_operation): Check that
- two equal operands have no side-effects before simplifying
- the comparison.
+2004-06-01 Nicola Pero <nicola@brainstorm.co.uk>
-2003-07-01 Zack Weinberg <zack@codesourcery.com>
+ PR objc/7993
+ * objc-act.c (is_private): Do not emit the 'instance variable %s
+ is declared private' error.
+ (is_public): Emit the error after calling is_private.
+ (lookup_objc_ivar): If the instance variable is private, return 0
+ - the instance variable is invisible here.
- PR 2873
- * fixinc/inclhack.def (avoid_wchar_t_type): Add bypass
- expressions to prevent triggering on recent curses.h,
- linux/nls.h, or X11/Xlib.h.
- (stdio_va_list): Add _G_va_list to bypass pattern.
- (strict_ansi_not): Add bypass pattern for __SCO_VERSION__.
- * fixinc/fixincl.x: Regenerate.
+2004-06-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
- <internal/stdio_core.h> too.
- (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
- <internal/wchar_core.h> too.
- Substitute va_list uses in inline definition.
- * fixinc/fixincl.x: Regenerate.
+ * doc/invoke.texi (-static-libgcc): Explicitly mention
+ non-GNU linkers.
-2003-07-01 Richard Henderson <rth@redhat.com>
- (blame to: Loren James Rittle <ljrittle@acm.org>)
+2004-05-31 Kaz Kojima <kkojima@gcc.gnu.org>
- * real.h (ieee_extended_intel_96_round_53_format): New.
- * real.c (ieee_extended_intel_96_round_53_format): New.
- * config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Use it
- for XFmode and TFmode.
-
-2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/contrib.texi: Fix typos.
- * doc/sourcebuild.texi: Likewise.
-
-2003-06-27 Gunther Nikl <gni@gecko.de>
-
- PR target/11014
- * config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly
- syntax for MIT / MOTOROLA.
-
-2003-06-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (SECONDARY_OUTPUT_RELOAD_CLASS): Define.
- * config/s390/s390.c (s390_secondary_output_reload_class): New function.
- * config/s390/s390-protos.h (s390_secondary_output_reload_class):
- Declare it.
- * config/s390/s390.md ("reload_outti", "reload_outdi",
- "reload_outdf"): New expanders.
-
- * config/s390/s390.md ("movti" + splitters): Handle non-offsettable
- memory operands as source.
- ("movdi" + splitters): Likewise.
- ("movdf" + splitters): Likewise.
- * config/s390/s390.c (s390_split_ok_p): New function.
- * config/s390/s390-protos.h (s390_split_ok_p): Declare it.
+ PR target/13250
+ Backport from mainline:
-2003-06-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+ 2004-05-28 Kaz Kojima <kkojima@gcc.gnu.org>
+ * config/sh/sh.md (rotlsi3): Use emit_move_insn.
- * config/mips/mips.md (trap): Use break 0 when !TARGET_GAS.
+2004-05-31 H.J. Lu <hongjiu.lu@intel.com>
- * config/mips/iris6-o32.h (MIPS_ISA_DEFAULT): Remove.
- (MIPS_CPU_STRING_DEFAULT): Redefine to mips2.
+ PR middle-end/15666
+ * cgraph.c (cgraph_remove_node): Don't call htab_clear_slot if
+ we can't find the slot. Abort if we can't find slot and the
+ node isn't for a builtin function.
- * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
- !TARGET_IRIX6]: Define as NULL.
+2004-05-31 Roger Sayle <roger@eyesopen.com>
- * config/mips/iris5gas.h (MDEBUG_ASM_SPEC): Override to match
- DWARF 2 default.
+ PR middle-end/15069
+ * fold-const.c (fold_single_bit_test): Only perform "(X & C) != 0"
+ into "X < 0" (where C is the signbit) if X's type is a full mode.
- * config/mips/dbxmdebug.h: New file.
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it with
- gas and --with-stabs.
+2004-05-31 Joseph S. Myers <jsm@polyomino.org.uk>
-2003-06-27 Andreas Schwab <schwab@suse.de>
+ PR c/15749
+ * c-decl.c (grokdeclarator, finish_struct): Don't pedwarn for
+ misuses of structures with flexible array members if
+ in_system_header.
- * config.gcc (m68k-*-linux*): Don't override extra_parts and
- gnu_ld, use the generic *-*-linux* settings instead.
+2004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-06-26 Roger Sayle <roger@eyesopen.com>
+ PR target/15693
+ * config/sparc/sparc.c (compare_operand): New predicate.
+ * config/sparc/sparc.h (PREDICATE_CODES): Add it.
+ * config/sparc/sparc.md (cmpsi expander): Use it. If the first
+ operand is a ZERO_EXTRACT and the second operand is not zero,
+ force the former to a register.
+ (cmpdi expander): Likewise.
- PR optimization/11054
- * rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT
- and SIGN_EXTRACT.
+2004-05-31 Danny Smith <dannysmith@users.sourceforge.net>
-2003-06-25 Zack Weinberg <zack@codesourcery.com>
+ * c-incpath.c (add_path): Canonicalize paths to use '/' if
+ HAVE_DOS_BASED_FILESYSTEM.
- PR bootstrap/3163
- * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE, AC_FUNC_MMAP_FILE): Delete.
- (gcc_AC_FUNC_MMAP_BLACKLIST): New.
- * configure.in: Check for sys/mman.h and mmap in AC_CHECK_HEADERS
- and AC_CHECK_FUNCS lists, respectively. Use
- gcc_AC_FUNC_MMAP_BLACKLIST, not AC_FUNC_MMAP_ANYWHERE nor
- AC_FUNC_MMAP_FILE.
- * configure, config.in: Regenerate.
+2004-05-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * ggc-page.c (init_gcc): Call fatal_io_error, not abort,
- if opening /dev/zero fails.
+ PR bootstrap/14671
+ * alias.c (init_alias_analysis): Allocate alias_invariant array with
+ ggc_calloc instead of xrealloc.
+ (end_alias_analysis): Don't free alias_invariant.
-2003-06-25 Roger Sayle <roger@eyesopen.com>
+2004-05-28 DJ Delorie <dj@redhat.com>
- * builtins.c (expand_builtin_strcpy): Construct new argument list
- manually instead of using chainon to modify the original arglist.
- (expand_builtin_strcmp): Likewise.
+ * stor-layout.c (place_field): Revert erroneous commit.
-2003-06-25 David O'Brien <obrien@FreeBSD.org>
+2004-05-28 Nick Clifton <nickc@redhat.com>
- * config/i386/i386.h (builtin_define): Remove duplicate __amd64
- and __amd64__.
+ Bug 14093
+ * config/sh/sh-protos.h (sh_promote_prototypes): Declare.
+ * config/sh/sh.c (sh_promote_prototypes): Remove declaration.
+ Delete static from definition.
+ * config/sh/sh.h (FUNCTION_VALUE): Add sh_promote_prototypes call.
-2003-06-25 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
+2004-05-27 Kaz Kojima <kkojima@gcc.gnu.org>
- * config/sh/sh.c (sh_register_move_cost):
- Add case for moving between MAC_REGS.
+ Backport from mainline:
-2003-06-24 Jerry Quinn <jlquinn@optonline.net>
+ * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific
+ libgcc-std.ver.
+ * config/sh/libgcc-std.ver: New file.
- PR other/11280
- * gcc/doc/invoke.texi (Optimization Options): Remove -Os from
- -freorder-functions description.
+2004-05-27 Olivier Hainque <hainque@act-europe.fr>
-2003-06-25 Richard Sandiford <rsandifo@redhat.com>
+ * expr.c (store_constructor): Restore sanity check on
+ the size of the type before clearing.
- PR target/11084
- * config/mips/mips.c (mips_expand_prologue): Fix setting of regno
- for the end of a variable argument list.
+2004-05-27 Alan Modra <amodra@bigpond.net.au>
-2003-06-25 Josef Zlomek <zlomekj@suse.cz>
+ PR target/14478
+ * config/rs6000/rs6000.c (reg_or_neg_short_operand): Don't allow zero.
- * dwarf2out.c (gen_field_die): Return if type of decl is error mark.
+2004-05-26 Aldy Hernandez <aldyh@redhat.com>
-2003-06-24 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+ PR/14924
+ * config/rs6000/rs6000.c (spe_expand_stv_builtin): New.
- PR target/11260
- * config/alpha/alpha.md (sqrtdf2): Fix operand substitution.
+2004-05-23 Joseph S. Myers <jsm@polyomino.org.uk>
-2003-06-24 Jakub Jelinek <jakub@redhat.com>
+ * doc/gcc.texi, doc/gccint.texi, doc/include/gcc-common.texi:
+ Update based on printed manual. Enable setting of offsets for
+ FSFPRINT and move it to gcc-common.texi.
+ * doc/gcc.texi: Update FSF printing details.
+ * doc/gccint.texi: Remove FSF printing details.
- * builtins.c (expand_builtin_strcpy): Don't evaluate side-effects in
- src twice.
+2004-05-21 Jakub Jelinek <jakub@redhat.com>
-2003-06-23 Jakub Jelinek <jakub@redhat.com>
+ * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): If SPARC_BI_ARCH,
+ override sparc.h definition.
- * config/s390/s390.c (s390_output_mi_thunk): Avoid .plt in -m31
- mode, as it requires pic register loaded.
+2004-05-20 Jakub Jelinek <jakub@redhat.com>
-2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
+ * config/sparc/linux64.h (TARGET_DEFAULT): Make 64-bit by default
+ also for TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3.
- * doc/extend.texi: Fix typos.
- * doc/md.texi: Likewise.
+2004-05-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-06-23 Roger Sayle <roger@eyesopen.com>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+ PR target/15202
+ * pa.md (movdi, movsi, movhi, movqi): Support move from shift amount
+ register to general register for DI, SI, HI and QI modes. Remove
+ move to shift amount register in DF mode.
- * doc/contrib.texi (Contributors): Add a note on testing and
- remove duplicates from testers list.
+2004-05-18 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
+ PR middle-end/15054
+ * expr.c (expand_expr_real): Do not call preserve_temp_slots
+ on a TARGET_EXPR temp.
+ * function.c (assign_stack_temp_for_type): Set 'keep' flag for
+ TARGET_EXPR temp slots.
- * doc/invoke.texi: Document dump options, dT and dW.
+2004-05-18 Kaz Kojima <kkojima@gcc.gnu.org>
-2003-06-23 Andreas Schwab <schwab@suse.de>
+ PR optimization/15100
+ Backport from mainline:
- * doc/invoke.texi: Remove leading `-' from options in index.
+ 2004-05-11 Kaz Kojima <kkojima@gcc.gnu.org>
+ * combine.c (distribute_notes): Don't create a dangling
+ REG_LIBCALL/REG_RETVAL note.
-2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
+2004-05-17 H.J. Lu <hongjiu.lu@intel.com>
- * doc/invoke.texi: Document dump, .cfg.
+ Backport from mainline
-2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
+ PR target/15301
+ PR target/15302
+ 2004-05-17 Jan Hubicka <jh@suse.cz>
- * doc/invoke.texi: Alphabetize dump options.
+ * i386.c (construct_container): Do not produce BLKmode registers.
+ (classify_argument): Properly compute alignment of complex types.
-2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
+2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
- * doc/invoke.texi: Remove a duplicate -dk.
+ * doc/extend.texi: Update WG14 URL.
-2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
+2004-05-11 Aldy Hernandez <aldyh@redhat.com>
- * doc/rtl.texi: Fix the @findex for pre_modify.
+ * config/rs6000/spe.md (spe_evneg): Rename to negv2si2.
-Sat Jun 21 13:37:52 CEST 2003 Jan Hubicka <jh@suse.cz>
+ * config/rs6000/rs6000.c (bdesc_1arg): Change spe_evneg to
+ negv2si2.
- * i386.c (ix86_va_arg): Fix allocation of temporary slot.
+2004-05-10 Kaz Kojima <kkojima@gcc.gnu.org>
-2003-06-21 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+ PR target/15130
+ Backport from mainline:
- * doc/contrib.texi (Contributors): Use Windows instead of Win32.
+ * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype.
+ * config/sh/sh.c (output_stack_adjust): Take the sibcall epilogue
+ into account. Compute the correct number of general registers
+ for the return value. Generate a special push/pop sequence when
+ failing to get a temporary register for non SHmedia epilogue.
+ (sh_expand_epilogue): Add an argument to show whether it's for
+ sibcall or not. Set the 3rd argument of output_stack_adjust to
+ -1 if needed.
+ (sh_need_epilogue): Call sh_expand_epilogue with 0.
+ * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue
+ with 1.
+ (epilogue): Call sh_expand_epilogue with 0.
- Update Andreas Jaeger's entry.
+2004-05-09 Aldy Hernandez <aldyh@redhat.com>
- Merge the two entries of Kaveh Ghazi, David Edelsohn, and
- Loren J. Rittle.
+ * config/rs6000/spe.md ("tstsflt_gpr"): Fix typo in unspec.
-2003-06-20 Geoffrey Keating <geoffk@apple.com>
+2004-05-08 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR c++/9393
- * doc/invoke.texi (Debugging Options): Document -frandom-seed.
- * configure.in: Check for gettimeofday.
- * tree.c (flag_random_seed): Define.
- (default_flag_random_seed): New.
- (append_random_chars): Use flag_random_seed rather than trying
- to acquire randomness here.
- * tree.h (default_flag_random_seed): Declare.
- * toplev.c (display_help): Add -frandom-seed and -fstack-limit-*
- descriptions.
- (decode_f_option): Handle -frandom-seed.
- (print_switch_values): Call default_flag_random_seed.
- * flags.h (flag_random_seed): Declare.
- * configure: Regenerate.
- * config.in: Regenerate.
+ * doc/install.texi (sparc-sun-solaris2*): Document bootstrap
+ problems with earlier versions of the GNU compiler.
-2003-06-20 Mark Mitchell <mark@codesourcery.com>
+2004-05-07 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR c++/10888
- * tree-inline.c (expand_call_inline): Do not warn about failing to
- inline functions declared in system headers.
- * doc/invoke.texi (-Winline): Expand on documentation.
+ PR c++/14962
+ * c-pragma.c (handle_pragma_redefine_extname): Only change
+ the assembler name of FUNCTION_DECLs and VAR_DECLs.
-2003-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-05-07 Loren James Rittle <ljrittle@acm.org>
- * configure.in (gcc_cv_as_gstabs_flag): Disable if assembler warns.
- * configure: Regenerate.
- Fixes PR driver/9362.
+ * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Proper redefinition.
+ * config/arm/freebsd.h: Likewise.
+ * config/ia64/freebsd.h: Likewise.
+ * config/sparc/freebsd.h: Likewise.
-2003-06-19 Vladimir Makarov <vmakarov@redhat.com>
+2004-05-06 Richard Henderson <rth@redhat.com>
- * haifa-sched.c (max_isse): Backport from the mainline.
- (choice_entry): New structure.
- (choice_stack, cycle_issued_insns, max_lookahead_tries,
- cached_first_cycle_multipass_dfa_lookahead, cached_issue_rate):
- New variables.
- (choose_ready): Calculate max_lookahead_tries. Initiate
- ready_try.
- (schedule_block): Allocate/deallocate choice_stack. Change
- cycle_issued_insns value as necessary.
- (sched_init): Check cached_issue_rate.
+ * stmt.c (parse_output_constraint): Don't warn for read-write
+ memory operand.
-2003-06-20 Daniel Egger <degger@fhm.edu>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-05-06 Jan Hubicka <jh@suse.cz>
- * doc/install.texi (Building): Correct and improve statement
- about parallel builds.
+ PR c/15004
+ * function.c (do_warn_unused_parameter): Break out form ...
+ (expand_function_end): ... here; warn only when not using cgraphunit.
+ * function.h (do_warn_unused_parameter): Declare.
+ * cgraphunit.c: Include function.h.
+ (cgraph_finalize_function): Do unused parameter warning.
+ * Makefile.in (cgraphunit.o): Depend on function.h
-2003-06-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-05-05 H.J. Lu <hongjiu.lu@intel.com>
- * doc/install.texi (--with-gnu-as): Mention SPARC/Solaris and
- SPARC64/Solaris as platforms where --with-gnu-as makes a difference.
- (--with-as): Add @anchor.
- (--with-gnu-ld): Fix typo.
- (--with-ld): Add @uref to --with-as.
+ PR target/15290
+ * config/i386/i386.c (ix86_split_to_parts): Use real_to_target
+ instead of REAL_VALUE_TO_TARGET_LONG_DOUBLE.
-2003-06-19 Kazu Hirata <kazu@cs.umass.edu>
+2004-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * flow.c (initialize_uninitialized_subregs): Use
- emit_move_insn instead of emitting a hardcoded move.
+ * fixinc/inclhack.def (svr4_profil): Don't apply on IRIX 5/6.
+ * fixinc/fixincl.x: Regenerate.
-2003-06-19 David Edelsohn <edelsohn@gnu.org>
+2004-05-02 Josef Zlomek <zlomekj@suse.cz>
- * config/rs6000/rs6000.c (init_cumulative_args): Limit CALL_LIBCALL
- to ABI_V4.
+ * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Print the debug
+ message before redirecting the edge.
-2003-06-19 DJ Delorie <dj@redhat.com>
+2004-05-02 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR preprocessor/11022
- * cppmacro.c (warn_of_redefinition): Handle cases where the two
- definitions have different numbers of tokens.
+ PR optimization/15112
+ * reload1.c (reload): Don't record unchanging memory locations.
-2003-06-18 Richard Henderson <rth@redhat.com>
+2004-04-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * config/ia64/unwind-ia64.c (_Unwind_GetCFA): New.
- (_Unwind_FindEnclosingFunction): Implement.
+ PR other/1963
+ * config/alpha/osf.h (SWITCHES_NEED_SPACES): Define.
-2003-06-18 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+2004-04-30 David Edelsohn <edelsohn@gnu.org>
- * config/rs6000/rs6000.c (init_cumulative_args): Add and handle LIBCALL
- argument.
- (function_arg): Handle CALL_LIBCALL flag.
- * config/rs6000/rs6000-protos.h (init_cumulative_args): Update
- prototype.
- * config/rs6000/rs6000.h (CALL_LIBCALL): New macro.
- (INIT_CUMULATIVE_LIBCALL_ARGS): New macro.
- (INIT_CUMULATIVE_ARGS): Add LIBCALL argument.
- (INIT_CUMULATIVE_INCOMING_ARGS): Likewise.
+ Backport from mainline:
-2003-06-17 Jason Merrill <jason@redhat.com>
+ 2004-04-19 David Edelsohn <edelsohn@gnu.org>
- PR c++/10929
- * tree-inline.c (expand_call_inline): Don't warn about failing to
- inline a function which was made inline by -finline-functions.
+ * doc/install.texi (*-ibm-aix*): Add AIX 5.1 assembler and archiver
+ fix information.
+
+ 2004-04-17 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14715
+ * config/rs6000/rs6000.c (rs6000_stack_info): Make parm_size agree
+ with STARTING_FRAME_OFFSET.
+
+ 2004-04-07 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (processor_target_table): Add MASK_MFCRF
+ to power4 and power5 entries.
+
+ 2004-04-05 David Edelsohn
+
+ * config/rs6000/rs6000.c (VTABLE_NAME_P): Add _ZTI to special
+ symbol handling.
+
+ 2004-03-30 Hartmut Penner <hpenner@de.ibm.com>
+
+ PR 11591
+ * config/rs6000/rs6000.c (rs6000_legitimate_address):
+ Allow any offset to argument pointer in no-strict case.
+
+ 2004-03-25 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_always_hint): New variable.
+ (rs6000_sched_groups): New variable.
+ (processor_target_table): Add power5.
+ (rs6000_override_options): Set rs6000_sched_insert_nops,
+ rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority
+ from rs6000_sched_groups.
+ (output_cbranch): Use rs6000_always_hint.
+ (rs6000_variable_issue): Use rs6000_sched_groups.
+ (rs6000_adjust_cost): Add CPU_POWER5.
+ (is_microcoded_insn): Use rs6000_sched_groups.
+ (is_dispatch_slot_restricted): Use rs6000_sched_groups.
+ Return 2 for POWER5 cracked instructions.
+ (is_cracked_insn): Use rs6000_sched_groups.
+ (is_branch_slot_insn): Use rs6000_sched_groups.
+ (rs6000_issue_rate): Add CPU_POWER5.
+ (rs6000_sched_finish): Use rs6000_sched_groups.
+ (rs6000_rtx_costs): Add PROCESSOR_POWER5.
+ * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5.
+ (DEFAULT_SCHED_COSTLY_DEP): Delete.
+ (DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete.
+ (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete.
+ * config/rs6000/rs6000.md (define_attr "cpu"): Add power5.
+ * config/rs6000/power5.md: New file.
+ * doc/invoke.texi: Add power5 option.
+
+ 2004-03-17 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): correct reg_size
+ for mixed mode.
+ (rs6000_emit_prologue): Ditto.
+ (rs6000_emit_epilogue): Ditto.
+ * config/rs6000/rs6000.h: Definition of DWARF_CIE_DATA_ALIGNMENT
+ macro for mixed mode.
+
+ 2004-03-04 David Edelsohn <edelsohn@gnu.org>
+ GP <gp@qnx.com>
-2003-06-17 Ranjit Mathew <rmathew@hotmail.com>
+ * config/rs6000/rs6000.c (output_function_profiler): Append @plt
+ when compiling PIC.
- * install.texi (Testing): Add information on how to run Java
- runtime tests separately.
+2004-04-30 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/altivec/altivec.h [__cplusplus] (vec_subsubs): Rename
+ to vec_sububs.
+ [__cplusplus] (vec_subsuhs): Rename to vec_subuhs,
+ eliminating duplicates.
-2003-06-17 Christopher Faylor <cgf@redhat.com>
+2004-04-29 Richard Sandiford <rsandifo@redhat.com>
- * doc/install.texi: Add msvc rebuild caveat.
+ PR target/15189
+ * config/mips/mips.md (load_df_low): Use default length.
+ (load_df_high, store_df_high): Likewise.
-2003-06-17 Kazu Hirata <kazu@cs.umass.edu>
+2004-04-29 Philip Blundell <philb@gnu.org>
- * doc/contrib.texi: Replace Hitachi with Renesas.
- * doc/install.texi: Likewise.
- * doc/invoke.texi: Likewise.
+ * Merge from trunk:
+ 2004-04-20 Paul Brook <paul@codesourcery.com>
-2003-06-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ * config/arm/arm.c (arm_legitimate_address_p): Use rtx_equal_p.
- * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Partly revert
- 2003-01-23 patch. Corrected to handle kernels with changed ucontext.
+2004-04-29 Aldy Hernandez <aldyh@redhat.com>
- * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Error on invalid
- -msdata=eabi usages.
+ PR/12028
+ * config/rs6000/rs6000.c (rs6000_emit_cmove): Disable comparisons
+ of floats on the E500.
+ (branch_positive_comparison_operator): Do not allow NE even on the
+ E500.
+ (ccr_bit): Remove E500 specific code.
+ Remove miscompilation warning for e500.
+ (print_operand): Add 'c' and 'D'.
+ (rs6000_generate_compare): Rewrite to generate correct rtl.
+ (rs6000_emit_sCOND): Handle E500.
+ (output_cbranch): Adjust for changes in rs6000_generate_compare.
+ (output_e500_flip_gt_bit): New.
+ (rs6000_override_options): Error when user wants altivec and e500
+ instructions.
+
+ * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): New constant.
+ (move_from_CR_gt_bit): New.
+ (cceq_ior_compare): Name previously unnamed pattern. Disable for
+ E500.
+ (cceq_rev_compare): Name previously unnamed pattern. Allow for
+ E500.
+
+ * config/rs6000/spe.md (cmpsfeq_gpr): Rewrite as unspec.
+ (tstsfeq_gpr): Same.
+ (cmpsfgt_gpr): Same.
+ (tstsfgt_gpr): Same.
+ (cmpsflt_gpr): Same.
+ (tstsflt_gpr): Same.
+ (e500_cceq_ior_compare): New.
+ (e500_flip_gt_bit): New.
+
+ * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit):
+ Protoize.
+
+2004-04-28 Ben Elliston <bje@au.ibm.com>
+
+ * doc/invoke.texi (Objective-C Dialect Options): Don't prefix
+ options with "-" in the option index.
+ (SPARC Options): Likewise.
+ (M32R/D Options): Likewise.
+
+2004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * Makefile.in ($(DESTDIR)$(infodir)/%.info): Don't condition
+ calling install-info on $(DESTDIR)$(infodir)/dir already being
+ present.
+
+2004-04-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/15084
+ * config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode
+ and renamed to movdi_insv_1_rex64.
+ (insv): Support SImode for 32bit and DImode for 64bit.
+
+2004-04-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-06-14 Richard Earnshaw <rearnsha@arm.com>
+ PR debug/14829
+ * dwarf2out.c (reg_number): Rename to dbx_reg_number. Adjust all
+ callers.
+ (multiple_reg_loc_descriptor, reg_loc_descriptor): Use gcc register
+ number for indexing hard_regno_nregs array.
- PR optimization/10842
- From trunk:
- 2003-01-20 Nick Clifton <nickc@redhat.com>
+2004-04-27 Bob Wilson <bob.wilson@acm.org>
- * config/arm/arm.md (sibcall_epilogue): Add an
- UNSPEC_PROLOGUE_USE to prevent the link register from being
- considered dead.
+ * config/xtensa/xtensa.c (call_insn_operand): Check
+ SYMBOL_REF_EXTERNAL_P in addition to SYMBOL_REF_LOCAL_P.
+ * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND): Likewise.
+ * config/xtensa/xtensa.md (call, call_value): Likewise.
- 2003-02-02 Richard Earnshaw <rearnsha@arm.com>
+2004-04-26 Zack Weinberg <zack@codesourcery.com>
- * arm.md (sibcall_epilogue): Set the "conds" to "clob".
- (epilogue_insns): Likewise.
+ * config/ia64/hpux.h: Predefine __STDCPP__ when compiling C++.
+ * config/pa/pa-hpux10.h: Likewise.
+ * config/pa/pa-hpux11.h: Likewise.
-2003-06-14 Richard Earnshaw <rearnsha@arm.com>
+2004-04-23 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR target/11183
- * arm.c (output_move_double): Pass SImode to adjust_address.
+ PR optimization/13985
+ * cfgloopmanip.c (fix_loop_placements): New prototype.
+ Call fix_bb_placements on the preheader of loops that have
+ been reparented.
+ (remove_path): Adjust call to fix_loop_placements.
-2003-06-13 Janis Johnson <janis187@us.ibm.com>
+2004-04-23 Nick Clifton <nickc@redhat.com>
- * doc/install.texi (m32r-*-elf): Change company to Renesas.
+ * Import this patch from mainline:
+ 2004-04-16 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-2003-06-13 Richard Earnshaw <rearnsha@arm.com>
+ * config/m32r/m32r.h (BIG_ENDIAN_BIT): Deleted to fix endian
+ bug.
+ (TARGET_LITTLE_ENDIAN, TARGET_BIG_ENDIAN,
+ TARGET_DEFAULT): Changed. Ditto.
+ (LITTLE_ENDIAN_BIT, TARGET_CPU_DEFAULT,
+ TARGET_ENDIAN_DEFAULT): Added. Ditto.
+ * config/m32r/little.h (TARGET_LITTLE_ENDIAN): Deleted.
+ (TARGET_ENDIAN_DEFAULT): Added.
- * arm.c (output_call_mem): If the address references the link-register
- use an instruction sequence that avoids early-clobbering IP.
- (eliminate_lr2ip): Delete.
+2004-04-22 Per Bothner <per@bothner.com>
-2003-06-12 Richard Henderson <rth@redhat.com>
+ * cppinit.c (cpp_read_main_file): Return NULL rather than false.
+ Fixes PR preprocessor/15067.
- PR target/11089
- * config/i386/i386.md (sse_movaps): Use an expander to force
- one operand to be a register.
- (sse_movups): Likewise.
+2004-04-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-12 Richard Henderson <rth@redhat.com>
+ * function.c (thread_prologue_and_epilogue): Move
+ NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes
+ before the epilogue.
- PR middle-end/10557
- * rtlanal.c (subreg_offset_representable_p): Relax subreg check.
+2004-04-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-13 Eric Botcazou <ebotcazou@libertysurf.fr>
- Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
+ * dbxout.c (dbxout_symbol_location): Do not output references
+ to optimized-out constant pool symbols.
- PR target/10142
- * config/sparc/sparc.c (function_arg_record_value_parms): Add
- new 'stack' field.
- (function_arg_record_value_1): Set 'stack' to 1 if we run out of
- integer slots for an integer field.
- (function_arg_record_value_3): Shift vector index.
- (function_arg_record_value_2): Likewise.
- (function_arg_record_value): Initialize 'stack' to 0.
- Set 'stack' to 1 if we run out of integer slots for an integer field.
- Generate (parallel [(expr_list (nil) ...) ...]) if 'stack' is set to 1.
+2004-04-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+ * expr.c (store_constructor): Use gen_int_mode to correctly
+ sign-extend CONST_INT value.
- PR optimization/10955
- * unroll.c (unroll_loop): Fix off-by-one bug.
+2004-04-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-12 Richard Henderson <rth@redhat.com>
+ * combine.c (if_then_else_cond): Check for NULL return value of
+ simplify_gen_subreg.
- PR middle-end/10475
- * expmed.c (emit_store_flag): Use simplify_gen_subreg directly
- for extracting sub-words.
+2004-04-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-06-12 Richard Henderson <rth@redhat.com>
+ * reload1.c (emit_reload_insns): Set reg_has_output_reload to one
+ after setting reg_last_reload_reg for optional output reloads.
- PR target/7594
- * config/m68k/m68k.md (zero_extendhisi2): Use gen_lowpart_SUBREG.
- (zero_extendqihi2, zero_extendqisi2): Likewise.
+2004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-06-12 Richard Henderson <rth@redhat.com>
+ * pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of
+ SAR register. Fix comment.
+ (ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register
+ (%cr11).
- PR inline-asm/4823
- * reg-stack.c (any_malformed_asm): New.
- (check_asm_stack_operands): Set it.
- (convert_regs_1): Check it before aborting.
+2004-04-21 Kaz Kojima <kkojima@gcc.gnu.org>
-2003-06-12 Jakub Jelinek <jakub@redhat.com>
+ Backport from mainline:
- * c-decl.c (c_expand_body): Save input_filename and lineno,
- set it before tree inlining and restore before return.
+ 2004-04-05 Kaz Kojima <kkojima@gcc.gnu.org>
+ * config/sh/sh.c (prepare_move_operands): Use emit_call_insn
+ when the TLS address is generated by a function call.
+ * config/sh/sh.md (tls_global_dynamic): Use a call expression.
+ (tls_local_dynamic): Likewise.
-2003-06-12 Ulrich Weigand <uweigand@de.ibm.com>
+2004-04-21 H.J. Lu <hongjiu.lu@intel.com>
- * config/s390/s390.c (s390_emit_prologue): Use LA instead of AR
- to initialize GOT register.
+ PR target/14813
+ Backport from mainline:
-2003-06-12 Jakub Jelinek <jakub@redhat.com>
+ * config/ia64/crtend.asm: Move pointer to __do_global_ctors_aux
+ in .init_array section to ...
+ * config/ia64/crtbegin.asm: Here.
- * c-opts.c (complain_wrong_lang): Add on argument.
- Print no- switch if on is false.
- (c_common_decode_option): Adjust caller.
+ * config/ia64/crtend.asm: Mark __do_global_ctors_aux global
+ and hidden if HAVE_INITFINI_ARRAY is defined.
-2003-06-11 Richard Henderson <rth@redhat.com>
+2004-04-21 Richard Henderson <rth@redhat.com>
- * stmt.c (expand_asm_operands): Don't warn for memories with
- queued addresses.
+ PR bootstrap/14671
+ * alias.c (alias_invariant, alias_invariant_size): Mark GTY.
+ (reg_known_value, reg_known_value_size): Likewise; make static.
+ (reg_known_equiv_p): Make static.
+ (clear_reg_alias_info): Update for new indexing.
+ (get_reg_known_value, set_reg_known_value): New.
+ (get_reg_known_equiv_p, set_reg_known_equiv_p): New.
+ (canon_rtx): Use them.
+ (init_alias_analysis): Likewise. Allocate reg_known_value with gc.
+ Don't play queer offsetting games with reg_known_value and
+ reg_known_equiv_p.
+ (end_alias_analysis): Don't free reg_known_value.
+ * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare.
+ * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove.
+ (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new
+ functions instead.
-2003-06-11 Andrew Pinski <pinskia@physics.uc.edu>
+2004-04-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- PR target/8787
- * config/i386/djgpp.h (ASM_FILE_START): emit `.intel_syntax'
- if -masm=intel.
+ * pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld.
-2003-06-10 Andrew Haley <aph@redhat.com>
+2004-04-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * langhooks-def.h (LANG_HOOKS_DECL_OK_FOR_SIBCALL): New.
- (LANG_HOOKS_DECLS): Add LANG_HOOKS_DECL_OK_FOR_SIBCALL.
- (lhd_decl_ok_for_sibcall): New.
- * langhooks.c (lhd_decl_ok_for_sibcall): New.
- * langhooks.h (lang_hooks_for_decls.ok_for_sibcall): New field.
- * calls.c (expand_call): Check lang_hook before generating a
- sibcall.
+ * doc/install.texi (Specific, mips-sgi-irix5): Fix IRIX 5.3 IDO
+ download URL.
-2003-06-09 Richard Henderson <rth@redhat.com>
+2004-04-21 H.J. Lu <hongjiu.lu@intel.com>
- 2003-05-11 Ulrich Weigand <uweigand@de.ibm.com>
- * except.c (EH_RETURN_STACKADJ_RTX): Do not define.
- (EH_RETURN_HANDLER_RTX): Likewise.
- (expand_builtin_eh_return): Do not copy stack adjustment
- if EH_RETURN_STACKADJ_RTX is not defined.
- (expand_eh_return): Likewise. Also, do not pass stack
- adjustment as argument to the eh_return pattern.
- * except.h (MUST_USE_SJLJ_EXCEPTIONS): Do not define just
- because EH_RETURN_STACKADJ_RTX is not defined.
- * unwind-dw.c (uw_update_context_1): If EH_RETURN_STACKADJ_RTX
- is not defined, treat stack pointer like a regular register.
- (uw_init_context_1): Set up fake initial stack pointer register.
- (uw_install_context_1): Do not compute stack adjustment if
- EH_RETURN_STACKADJ_RTX is not defined.
+ PR target/14857
+ Backport from mainline:
- * config/i386/i386.md ("eh_return"): Remove first argument.
- * config/mips/mips.md ("eh_return"): Likewise.
- * config/rs6000/rs6000.md ("eh_return"): Likewise.
- * config/sh/sh.md ("eh_return"): Likewise.
+ * config/ia64/ia64.c (ia64_encode_section_info): Don't prod
+ global register variables.
- * config/s390/s390.h (EH_RETURN_STACKADJ_RTX): Remove.
+2004-04-21 H.J. Lu <hongjiu.lu@intel.com>
-2003-06-08 Richard Henderson <rth@redhat.com>
+ * PR target/14723
+ Backport from mainline:
+ 2004-02-14 Jan Hubicka <jh@suse.cz>
- * stmt.c (expand_asm_operands): Re-word warning.
+ * config.gcc: Add support for nocona/prescott/pentium-m/pentium3m
+ /pentium4m.
+ * i386.c (override_options): Add support for new CPUs.
+ * i386.h (TARGET_CPU_DEFAULT_NAMES): New names.
+ (TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New
+ constants.
+ * invoke.texi: Extend documentation of -mtune/-march for new CPUs.
-2003-06-08 Richard Henderson <rth@redhat.com>
+2004-04-20 Mark Mitchell <mark@codesourcery.com>
- * expr.h (EXPAND_MEMORY): New.
- * expr.c (expand_expr): Check it.
- * stmt.c (expand_asm_operands): Provide it when the constraint
- requires a memory. Warn for memory input constraints without
- a memory operand.
+ * version.c (version_string): Mark as prerelease.
+ * doc/include/gcc-common.texi: Bump version number.
-2003-06-07 Richard Henderson <rth@redhat.com>
+2004-04-18 Release Manager
- * c-common.c (cb_register_builtins): Define __EXCEPTIONS for C also.
+ * GCC 3.4.0 released.
-2003-06-07 Kelley Cook <kelleycook@wideopenwest.com>
+2004-04-18 Alan Modra <amodra@bigpond.net.au>
- * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Remove quotes in
- section names.
+ PR bootstrap/14992
+ * configure.ac: Define HAVE_LD_AS_NEEDED only for linux.
* configure: Regenerate.
+ * gcc.c (init_gcc_specs): Revert earlier change.
-2003-06-07 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (CRT_CALL_STATIC_FUNCTION): Define.
-
-2003-06-06 James E Wilson <wilson@tuliptree.org>
-
- PR inline-asm/10890
- * reload1.c (merge_assigned_reloads): Abort only if two reloads have
- different in fields.
-
-2003-06-06 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/11052
- * ifcvt.c (noce_process_if_block): Fail if the destination has
- side-effects.
-
-2003-06-06 Dan Kegel <dank@kegel.com>
- Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/10331
- * config/sh/t-linux (STMP_FIXPROTO): Define.
-
- PR target/11096
- * config/sh/linux.h (CPLUSPLUS_CPP_SPEC): Redefine so to include
- -D_GNU_SOURCE.
-
-2003-06-05 David Miller <davem@redhat.com>
- Richard Henderson <rth@redhat.com>
+2004-04-18 Mark Mitchell <mark@codesourcery.com>
- * optabs.c (HAVE_conditional_trap): Provide default.
- (gen_conditional_trap): Likewise.
- (init_optabs): Merge init_traps.
- (gen_cond_trap): Use prepare_operand. Restructure and avoid ifdef.
+ PR other/14918
+ * doc/invoke.texi (-fprofile-generate): Document requirement to
+ use -fprofile-generate when linking.
-2003-06-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR bootstrap/14992
+ * gcc.c (init_gcc_specs): Only honor HAVE_LD_AS_NEEDED on
+ GNU/Linux.
- * doc/md.texi (Machine Constraints): Correct the meaning of
- constraints related to floating-point registers on SPARC.
+ * doc/extend.texi (Strong Using): Warn users against using this
+ feature.
-2003-06-05 Eric Botcazou <ebotcazou@libertysurf.fr>
- Paolo Bonzini <bonzini@gnu.org>
+2004-04-17 Richard Sandiford <rsandifo@redhat.com>
- PR target/10663
- * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Redirect
- assembler and linker output to /dev/null.
- Use a 'sed' construct instead of 'grep -A1'.
+ * configure.ac (gcc_cv_ld_as_needed): Use AC_CACHE_CHECK.
* configure: Regenerate.
-2003-06-04 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (*-ibm-aix*): Native as and ld required
- to bootstrap on AIX 5L.
-
-2003-06-04 Richard Henderson <rth@redhat.com>
-
- * c-common.c (handle_cleanup_attribute): New.
- (c_common_attributes): Add it.
- * c-decl.c (finish_decl): Honor the cleanup attribute.
- * doc/extend.texi (Variable Attributes): Document it.
-
- * unwind-c.c: New file.
- * Makefile.in (LIB2ADDEH): Add it.
- * config/t-darwin, config/t-linux, config/t-linux-gnulibc1,
- config/ia64/t-ia64: Likewise.
-
-2003-06-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11018
- * config/sparc/sparc.c (sparc_v8plus_shift): Use which_alternative
- consistently to decide whether the scratch register is really
- required.
-
-2003-06-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/10876
- * config/sparc/sparc.h (CONST_OK_FOR_LETTER): Add
- new 'O' constraint for constant 4096.
- (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
- * config/sparc/sparc.md (adddi3 expander): Canonicalize pattern.
- Do not transform into MINUS insn for constant 4096.
- (*adddi3_sp64 insn): Canonicalize pattern. Add new alternative
- for constant 4096 as third operand.
- (addsi3 expander): Remove.
- (*addsi3 insn): Rename into 'addsi3'. Canonicalize pattern. Add
- new alternative for constant 4096 as third operand.
- (subdi3 expander): Do not transform into PLUS insn for constant 4096.
- (*subdi3_sp64 insn): Add new alternative for constant 4096 as third
- operand.
- (subsi3 expander): Remove.
- (*subsi3 insn): Rename into 'subsi3'. Add new alternative for
- constant 4096 as third operand.
- * doc/md.texi (Machine Constraints): Document new 'O' constraint for
- the SPARC port.
-
-2003-06-03 Richard Henderson <rth@redhat.com>
-
- * unwind.inc (_Unwind_Resume_or_Rethrow): Fix return type.
- * unwind.h (_Unwind_Resume_or_Rethrow): Update.
- (_Unwind_SjLj_Resume_or_Rethrow): Likewise.
-
-2003-06-03 Douglas B Rupp <rupp@gnat.com>
-
- * Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry.
- * doc/gcc.texi: Remove vms.texi section.
- * doc/vms.texi: Remove obsolete file.
-
-2003-06-03 Richard Henderson <rth@redhat.com>
-
- PR target/10673
- * config/i386/i386.c (ix86_split_long_move): Fix base register
- mode for XFmode splits for TARGET_64BIT.
-
-2003-06-02 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * gcc/config.gcc Add support multilib parts for m32rx processor.
-
-2003-06-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/11044
- * config/i386/i386.md (length attribute): Set length to 4
- for instructions of type "fcmp".
-
-2003-06-01 Josef Zlomek <zlomekj@suse.cz>
-
- * rtl.def (CONST_DOUBLE): Update comment.
-
-2003-06-01 Seth Arnold <sarnold@wirex.com>
- Aldy Hernandez <aldyh@redhat.com>
-
- PR10871
- * config/rs6000/rs6000.c (rs6000_stack_info): Do not add
- vrsave_size twice.
-
-2003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/install.texi (mips-sgi-irix5): Add missing
- HTML <hr> marker.
-
-2003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/md.texi (Machine Constraints): Document
- missing SPARC constraints.
-
-2003-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-04-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * doc/md.texi (Automaton pipeline description): Use
- "type" instead of "cpu" as the attribute in the examples.
+ * config.gcc (i[34567]86-*-solaris2*): Default to DWARF-2
+ debugging on Solaris 7 and up.
-2003-05-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Move
- -mdebug/-no-mdebug switches ...
- (MDEBUG_ASM_SPEC): ... here.
- Use only with gas.
- (EXTRA_SPECS): Initialize mdebug_asm_spec.
- (CONSTANT_ADDRESS_P): Allow native IRIX 6 O32 assembler.
+ * doc/install.texi (Specific, mips-sgi-irix5): Reflect working
+ IRIX 5 port.
+ Remove -save-temps workaround, handled automatically.
+ Require GNU binutils 2.15 for debugging.
+ Remove SGI make warnings since GNU make is now required.
+ (Specific, mips-sgi-irix6): Some markup fixes.
+ Describe MIPSpro C problems and workarounds.
+ Mention working O32 ABI support.
+ Recommend GNU as 2.15 for O32 with debugging.
+ Remove description of fixed structure pass/return bug.
-2003-05-29 Gabriel Dos Reis <gdr@integrable-solutions.net>
+2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * diagnostic.h (output_verbatim): Remove printf attribute.
- (verbatim): Likewise.
- * diagnostic.c (output_pointer): New function.
- (output_format): Use it. Handle %p format specifier.
-
-2003-05-27 Denis Chertykov <denisc@overta.ru>
-
- * cselib.c (cselib_invalidate_regno): Abort if hardreg have a
- VOIDmode.
- * cselib.c (cselib_process_insn): Pass reg_raw_mode for hardreg in
- call of cselib_invalidate_regno.
-
-2003-05-25 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Update Kean Johnston.
-
-Fri May 23 21:19:31 CEST 2003 Jan Hubicka <jh@suse.cz>
- Andreas Jaeger <aj@suse.de>
-
- * i386.h (TARGET_CPU_CPP_BUILTINS): Define __amd64 and __amd64__;
- do not use assertion.
-
-Fri May 23 20:55:39 CEST 2003 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_loadss, sse_loadss_1, sse2_loadsd, sse2_loadsd_1):
- Rewrite
-
-2003-05-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/install.texi: Remove sparc64-*-*. Add sparc64-*-solaris2*.
- Document sparcv9-*-solaris2* as a synonym for sparc64-*-solaris2*.
-
-2003-05-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR bootstrap/10805
- * doc/install.texi (sparc-sun-solaris2.7): Document bootstrap
- failure with Sun assembler 5.0 Alpha 03/27/98.
-
-2003-03-21 Loren James Rittle <ljrittle@acm.org>
-
- * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Add -D__sparcv9
- -D__sparc__ to match system compiler convention.
-
-2003-05-20 Kevin Ryde <user42@zip.com.au>
- Wolfgang Bangerth <bangerth@dealii.org>
-
- PR c/10355
- * doc/extend.texi: Put a warning into the documentation
- of attribute regparm.
-
-2003-05-20 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*iordi3_oi"): Do not mark commutative.
- ("*iorsi3_oi"): Likewise.
-
-2003-05-19 John David Anglin <dave.anglin@nrc-gnrc.gc.ca>
-
- * pa/milli64.S ($$mulI): Fix typo.
-
-2003-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * hashtable.h (struct ht_identifier): Add new field "hash_value".
- * hashtable.c (ht_lookup): Use it.
- (ht_expand): Likewise. Avoid doing the same computation twice.
- * tree.h (IDENTIFIER_HASH_VALUE): New macro.
-
-2003-05-19 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (use_return_insn): Do not use a single return
- instruction for interrupt handlers which have to create a stack
- frame.
- (arm_expand_prologue): Do not pre-bias the return address of
- interrupt handlers which create a stack frame.
+ * aclocal.m4 (gcc_AC_PROG_GNAT): Check if ${CC} produces object
+ file for Ada compilation.
+ Fix gcc_cv_cc_supports_ada spelling.
+ * configure: Regenerate.
-2003-05-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-04-14 Zack Weinberg <zack@codesourcery.com>
+ PR 14936
Backport from mainline:
+ 2004-03-12 Matt Austern <austern@apple.com>
- 2003-05-10 Alexander Aganichev <aaganichev@yandex.ru>
-
- * config/i386/i386.h (MODES_TIEABLE_P): Fix typo.
-
-2003-05-16 Wolfgang Bangerth <bangerth@dealii.org>
-
- * doc/bugreport.texi: Remove most of the preface of the
- bugs section.
-
-2003-05-16 Nick Clifton <nickc@redhat.com>
-
- * config/mcore/mcore.md (jump): Use emit_jump_insn to generate the
- jump insn.
-
-2003-05-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+ * varasm.c (make_decl_one_only): Don't use DECL_COMMON if
+ we're compiling for a SUPPORTS_ONE_ONLY target.
- * doc/invoke.texi (Warning Options): Mark -Wmissing-declarations
- as a C only option.
+2004-04-09 Zack Weinberg <zack@codesourcery.com>
-2003-05-15 Wolfgang Bangerth <bangerth@dealii.org>
-
- * doc/bugreport.texi: Remove most of the bug reporting
- instructions and merge them into bugs.html.
-
-2003-05-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sparc.c (print_operand): Fix uninitialized warning.
-
-2003-05-14 Mark Mitchell <mark@codesourcery.com>
-
- * version.c: Reset to prerelease format.
- * doc/include/gcc-common.texi: Update version number.
-
-2003-05-13 Release Manager
-
- * GCC 3.3 Released.
-
-2003-05-12 Mark Mitchell <mark@codesourcery.com>
-
- PR other/10745
- * configure.in: Correct detection of GNU ld version number.
- * configure: Regenerated.
+ * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Look only at
+ mode argument.
+ * config/ia64/ia64.c (ia64_hpux_file_end): Check
+ TREE_SYMBOL_REFERENCED on DECL_ASSEMBLER_NAME, not DECL_NAME.
-2003-05-08 J"orn Rennecke <joern.rennecke@superh.com>
+2004-04-08 Mark Mitchell <mark@codesourcery.com>
- * sh.c (gen_block_redirect, split_branches): Use
- CODE_FOR_jump_compact instead of CODE_FOR_jump
+ * doc/invoke.texi (Precompiled Headers): Warn about known
+ problems.
-2003-05-06 Eric Christopher <echristo@redhat.com>
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
- * config/mips/linux.h: Fix typo.
+ PR ada/14538
+ * ada/5rosinte.adb: Remove fake mprotect() body.
+ * ada/5rosinte.ads: Add SA_SIGINFO. Make pthread_key_t a type
+ which can be set since Finalize_TCB in 7staprop.adb does not
+ go through the Set_Specific interface.
+ * ada/5rtpopsp.adb: Rewrite to use new interface.
+ * ada/init.c: Reorder so the simple single OS conditional __rtems__
+ is tested before more complex ones which mix UNIX and embedded
+ systems in the conditional.
-2003-05-06 Ulrich Weigand <uweigand@de.ibm.com>
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
- PR other/10650
- * unwind-dw2.c (uw_update_context_1): Don't set sp as cfa on s390.
- (uw_init_context_1): Set initial sp to outer cfa on s390.
+ PR ada/14665
+ * ada/osint.adb (Find_Program_Name): Rework to properly handle
+ filenames which end in .exe or have versioning suffixes like VMS.
-2003-05-06 Mark Mitchell <mark@codesourcery.com>
+2004-04-08 Joseph S. Myers <jsm@polyomino.org.uk>
- PR other/10658
- * gcc.c (process_command): Update copyright date.
-
-2003-05-06 Bruce Korb <bkorb@gnu.org>
-
- * inclhack.def: fix up whitespace differences from mainline.
- mark fix tests that fail on BSD systems (like mainline).
- Fixup the solaris_mutex_init test to cope with Sol. 2.6 (like mainline).
- Removed unused SONY commentary (its obsolete anyway).
- (svr4_mach_defines): remove i860 machine from comment (like mainline).
- * gcc/fixinc/tests/base/pthread.h: solaris_mutex_init fix tests
- * gcc/fixinc/tests/base/testing.h: remove ^M chars from some mistake
- * gcc/fixinc/tests/base/Xm/Traversal.h: accommodate BSD's sed
- * gcc/fixinc/tests/base/sys/stat.h: accommodate BSD's sed
- * gcc/fixinc/fixincl.x: regenerated
-
-2003-05-06 Phil Edwards <pme@gcc.gnu.org>
-
- * doc/install.texi (mips-*-*): Add note about libstdc++.
-
-2003-05-05 Mark Mitchell <mark@codesourcery.com>
- Kean Johnston <jkj@sco.com>
-
- * toplev.c (check_global_declarations): Do not warn about unused
- static consts.
-
-2003-05-05 Richard Henderson <rth@redhat.com>
-
- * builtins.c (expand_builtin) <BUILT_IN_DWARF_FP_REGNUM>: Remove.
- <BUILT_IN_DWARF_SP_COLUMN>: New.
- * builtins.def (BUILT_IN_DWARF_FP_REGNUM): Remove.
- (BUILT_IN_DWARF_SP_COLUMN): New.
- * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Remove.
- (expand_builtin_dwarf_sp_column): New.
- * except.h: Update to match.
- * unwind-dw2.c (execute_stack_op): Correct stack push typo.
- (execute_cfa_program): Record location expression address
- before extracting length.
- (uw_update_context_1): Install old CFA into stack pointer column.
- (uw_init_context_1): Set cfa_reg to stack pointer column.
-
-2003-05-05 David O'Brien <obrien@FreeBSD.org>
-
- * config/rs6000/sysv4.h (CPP_OS_FREEBSD_SPEC): Add __ELF__ to mirror
- other FreeBSD ports.
- (LINK_OS_FREEBSD_SPEC): Mirror conventions on other FreeBSD ports.
-
-2003-05-05 Jason Merrill <jason@redhat.com>
-
- * stor-layout.c (update_alignment_for_field): Set DECL_ALIGN for
- the field.
-
-2003-05-02 Zack Weinberg <zack@codesourcery.com>
-
- PR c/10604
- * c-opts.c (c_common_decode_option <OPT_Wall>): Set
- warn_sign_compare for C++ only.
- * doc/invoke.texi: Clarify documentation of -Wsign-compare.
-
-2003-05-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Add Zdenek Dvorak, Aldy
- Hernandez, and Kazu Hirata.
-
-2003-05-02 Richard Henderson <rth@redhat.com>
-
- PR c++/10570
- * except.c: Revert 04-01 and 04-02 forced-unwind changes.
- * flags.h, toplev.c, doc/invoke.texi: Likewise.
-
- * unwind-dw2.c (_Unwind_GetCFA): Fix ptr->int conversion warning.
- * unwind.inc (_Unwind_DeleteException): Check for null
- exception_cleanup.
-
- * unwind-sjlj.c (_Unwind_SjLj_Resume_or_Rethrow): New.
- * unwind.inc (_Unwind_Resume_or_Rethrow): New.
- * unwind.h: Declare them.
- * libgcc-std.ver (GCC_3.3): Export them.
-
-2003-05-02 Steven Bosscher <steven@gcc.gnu.org>
-
- * tree-inline.c (find_alloca_call):
- Use walk_tree_without_duplicates, instead of walk_tree.
- (find_builtin_longjmp_call): Ditto.
- * c-objc-common.c (c_cannot_inline_fn): Ditto.
-
-2003-05-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Add Daniel Berlin.
-
-2003-05-01 Rodney Brown <rbrown64@csc.com.au>
-
- * rtl.h (subreg_offset_representable_p): Prototype.
-
-2003-05-01 Roger Sayle <roger@eyesopen.com>
-
- PR fortran/9974
- * gcse.c (reg_killed_on_edge): New function to test whether the
- given reg is overwritten by any instruction queued on an edge.
- (bypass_block): Ignore substitutions killed on incoming edges.
- Don't bypass outgoing edges that have queued instructions.
-
-2003-04-30 Andreas Schwab <schwab@suse.de>
+ * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a,
+ rpc_xdr_lvalue_cast_b): New fixes.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/rpc/xdr.h: Add new tests.
- * doc/extend.texi (Other Builtins): Enclose multiple word data
- type in braces for @deftypefn.
+2004-04-06 Mark Mitchell <mark@codesourcery.com>
-2003-04-29 Jason Merrill <jason@redhat.com>
+ * config/darwin.h (LINK_COMMAND_SPEC): Change c++filt3 to c++filt.
- PR middle-end/10336
- * jump.c (never_reached_warning): Really stop looking if we reach
- the beginning of the function.
+2004-04-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-Tue Apr 29 21:07:00 CEST 2003 Jan Hubicka <jh@suse.cz>
+ * doc/install.texi: Update HP-UX 11 installation procedure.
- * cse.c (count_reg_usage): Revert my previous patch.
+2004-04-05 Jakub Jelinek <jakuB@redhat.com>
+ John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-04-29 Alexander Kabaev <kan@FreeBSD.ORG>
+ PR optimization/13424 (hppa), bootstrap/14462, c/14828
+ * pa.md: Use replace_equiv_address to retain the attributes of the
+ memory operands used in the split and peephole2 patterns for optimizing
+ the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.
- bootstrap/10452
- * gengtype-yacc.y: Improve portability.
+2004-04-05 Alexandre Oliva <aoliva@redhat.com>
-2003-04-29 Zack Weinberg <zack@codesourcery.com>
+ * cppinit.c (cpp_read_main_file): Return file name obtained by
+ read_original_filename. Missed in 2004-02-04's check in to 3.4
+ branch by Per Bothner.
- * config.gcc: Install obsolete target list for GCC 3.3.
- * doc/install.texi: Mention in specific-target instructions
- that certain configurations are deprecated.
+2004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-04-29 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+ * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set
+ to DWARF2_DEBUG unconditionally.
+ (ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally.
- * c-pragma.c (maybe_apply_renaming_pragma): Fix typo.
- * gcc.c (display_help): Likewise.
- * toplev.c (f_options): Likewise.
- * params.def (PARAM_MAX_INLINE_SCOPE): Likewise.
- * config/c4x/c4x.h (TARGET_SWITCHES): Likewise.
- * config/mcore/mcore.h (TARGET_SWITCHES): Likewise.
- * config/s390/s390.h (TARGET_SWITCHES): Likewise.
- * config/v850/v850.h (TARGET_SWITCHES): Likewise.
+2004-04-04 Mark Mitchell <mark@codesourcery.com>
-2003-04-29 Danny Smith <dannysmith@users.sourceforge.net>
+ PR c++/14804
+ * varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
+ RECORD_TYPEs.
- * config/i386/mingw32.h (LIBGCC_SPEC): Add libmingwex.a.
- Update copyright.
- * config/i386/cygwin.h (LIBGCC_SPEC): Add libmingwex.a, for
- -mno-cygwin case.
+2004-04-02 Jakub Jelinek <jakub@redhat.com>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-04-29 J"orn Rennecke <joern.rennecke@superh.com>
+ PR optimization/13424, optimization/12419
+ * explow.c (maybe_set_unchanging): Revert 2003-04-07 patch.
+ Set RTX_UNCHANGING_P even for read-only DECL_EXTERNAL decls.
+ * expr.c (store_constructor): When clearing aggregate because
+ of an incomplete or mostly zero constructor, do the clearing
+ without /u flag and then emit a blockage.
- * varasm.c (default_assemble_visibility): Use assemble_name.
+2004-04-01 Alan Modra <amodra@bigpond.net.au>
+ Jakub Jelinek <jakub@redhat.com>
-2003-04-29 David O'Brien <obrien@FreeBSD.org>
+ * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
+ -lgcc --as-needed -lgcc_s --no-as-needed by default.
+ * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
+ * configure: Rebuilt.
+ * config.in: Rebuilt.
+ * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
+ (stage2-start, stage3-start, stage4-start): Likewise.
+ (stageprofile-start, stagefeedback-start): Likewise.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
+ * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
+ * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
+ with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
+ * config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
+ * config/sparc/t-linux: Removed.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/14755
+ * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
+ "bitfld++ == const" to "++bitfld == const + incr" transformations.
+
+2004-03-30 Aldy Hernandez <aldyh@redhat.com>
+
+ PR 14219
+ * c-typeck.c (build_binary_op): Do not allow comparisons of
+ vectors.
+
+2004-03-26 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR target/14206
+ * doc/install.texi (Specific): Document that exec-shield-randomize
+ interferes with precompiled headers.
+
+2004-03-26 Richard Henderson <rth@redhat.com>
+
+ PR 11527
+ * c-typeck.c (pop_init_level): Emit pending init elements earlier
+ rather than later.
+
+2004-03-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
+ * config/sparc/t-linux: New file.
+
+2004-03-25 Jan Hubicka <jh@suse.cz>
+
+ PR debug/13974
+ * cfgrtl.c (try_redirect_by_replacing_jump,
+ force_nonfallthru_and_redirect, commit_one_edge_insertion,
+ cfg_layout_merge_blocks): Do not attach any line number information
+ to newly inserted instructions.
+ * emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to
+ emit_insn_*_noloc.
+ (emit_*insn_before, emit_insn*_after): New.
+ (emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite
+ existing locators.
+ * rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare.
+ (emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill.
+
+2004-03-24 Steven Bosscher <stevenb@suse.de>
+
+ PR pch/14137
+ * c-pch.c (struct c_pch_validity): New flags_info field.
+ (FLAG_UNIT_AT_A_TIME_SET): New definition.
+ (pch_init): Write out the flags_info field to the PCH. Set the
+ FLAG_UNIT_AT_A_TIME_SET bit of the field if flag_unit_at_a_time
+ is set.
+ (c_common_valid_pch): Make sure the flag settings used for compiling
+ the PCH are the same as those used in the current compilation.
- * config/i386/freebsd64.h (LINK_SPEC): Mirror FreeBSD linker.
- * config/rs6000/freebsd.h (LINK_SHLIB_SPEC): New macro.
- (SIZE_TYPE): New macro.
- * config/i386/freebsd-aout.h (NO_PROFILE_COUNTERS): New macro.
- (SET_ASM_OP): New macro.
- (HANDLE_SYSV_PRAGMA): New macro.
- (ASM_WEAKEN_LABEL): New macro.
+2004-03-24 Alexandre Oliva <aoliva@redhat.com>
-2003-04-28 Mark Mitchell <mark@codesourcery.com>
+ PR preprocessor/14438
+ * cpplib.c (do_pragma): Remove line_change call after pragma
+ handler.
- PR c++/10180
- * tree-inline.c (expand_call_inline): Call push_srcloc when
- encountering EXPR_WITH_FILE_LOCATION. Honor warn_inline.
+2004-03-23 Ian Lance Taylor <ian@wasabisystems.com>
-2003-04-28 Mike Stump <mrs@apple.com>
+ * doc/extend.texi (ARM Built-in Functions): Replace with correct
+ declarations.
- * gdbinit.in: Update to reflect new identifier structure.
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
-2003-04-28 Richard Henderson <rth@redhat.com>
+ PR optimization/14669
+ * fold-const.c (fold): Only unwiden integer comparisons for equality
+ and inequality operators, or when the signedness doesn't change.
- * config/sparc/sparc.c (print_operand): Add 's' to sign-extend.
- * config/sparc/sparc.md (const_mulsidi3_v8plus): Fix mode of
- integral constant mult operand.
- (const_mulsidi3_sp32, const_mulsidi3_sp64): Likewise.
- (const_smulsi3_highpart_v8plus): Likewise.
- (const_smulsi3_highpart): Likewise.
- (const_umulsidi3_sp32): Likewise; sign-extend it in the output.
- (const_umulsidi3_sp64, const_umulsidi3_v8plus): Likewise.
- (const_umulsi3_highpart_v8plus): Likewise.
- (const_umulsi3_highpart): Likewise.
+2004-03-23 Jason Merrill <jason@redhat.com>
-2003-04-28 David O'Brien <obrien@FreeBSD.org>
+ PR c++/14587
+ * config/i386/winnt.c (associated_type): Look for attributes on
+ the TYPE_MAIN_VARIANT of *this.
- * config/i386/i386.h (builtin_define): Add __amd64 and __amd64__.
+2004-03-21 Mark Mitchell <mark@codesourcery.com>
-Mon Apr 28 09:54:56 CEST 2003 Jan Hubicka <jh@suse.cz>
+ PR c/13129
+ * c-decl.c (warn_if_shadowing): Don't warn about a new declaration
+ of a file-scope entity.
- PR c/10308
- * reload.c (find_reloads_address_1): Reload plus at the place of
- index register.
+2004-03-22 Jakub Jelinek <jakub@redhat.com>
-2003-04-26 Richard Henderson <rth@redhat.com>
+ PR c/14069
+ * c-decl.c (finish_struct): Change type of incorrect flexible array
+ field into error_mark_node.
- * config/ia64/ia64.c (ia64_compute_frame_size): Allow inline asm
- to clobber ar.pfs and ar.unat.
- (ia64_expand_prologue): Force alloc instruction if ar.pfs saved;
- fix test for spilling ar.pfs to the stack.
+2004-03-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-2003-04-26 Stephane Carrez <stcarrez@nerim.fr>
+ PR target/14260
+ * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC.
- * doc/install.texi (Binaries): Mention binaries for HC11/HC12.
+2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-04-26 Stephane Carrez <stcarrez@nerim.fr>
+ PR middle-end/14470
+ * expr.c (mark_queue): New function.
+ (emit_insns_enqueued_after_mark): New function replacing
+ emit_queue. Clear the body of emitted queued insns.
+ (emit_queue): Call emit_insns_enqueued_after_mark.
+ (store_expr): Mark the increment queue on entry. Emit
+ only the incrementations queued when expanding the source.
- * doc/extend.texi (Function Attributes): Document "near" and "far"
- for 68HC11 and 68HC12.
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
-2003-04-25 Bob Wilson <bob.wilson@acm.org>
+ * gcov-io.h: Update copyright year.
- * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Back out previous
- addition of __PIC__ and __pic__ macros.
- * config/xtensa/xtensa.h: Clean up indentation.
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
-2003-04-25 Bob Wilson <bob.wilson@acm.org>
+ PR target/14291
+ * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for
+ __MINGW32__.
- * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Remove definition of
- _GNU_SOURCE. Add definitions of __PIC__ and __pic__.
- (SUBTARGET_CPP_SPEC): Define.
- (LIB_SPEC): Delete.
- * config/xtensa/xtensa-protos.h (xtensa_declare_object): Delete.
- * config/xtensa/xtensa.c (xtensa_declare_object): Delete.
- * config/xtensa/xtensa.h (CPP_SPEC, SUBTARGET_CPP_SPEC, EXTRA_SPECS):
- Define.
- (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
- (ASM_OUTPUT_ALIGNED_BSS, BSS_SECTION_ASM_OP): Define.
+2004-03-21 Roger Sayle <roger@eyesopen.com>
-2003-04-25 Richard Henderson <rth@redhat.com>
+ PR target/13889
+ * cse.c (fold_rtx): Avoid substituting constants into unary
+ conversion operations.
- PR opt/10315
- * config/rs6000/rs6000.c (rs6000_emit_move): Only elide proper
- checks during reload; use validize_mem instead of adjust_address.
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
-Fri Apr 25 15:43:23 CEST 2003 Jan Hubicka <jh@suse.cz>
+ * frontends.texi: Add missing line.
- * emit-rtl.c (subreg_hard_regno): Check that register is
- representable.
- * reload.c (reload_inner_reg_of_subreg): When register is not
- representable, reload the whole thing.
- (find_reloads): Likewsie.
- * rtlanal.c (subreg_representable_p): New function.
+2004-03-21 Zack Weinberg <zack@codesourcery.com>
+ Chris Devers <cdevers@pobox.com>
+ Joseph S. Myers <jsm@polyomino.org.uk>
-Sun Apr 20 18:23:18 CEST 2003 Richard Henderson <rth@redhat.com>
+ * doc/frontends.texi: Rewrite.
+ * doc/gcc.texi: Update last modification date.
- (backported to 3.3 by Jan Hubicka)
+2004-03-20 Ian Lance Taylor <ian@wasabisystems.com>
- * config/ia64/ia64.md (UNSPECV_SETJMP_RECEIVER): New.
- (builtin_setjmp_receiver): Delay call to ia64_reload_gp
- until after reload.
+ PR c/12373
+ * c-typeck.c (tagged_types_tu_compatible_p): Don't use
+ DECL_ORIGINAL_TYPE if there isn't one.
- * emit-rtl.c (try_split): Handle 1-1 splits of call insns properly.
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
- * config/ia64/ia64.c (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
- (ia64_gp_save_reg): Remove.
- (struct ia64_frame_info): Move to the beginning of the file;
- add reg_save_gp.
- (ia64_expand_call): Rearrange for new call patterns.
- (ia64_reload_gp): New.
- (ia64_split_call): New.
- (ia64_compute_frame_size): Allocate reg_save_gp.
- (ia64_expand_prologue): Save reg_save_gp.
- (ia64_expand_epilogue): Don't restore gp.
- (ia64_hard_regno_rename_ok): Remove R4 hack.
- (ia64_function_ok_for_sibcall): New.
- (ia64_output_mi_thunk): Set reload_completed, no_new_pseudos;
- call try_split on sibcall pattern.
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.md (call_nogp, call_value_nogp, sibcall_nogp):
- Rename from nopic versions. Confiscate 2nd argument to call as
- a marker.
- (call_pic, call_value_pic, sibcall_pic): Remove.
- (call_gp, call_value_gp, sibcall_gp): New.
- (builtin_setjmp_setup): Remove.
- (builtin_setjmp_receiver): Call ia64_reload_gp.
+ PR other/14630
+ * doc/install.texi: Add info directory category and entry.
-2003-04-24 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
- PR opt/8705
- * gcse.c (try_replace_reg): On a successful substitution of a constant
- into a single set, try to simplify the source of the set.
- * loop.c (scan_loop): Don't try to optimize a MODE_CC set with a
- constant source.
+ PR c/14635
+ * builtins.def (nan, nanf, nanl, nans, nansf, nansl): Change to
+ DEF_GCC_BUILTIN.
-2003-04-24 Alexander Kabaev <kan@FreeBSD.ORG>
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
- bootstrap/10453
- * config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using
- const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets
- where they might be not present. Use their _sp64 equivalent
- instead.
+ * c-common.c (pointer_int_sum): Do not complain about using
+ pointers to pointers-to-members.
-2003-04-23 Richard Henderson <rth@redhat.com>
+ * c-decl.c (grokdeclarator): Do not complain about redeclaring
+ visible "static" identifiers "extern" in a local scope.
+ * dwarf2out.c (loc_descriptor_from_tree): Handle pre- and
+ post-increments/decrements.
- PR opt/8300
- * toplev.c (rest_of_compilation): Delay no_new_pseudos until
- after initialize_uninitialized_subregs; update reg info assuming
- new pseudos were created.
+2004-03-17 Jakub Jelinek <jakub@redhat.com>
-2003-04-23 Olivier Hainque <hainque@act-europe.fr>
+ * config/rs6000/t-linux64 (bispecs): Don't add -mlong-double-128 for
+ 32-bit builds when defaulting to 32-bit.
- * config/pa/pa.md (extv, extzv): FAIL if the bitfield length is zero.
+2004-03-17 Richard Sandiford <rsandifo@redhat.com>
-2003-04-23 James A Morrison <ja2morri@uwaterloo.ca>
+ PR target/14599
+ * config/mips/mips.md (UNSPEC_GP): New constant.
+ * config/mips/mips.c (CONST_GP_P): Expect the CONST to contain
+ an UNSPEC instead of (reg $gp).
+ (mips16_gp_pseudo_reg): Change accordingly.
+ (print_operand): Print $gp directly when handling CONST_GP_P.
- * invoke.texi: Eliminate extra white-space caused by @gccoptlist{
- on its own line.
- Ensure there are two spaces between each pair of options and add
- @gol where appropriate.
+2004-03-16 Mark Mitchell <mark@codesourcery.com>
-2003-04-23 Ulrich Weigand <uweigand@de.ibm.com>
+ PR c++/14481
+ * fold-const.c (fold): Set TREE_NO_UNUSED_WARNING on implicitly
+ generated COMPOUND_EXPRs.
- * config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop.
+2004-03-16 Nathanael Nerode <neroden@gcc.gnu.org>
-2003-04-22 Devang Patel <dpatel@apple.com>
+ PR bootstrap/12974
+ * Makefile.in: Pass $(INCLUDES) down to libgcc.mk explicitly.
- * cpptrad.c (_cpp_replacement_text_len): Add check for macro parameter count.
- (_cpp_copy_replacement_text): Same.
+2004-03-16 Richard Henderson <rth@redhat.com>
-2003-04-22 Richard Henderson <rth@redhat.com>
+ PR middle-end/14535
+ * except.c (collect_one_action_chain): Create action record for
+ cleanup outer of exception spec.
- PR 8866
- * rtl.h (MEM_NOTRAP_P): New.
- (MEM_COPY_ATTRIBUTES): Copy it.
- * rtlanal.c (may_trap_p): Check it.
- * expr.c (do_tablejump): Set it.
+2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
- * cfgrtl.c (try_redirect_by_replacing_jump): Revert last three changes.
+ PR target/14577
+ * config.gcc: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff.
-2003-04-22 David Turner <novalis@gnu.org>
+2004-03-15 Richard Henderson <rth@redhat.com>
- * gbl-ctors.h: Add special license exception.
- * libgcc2.h: Likewise.
- * tsystem.h: Likewise.
- * gcov-io.h: Likewise.
+ PR target/14547
+ * target.h (struct gcc_target): Move calls substructure before
+ booleans. Add split_complex_arg.
+ * function.c (assign_parms, split_complex_args): Use it.
+ * calls.c (expand_call): Likewise.
+ (split_complex_values): Likewise. Check for splittable types
+ before allocating memory.
+ (split_complex_types): Likewise.
+ * system.h (SPLIT_COMPLEX_ARGS): Poison.
+ * expr.h (SPLIT_COMPLEX_ARGS): Remove.
+ * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.c (alpha_split_complex_arg): New.
+ (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ (rs6000_override_options): Zap it for non-AIX.
+ (rs6000_function_value): Use targetm.calls.split_complex_arg.
+ * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove.
+ * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old
+ SPLIT_COMPLEX_ARGS entry.
-2003-04-21 Mark Mitchell <mark@codesourcery.com>
+2004-03-15 Eric Botcazou <ebotcazou@act-europe.fr>
- * Makefile.in (calls.o): Depend on except.h.
- * calls.c: Include except.h.
- (emit_call_1): Call note_eh_region_may_contain_throw if
- appropriate.
- * except.c (eh_region): Add may_contain_throw.
- (expand_eh_region_end_cleanup): Do not include handler code when
- it cannot be reached.
- (note_eh_region_may_contain_throw): New function.
- * except.h (note_eh_region_may_contain_throw): New function.
+ * config/sparc/sparc.h: Rework comments about the code model
+ in 64-bit environment and the mode 'Pmode'.
+ * doc/invoke.texi (SPARC options): Rework description of the
+ different code models supported in 64-bit environment.
-2003-04-21 Mark Mitchell <mark@codesourcery.com>
+2004-03-14 Joseph S. Myers <jsm@polyomino.org.uk>
- * config/i386/winnt.c (i386_pe_mark_dllimport): Revert previous
- changes.
+ * doc/contrib.texi, doc/extend.texi, doc/gcov.texi,
+ doc/install.texi, doc/invoke.texi, doc/makefile.texi,
+ doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize
+ "gcc", "g++" and "g77" or mark up with appropriate markup. Adjust
+ wording and grammar.
-2003-04-21 Mark Mitchell <mark@codesourcery.com>
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
- * config/i386/winnt.c (i386_pe_}ark_dllimport): Make the new RTL
- have the same form as the old RTL.
+ PR c/14114
+ * c-decl.c (merge_decls): Do not copy the C_DECL_INVISIBLE flag
+ from the new decl to the old decl.
+ (pushdecl): Use lookup_name to search for a previous decl with the
+ same identifier.
-2003-04-18 Mark Mitchell <mark@codesourcery.com>
+2004-03-13 Dara Hazeghi <dhazeghi@yahoo.com>
- * cfgrtl.c (try_redirect_by_replacing_jump): Create a basic block
- for orphaned jump tables.
+ * doc/install.texi: Note status of -fnew-ra.
-2003-04-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR/8705
- * pa.md (movccfp): New expander.
- (setccfp0, setccfp1): Rename to movccfp0 and movccfp1, respectively.
- Reverse fcmp conditions.
+ PR middle-end/14470
+ * expr.c (store_expr): Call emit_queue before generating the move
+ from the temporary to the original target. Protect the temporary
+ from emit_queue.
-2003-04-20 Marek Michalkiewicz <marekm@amelek.gda.pl>
+2004-03-13 Jakub Jelinek <jakub@redhat.com>
- * config/avr/avr.md (*cmpqi_sign_extend): Handle negative values
- of operand 1 correctly.
+ PR target/14533
+ * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
+ other than UNSPEC_GOTOFF.
-2003-04-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-03-13 Dean Ferreyra <dferreyra@igc.org>
- * cfgrtl.c (try_redirect_by_replacing_jump): Remove unused variables.
- * flow.c (life_analysis): Fix warning.
+ PR target/14047
+ * config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
+ (avr_insert_attributes): Pass "attributes" to avr_progmem_p.
+ * config/avr/avr-protos.h (avr_progmem_p): Change prototype.
-2003-04-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-03-12 David Edelsohn <edelsohn@gnu.org>
- * doc/contrib.texi (Contributors): Prefer "bug fix" over "bugfix".
- Add Segher Boessenkool.
+ * doc/install.texi (*-ibm-aix*): Document assembler and achiver
+ fixes required by libstdc++ and update installation instructions
+ for libstdc++.a. Document use of Bash to speed up configuration.
-2003-04-18 Alexander Sotirov <sluncho@mirizma.org>
+2004-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR c/9177
- * c-decl.c (c_expand_body): Don't garbage collect the function
- body if we are going to dump it later.
+ * doc/tm.texi (registers) <Values in Registers>: Add
+ entry for REGMODE_NATURAL_SIZE.
-2003-04-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-03-11 Richard Henderson <rth@redhat.com>
- PR optimization/7675
- * c-typeck.c (build_external_ref): Set the DECL_NONLOCAL flag
- on VAR_DECL, PARM_DECL and FUNCTION_DECL from within
- nested functions if they refer to declarations from parent functions.
- * stmt.c (expand_decl): Don't put automatic variables in registers
- if the DECL_NONLOCAL flag is set.
+ PR target/14539
+ * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128.
-2003-04-17 Janis Johnson <janis187@us.ibm.com>
+2004-03-12 Alan Modra <amodra@bigpond.net.au>
- * doc/sourcebuild.texi (Test Suites): Document support for testing
- binary compatibility (moved from testsuite/README.compat).
+ * real.c (encode_ibm_extended): Do round low word.
-2003-04-17 Simon Law <sfllaw@engmail.uwaterloo.ca>
+2004-03-11 Richard Henderson <rth@redhat.com>
- * doc/include/gpl.texi: Fix double-spacing after "MA" to match
- the one provided by the FSF.
+ PR middle-end/14477
+ * except.c (remove_unreachable_regions): Look thru CALL_PLACEHOLDER.
-2003-04-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-03-11 Richard Sandiford <rsandifo@redhat.com>
- * doc/install.texi (Binaries): Update URL and list of platforms
- provided by ftp.thewrittenword.com.
+ PR target/14496
+ * config/mips/mips.h (UNITS_PER_FPVALUE): Fix value for
+ TARGET_SINGLE_FLOAT.
-2003-04-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-03-11 Kelley Cook <kcook@gcc.gnu.org>
- * doc/invoke.texi (inline-limit): Fix pasto.
+ PR other/14536
+ * configure: Regenerated with autoconf 2.57.
+ * config.in: Regenerated with autoheader 2.57.
-2003-04-16 Mark Mitchell <mark@codesourcery.com>
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
- PR middle-end/8866
- * cfgtrl.c (try_redirect_by_replacing_jump): Do not delete
- jumptables.
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't
+ bump retaddr here.
-2003-04-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
- PR/10271
- * pa-protos.h (function_arg): Remove last argument.
- * pa.c (function_arg): Likewise. Use CUMULATIVE_ARGS struct instead.
- * pa.h (struct hppa_args): Add member incoming.
- (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Initialize
- member incoming.
- (FUNCTION_ARG): Revise call to function_arg.
- (FUNCTION_INCOMING_ARG): Delete.
+ * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c.
+ (SHLIB_MAPFILES): Add libgcc-ppc64.ver.
+ (SHLIB_MKMAP_OPTS): Delete.
+ (TARGET_LIBGCC2_CFLAGS): Add -specs.
+ (bispecs): Add rule.
+ * config/rs6000/libgcc-ppc64.ver: New file.
+ * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions.
+ (__floatdidf, __floatdisf): Optimize multiply.
+ (__fixunstfdi): New function.
+ * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for
+ real and imag parts larger than one register.
+ (function_arg): Correct type of reg used when fp arg split partially
+ to stack.
+ * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT
+ and __MACH__ or __powerpc64__.
-2003-04-15 J"orn Rennecke <joern.rennecke@superh.com>
+2004-03-10 Richard Henderson <rth@redhat.com>
- PR target/9594:
- * sh.c (barrier_align): Also recognize stuff_delay_slot as
- an indicator that a barrier was created by branch splitting.
+ PR c/14517
+ * c-decl.c (grokdeclarator): Don't warn for duplicate qualifiers
+ except for pedantic c90 mode.
- merge from mainline:
+2004-03-10 Andrew Haley <aph@redhat.com>
- 2003-03-05 J"orn Rennecke <joern.rennecke@superh.com>
+ PR optimization/14381
+ * function.c (expand_function_end): Emit a blockage insn before
+ the epilogue when -fnon-call-exceptions is used.
- * sh.h (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, the minimum value
- for align_jumps is 4.
+2004-03-10 Joel Sherrill <joel@oarcorp.com>
- (SECONDARY_INPUT_RELOAD_CLASS): If reloading a PLUS into FPUL,
- use GENERAL_REGS.
+ PR target/14480
+ * config.gcc (powerpc*-*-rtems*): Use rs6000/t-rtems.
- 2003-03-03 J"orn Rennecke <joern.rennecke@superh.com>
+2004-03-10 Roman Zippel <zippel@linux-m68k.org>
- * sh.h (OVERRIDE_OPTIONS): Set default values for align_loops
- and align_jumps if not set.
- Force align_jumps to be at least 2.
- When relaxing, force align_functions to be at least the maximum of
- align_loops, align_jumps and 4.
- * sh.c (find_barrier, barrier_align): Honour align_jumps_log.
- (sh_loop_align): Honour align_loops_log.
+ PR bootstrap/12371
+ * config/m68k/m68k.h (FIXED_REGISTERS): Add arg pointer.
+ (CALL_USED_REGISTERS): Likewise.
+ (REG_CLASS_CONTENTS): Likewise.
+ (REG_ALLOC_ORDER): New.
+ (REGNO_REG_CLASS): Use regno_reg_class.
+ * config/m68k/m68k.c: Add regno_reg_class array.
- * sh.md (length attribute): Use prev_nonnote_insn instead of PREV_INSN
- to check for indirect_jump_scratch.
- (indirect_jump_scratch): Add second set.
- * sh.c (output_far_jump): Use prev_nonnote_insn instead of PREV_INSN
- when looking for indirect_jump_scratch.
- Extract scratch register taking new structure of indirect_jump_scratch
- into account.
- (gen_block_redirect): Set INSN_SCOPE for indirect_jump_scratch.
+2004-03-10 Alan Modra <amodra@bigpond.net.au>
+ Hartmut Penner <hpenner@de.ibm.com>
-2003-04-15 James A. Morrison <ja2morri@uwaterloo.ca>
+ * config/rs6000/rs6000.c (invalid_gpr_mem): New function.
+ (base_reg_operand): New function.
+ (legitimate_offset_address_p): Don't test modes in an attempt to
+ distinguish gpr vs fpr mem loads/stores. Don't prohibit offsets
+ invalid for 64-bit gpr loads/stores here.
+ (secondary_reload_class): Add "inp" parameter. Generate a reload
+ for 64-bit gpr loads/stores.
+ * config/rs6000/rs6000.h (SECONDARY_RELOAD_CLASS): Delete.
+ (SECONDARY_INPUT_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS): Define.
+ (PREDICATE_CODES): Add invalid_gpr_mem and base_reg_operand.
+ (DISPARAGE_RELOAD_CLASS): Define.
+ * config/rs6000/rs6000-protos.h (secondary_reload_class): Update.
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Correct attrs.
+ Add m->b alternative and split.
+ (movdi_internal64): Replace r->m and m->r with r->Y and Y->r.
+ Add m->b alternative and split.
+ * reload.c (find_reloads): Invoke DISPARAGE_RELOAD_CLASS.
- * invoke.texi (Spec Files): Wrap if-exists-else example.
- (MCore): Remove duplicate @itemx entries and @opindex entries.
+2004-03-10 Hans-Peter Nilsson <hp@axis.com>
-2003-04-15 Ulrich Weigand <uweigand@de.ibm.com>
+ PR other/14474
+ * doc/md.texi (Pattern Ordering, Dependent Patterns)
+ (Jump Patterns, Looping Patterns): Wrap in separate "@ifset
+ INTERNALS".
- * unwind.inc (_Unwind_Backtrace): New function.
- * unwind.h (_Unwind_Backtrace): Declare it.
- * libgcc-std.ver (_Unwind_Backtrace): Export it.
+2004-03-09 Zack Weinberg <zack@codesourcery.com>
-2003-04-15 Jason Merrill <jason@redhat.com>
+ * config/ia64/hpux.h (MULTILIB_DEFAULTS): Define.
+ (LIBGCC_SPEC): Update to match.
+
+2004-03-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/h8300/t-rtems (h8300-*-rtems*): New.
+ * config.gcc: Use config/h8300/t-rtems.
+
+2004-03-09 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14289
+ * c-typeck.c (c_mark_addressable): A register variable should
+ be considered global if its not automatic, i.e. TREE_PUBLIC,
+ TREE_STATIC or DECL_EXTERNAL.
+ * function.c (put_var_into_stack): Call abort when placing a
+ hard register into the stack, if x_parm_reg_stack_loc is NULL.
+
+2004-03-08 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c (main): Only export initfunc and finifunc if
+ LD_INIT_SWITCH not defined.
+ (scan_prog_file): Only export constructors and destructors if
+ LD_INIT_SWITCH not defined. Only export symbols not found in
+ shared objects.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco.
+ * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS.
+ (emit_library_call_value_1): Likewise pass nargs.
+ * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here.
+ * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS.
+ * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args
+ parameter instead of scanning TYPE_ARGS_TYPES to count args.
+ * config/rs6000/rs6000-protos.h (init_cumulative_args): Update
+ prototype.
+ * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg.
+ (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000.
+ (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0.
+ * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to
+ INIT_CUMULATIVE_ARGS.
+ * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update.
+ * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h,
+ config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h,
+ config/cris/cris.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
+ config/fr30/fr30.h, config/frv/frv.h, config/h8300/h8300.h,
+ config/i370/i370.h, config/i386/i386.h, config/i860/i860.h,
+ config/i960/i960.h, config/ia64/ia64.h, config/ip2k/ip2k.h,
+ config/iq2000/iq2000.c, config/iq2000/iq2000.h, config/m32r/m32r.h,
+ config/m68hc11/m68hc11.h, config/m68k/m68k.h, config/mcore/mcore.h,
+ config/mips/mips.h, config/mmix/mmix.h, config/mn10300/mn10300.h,
+ config/ns32k/ns32k.h, config/pa/pa.h, config/pdp11/pdp11.h,
+ config/s390/s390.h, config/sh/sh.h, config/sparc/sparc.h,
+ config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vax.h,
+ config/xtensa/xtensa.h: Likewise.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ PR debug/11983
+ * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to
+ dw_val_class_vec. Replace use throughout file.
+ (dw_float_const): Delete.
+ (dw_vec_const): New.
+ (dw_val_struct_union): Rename val_float to val_vec. Replace use
+ throughout file.
+ (add_AT_vec): Rename from add_AT_float. Add elt_size param.
+ (same_dw_val_p): Adjust vec comparison. Use memcmp.
+ (size_of_die): Adjust dw_val_class_vec sizing.
+ (output_die): Output dw_val_class_vec.
+ (insert_int, extract_int, insert_float): New functions.
+ (add_const_value_attribute): Use insert_float for CONST_DOUBLE.
+ Handle CONST_VECTOR.
+ (add_location_or_const_value_attribute): Handle CONST_VECTOR.
+
+2004-03-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR target/14480
+ * config/rs6000/t-rtems: Add missing file on branch.
+
+2004-03-08 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform
+ "foo++ == const" into "++foo == const+incr".
+
+2004-03-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*extendqidi2_short_displ"): Add CC clobber.
+ ("*extendqisi2_short_displ"): Likewise.
+
+2004-03-08 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * expr.c (highest_pow2_factor_for_type): Rename into
+ highest_pow2_factor_for_target. Use DECL_ALIGN instead of
+ TYPE_ALIGN when the target is a COMPONENT_REF.
+ (expand_assignment): Ajust call to highest_pow2_factor_for_type.
+
+2004-03-08 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c: Formatting fix.
+ (legitimate_offset_address_p): Correct offset range check.
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Don't override
+ -msoft-float by -mcpu. Consolidate similar code for MASK_MULTIPLE
+ and MASK_STRING.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power
+ for little endian.
+ ("ashrdi3_no_power"): Disable for little endian.
+ (ashrdi3): Same.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and
+ AltiVec abi cannot co-exist.
+
+ * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same.
+
+2004-03-07 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14471
+ * configure.ac (Target-specific assembler checks) <cris-*-*>: New
+ case, checking for -no-mul-bug-abort option.
+ * configure, config.in: Regenerate.
+ * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
+ and -mno-mul-bug-workaround.
+ * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
+ ("mulsidi3", "umulsidi3"): Prefix output template with "%!".
+ ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
+ Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG.
+ * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
+ sure mulu.d is not last on cache-line.
+ * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
+ into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
+ (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
+ (TARGET_SWITCHES): New options -mmul-bug-workaround and
+ -mno-mul-bug-workaround.
+ (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
+ (PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
+ * config/cris/cris.c (cris_operand_extend_operator): Clarify
+ relation to MULT in head comment.
+ (cris_op_str): Abort for MULT.
+ (cris_print_operand) <case '!'>: New case.
+
+2004-03-07 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*lshrsi3_const"): Disable for 68HC12.
+ ("*lshrsi3"): Also accept an immediate for 68HC12.
+ ("*ashrsi3_const"): Likewise.
+ ("*ashrsi3"): Likewise.
+ ("*ashlsi3_const"): Likewise.
+ ("*ashlsi3"): Likewise.
+ ("cmphi_1_hc12"): Compare two hard register by pushing them and
+ comparing with a pop; don't use a split for that.
+ ("cmphi split"): Disable compare split for 68HC12.
- PR middle-end/10336, c++/10401
- * jump.c (never_reached_warning): Also stop looking if we reach the
- beginning of the function.
+ * config/m68hc11/m68hc11.c (m68hc11_notice_update_cc): Invalidate
+ the status operands if they have side effects.
-2003-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+2004-03-07 Richard Sandiford <rsandifo@redhat.com>
- PR target/10338
- PR bootstrap/10198
- PR bootstrap/10140
- * fixinc/gnu-regex.c (regerror): Use mempcpy not __mempcpy.
+ * config/mips/mips.c (mips_in_small_data_p): Return false if
+ TARGET_ABICALLS.
-2003-04-15 Jakub Jelinek <jakub@redhat.com>
+2004-03-06 Stephane Carrez <stcarrez@nerim.fr>
- * config/rs6000/rs6000.h (EPILOGUE_USES): Use register 2,
- instead of TOC_REGISTER in epilogue in
- current_function_calls_eh_return functions.
+ * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Use 2,-sp to push
+ the stack register.
+ (expand_prologue): Don't make an interrupt or a trap handler a far
+ symbol.
+ (m68hc11_initial_elimination_offset): Likewise.
-2003-04-14 Hans-Peter Nilsson <hp@axis.com>
+2004-03-06 Richard Henderson <rth@redhat.com>
- PR target/10377
- * config/cris/cris.md ("*mov_sideqi", "*mov_sidehi")
- ("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem")
- ("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi")
- ("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi")
- ("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi")
- ("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi")
- ("*extopqihi_side", "*extopqisi_side", "*extophisi_side")
- ("*extopqihi_swap_side", "*extopqisi_swap_side")
- ("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes):
- When next to constraint R, replace constraint i with n.
+ * config/alpha/alpha.c (alpha_in_small_data_p): False for functions.
-Mon Apr 14 16:14:37 CEST 2003 Jan Hubicka <jh@suse.cz>
+2004-03-06 Richard Henderson <rth@redhat.com>
- PR opt/10024
- * cfgrtl.c (force_nonfallthru_and_redirect): Use unchecked_make_edge.
+ * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.
+ (TARGET_LONG_DOUBLE_128): New.
+ (TARGET_SWITCHES): Add long-double-{128,64}.
+ (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128.
+ (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New.
+ (WIDEST_HARDWARE_FP_SIZE): New.
+ (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__.
+ * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128
+ if TARGET_VAX_FLOAT.
+ * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove.
+ (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128.
-2003-04-14 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+2004-03-06 Ulrich Weigand <uweigand@de.ibm.com>
- * doc/contrib.texi (Contributors): Correct my entry.
+ * config/s390/s390.md ("load_multiple", "*load_multiple_di",
+ "*load_multiple_si"): Allow only if reload_completed.
+ ("store_multiple", "*store_multiple_di", "*store_multiple_si"):
+ Likewise.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
- * config/m68hc11/m68hc11-protos.h
- (m68hc11_eq_compare_operator): Declare
- * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register new predicate.
- * config/m68hc11/m68hc11.c (m68hc11_eq_compare_operator): New predicate
- (d_register_operand): Check the operand mode.
- (hard_addr_reg_operand): Likewise.
+ PR c/14465
+ PR c/14114
+ * c-decl (pushdecl): Revert previous change.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * config/m68hc11/m68hc11.md ("decrement_and_branch_until_zero"): New
- pattern for dbcc/ibcc generation for 68HC12.
- ("doloop_end"): New pattern.
- ("m68hc12_dbcc_dec_hi"): New pattern for dbeq/dbne.
- ("m68hc12_dbcc_inc_hi"): New pattern for ibeq/ibne.
- ("m68hc12_dbcc_dec_qi"): New pattern.
- ("m68hc12_dbcc_inc_qi"): New pattern.
- (split): Add split for the above when we can't use dbcc/ibcc due to
- reloading.
- (peephole2): Add peephole2 to generate the above when possible.
+ * pa.md (icacheflush): Reorder operands to make match_scratch operand
+ last.
+ * pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
+ from calls to gen_icacheflush.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
- * config/m68hc11/m68hc11.md ("bitcmpqi" split): No need to test the
- mode of operand 0.
- (peephole2 optimize const load): Likewise for operand 2.
- ("*rotlhi3_with_carry"): Change pattern to a const 1 rotate which
- clobbers CC_REGNUM.
- ("*rotrhi3_with_carry"): Likewise.
- (ashift:DI 1 split): Update pattern to create the above rotate.
- (lshiftrt:DI 1 split): Likewise.
+ PR target/14343
+ * config/i386/i386.md (movv2di_internal): Conditionalize on
+ TARGET_SSE, not TARGET_SSE2.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
- * config/m68hc11/m68hc11.md (SOFT_Z_REGNUM): New constant.
- ("tstqi_z_used" split): Use it.
- ("cmphi_z_used"): Likewise.
- ("bitcmpqi_z_used"): Likewise; also use SP_REGNUM constant.
- ("cmpqi_z_used"): Likewise.
+ PR c/14114
+ * c-decl (pushdecl): Do not record a previous, not-in-scope,
+ external decl for restoration.
-2003-04-12 Mark Mitchell <mark@codesourcery.com>
+2004-03-05 Waldek Hebisch <hebisch@math.uni.wroc.pl>
- PR c++/7910
- * config/i386/winnt.c (i386_pe_mark_dllimport): Fix thinko.
+ PR middle-end/14203
+ * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P
+ instead of testing whether DECL_RTL is not NULL.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-05 Andreas Krebbel <krebbel1@de.ibm.com>
- * config/m68hc11/m68hc11.h (TARGET_SWITCHES): Fix -mnominmax option;
- recognize -mnorelax.
- (reg_class): Add Z_OR_S_REGS to represent soft registers with Z
- (REG_CLASS_NAMES): Add its name.
- (REG_CLASS_CONTENTS): Define its content.
+ * rtl.h (mem_expr_equal_p): Function prototype added.
+ * cfgcleanup.c (merge_memattrs): New function.
+ (flow_find_cross_jump): Call merge_memattrs for matching insns.
+ * emit-rtl.c (mem_expr_equal_p): New function.
-2003-04-12 Stephane Carrez <stcarrez@nerim.fr>
+2004-03-05 Bob Wilson <bob.wilson@acm.org>
- * config/m68hc11/larith.asm (memcpy): Use ARG macro to access stack
- parameters so that offsets are valid for far definition.
- (__mulsi3): Likewise and use ret to return.
- (___adddi3, ___subdi3, ___notdi2, ): Don't use it to save the result.
+ * config/xtensa/xtensa.c (function_arg): Handle 16-byte aligned args.
+ (xtensa_va_start): Initialize __va_stk to ($arg_ptr - 32). Adjust
+ __va_ndx by 2 words when referencing an argument on the stack.
+ (xtensa_va_arg): Handle 16-byte aligned args. Adjust __va_ndx by 2
+ words when an arg on the stack is first seen.
-2003-04-11 Geoffrey Keating <geoffk@apple.com>
+2004-03-05 Nathan Sidwell <nathan@codesourcery.com>
- * doc/extend.texi (Empty Structures): New.
+ PR driver/13577
+ * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o
+ options.
-2003-04-11 Richard Henderson <rth@redhat.com>
+2004-03-04 Bob Wilson <bob.wilson@acm.org>
- PR c++/10202
- * expr.c (expand_expr): Use COMPLETE_OR_UNBOUND_ARRAY_TYPE_P
- not COMPLETE_TYPE_P for re-invoking layout_decl.
+ * config/xtensa/xtensa.c (xtensa_return_in_msb): New function.
+ (TARGET_RETURN_IN_MSB): Define to xtensa_return_in_msb.
-2003-04-11 Simon Law <sfllaw@engmail.uwaterloo.ca>
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
- * doc/bugreport.texi: Fix paragraph breaking between sections
- in preparation for TeXinfo's paragraph indentation fixes.
- * doc/extend.texi: Ditto.
- * doc/invoke.texi: Ditto.
- * doc/objc.texi: Ditto.
- * doc/gcov.texi: Wrap 'gcov' in @command{}.
- * doc/invoke.texi (Darwin Options): Add a preamble.
+ * real.c (encode_ibm_extended): Don't bother rounding low double.
+ * c-cppbuiltin.c (builtin_define_float_constants): Tweak MAX
+ when fmt->pnan < fmt->p.
-2003-04-11 Richard Henderson <rth@redhat.com>
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
- PR c/10201
- * expr.c (expand_expr): Move DECL_RTL frobbing ...
- * stor-layout.c (layout_decl): ... here.
+ PR target/14406
+ * config/rs6000/rs6000.md (abstf2, abstf2+1): Delete define_insn.
+ (abstf2, abstf2_internal): New define_expand.
-2003-04-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr>
- * doc/install.texi (hppa): Update links for HP-UX patches. Revise
- notes on linker selection and configuration for 64-bit HP-UX port.
- * doc/invoke.texi (hppa): Remove hppa text from description for
- -ffunction-sections and -fdata-sections. Document -static, -nolibdld
- and -threads options.
+ PR optimization/14235
+ * expr.c (convert_move): Copy the source to a new pseudo
+ when converting from a sub-word source to a larger-than-word
+ register which conflicts with the source.
- * pa-hpux10.h (LIB_SPEC): Add link options to resolve dependency of
- libc.a on libdld.sl when -static is specified and -nolibdld is not
- specified.
- * pa64-hpux.h (LIB_SPEC): Likewise.
- * pa-hpux11.h (LIB_SPEC): Likewise.
- (LINK_SPEC): Add __gcc_plt_call as an undefined symbol when -shared
- is not specified.
+2004-03-03 Zack Weinberg <zack@codesourcery.com>
-2003-04-08 Jonathan Wakely <redi@gcc.gnu.org>
+ PR 13728
+ * c-decl.c (diagnose_mismatched_decls): Issue an error for two
+ parameters with the same name, unless one is a forward decl.
+ Do not issue a redundant-redeclaration warning for forward
+ decls of parameters.
- * doc/extend.texi (Template Instantiation): Refer to ISO standard,
- not Working Paper.
- * doc/invoke.texi (C++ Dialect Options): Same.
+2004-03-03 Stephane Carrez <stcarrez@nerim.fr>
-Fri Apr 11 00:12:14 CEST 2003 Jan Hubicka <jh@suse.cz>
+ * config/m68hc11/m68hc11.c (m68hc11_override_options): Disable -fweb
+ because it breaks the 32-bit shift patterns that rely on a match_dup.
+ (print_operand): Don't print a * before the base address.
- PR inline-asm/8803
- * function.c (instantate_virtual_regs): Verify that all ASM statements
- match after the virutal regs instantiation.
+2003-03-03 Richard Henderson <rth@redhat.com>
-2003-04-10 Steve Ellcey <sje@cup.hp.com>
+ PR opt/13862
+ * cselib.c (cselib_record_sets): Don't record multiple sets in
+ asm insns.
+
+2004-03-03 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of
+ small negative values.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Change the
+ threshold to 0x4f.
+
+ Revert:
+ 2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/11767
+ * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
+ * optabs.c (prepare_cmp_insn): Force trapping memories to registers
+ before the compare, if flag_non_call_exceptions.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14327
+ * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
+ emitting the label, not after.
+
+2004-03-02 David O'Brien <obrien@FreeBSD.org>
+
+ * config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
+ * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define
+ %(fbsd_dynamic_linker),
+ (LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with
+ config/i386/freebsd.h
+ * config/arm/freebsd.h: Ditto.
+ * config/i386/freebsd.h: Ditto.
+ * config/i386/freebsd64.h: Ditto.
+ * config/ia64/freebsd.h: Ditto.
+ * config/rs6000/sysv4.h: Ditto.
+ * config/sparc/freebsd.h: Ditto.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable.
+ (m68hc11_mov_addr_mode): Likewise.
+ (m68hc11_override_options): Initialize them based on target.
+ (register_indirect_p): Allow a MEM for indirect addressing modes and
+ use flags to control what is allowed.
+ (m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for
+ supported addressing modes.
+ (m68hc11_register_indirect_p): Use m68hc11_addr_mode.
+ (go_if_legitimate_address_internal): Likewise.
+ (m68hc11_indirect_p): Likewise and check the mode.
+ (print_operand): Allow a (MEM (MEM)) and generate indirect addressing.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize
+ sequences of moves.
+ (add peepholes): New peepholes to optimize sequences adding small
+ constants.
+ (bset peepholes): New peepholes to transform an OR in a bset form
+ (bclr peepholes): Likewise for bclr form.
+ (cmp peepholes): New peepholes to avoid register copies when comparing.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split
+ to separate push from moves.
+ ("*pushdf_internal"): Likewise.
+ ("*pushsf_internal"): Likewise.
+ ("*pushsi_internal"): Likewise.
+ ("movdi_internal"): Use define_insn_and_split; non push operand.
+ ("movdf_internal"): Likewise.
+ ("movsf_internal"): Likewise.
+ ("movsi_internal"): Likewise.
+ ("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints
+ ("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise.
+ ("*ashlsi3_const1", "*lshrsi3_const1"): Likewise.
- * ia64-protos.h (addp4_optimize_ok): New.
- * ia64.c (addp4_optimize_ok): New.
- * ia64.md (*ptr_extend_plus_1): Use addp4_optimize_ok.
- (*ptr_extend_plus_2): Ditto.
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-2003-04-10 Steve Ellcey <sje@cup.hp.com>
+ * config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
+ ("cmphi_z_used", "cmpqi_z_used"): Likewise.
+ ("movstrictsi", "movstricthi", "movstrictqi"): Likewise.
+ ("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise.
+ ("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise.
+ ("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise.
+ ("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise.
+ ("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise.
+ ("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise.
+ ("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise.
+ ("*lshrdi3_const32", "*lshrdi_const1"): Likewise.
- * expr.c (expand_assignment): Extend offset_rtx with convert_to_mode
- not with convert_memory_address.
- (store_constructor): Ditto, and same for copy_size_rtx.
- (expand_expr): Ditto.
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-2003-04-10 Ulrich Weigand <uweigand@de.ibm.com>
+ * config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define.
+ (SOFT_XY_REGNUM): Define.
+ (cmp split): Use the above instead of hard coded numbers.
+ (8-bit op split): No need to check the mode; allow Q_REG.
+ (ashift split): Adjust the first operand if it uses the SP and we
+ are pushing the shifted value.
+ (plus shift split): Fix when a source is in register D+X.
+ ("doloop_end"): Pass dummy arguments to gen_rtx_NE.
- * config/s390/s390.c (larl_operand): Do not allow symbols
- marked with '@'.
- (s390_encode_section_info): Mark symbols with forced 1-byte
- alignment with '@'.
- (s390_strip_name_encoding): Strip '@'.
- (legitimize_pic_address): Handle symbols that are not valid
- LARL operands in 64-bit mode.
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-2003-04-10 Andrew Haley <aph@redhat.com>
+ * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when
+ comparing with Z register.
- * tree-inline.c (inlinable_function_p): Disable inlining for
- synchronized methods.
+2004-03-02 Loren James Rittle <ljrittle@acm.org>
-2003-04-09 Alexandre Oliva <aoliva@redhat.com>
+ * gcc/doc/install.texi (*-*-freebsd*): Update target information.
- * config/fp-bit.c (unpack_d): Handle pair of doubles with
- different signs correctly.
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
-2003-04-08 Richard Henderson <rth@redhat.com>
+ PR bootstrap/14356
+ * gcc.c (process_command): Remove const-qualification from argv.
+ (main): Likewise.
- PR target/9886
- * config/ia64/ia64.md (cmovdi_internal): Use 'n' not 'i' constraints.
- (cmovsi_internal): Likewise.
+2004-03-01 Mircea Namolaru <namolaru@il.ibm.com>
-2003-04-07 Matt Kraai <kraai@alumni.cmu.edu>
+ * cfgloop.h (get_var_set_from_bct, is_bct_cond): Declaration of
+ new functions.
+ * cfgloopanal.c: Include loop.h.
+ (get_var_set_from_bct): New function.
+ (is_bct_cond): New function.
+ (blocks_single_set_registers): Handle branch and count jumps.
+ (count_loop_iterations): Likewise.
+ (simple_increment): Likewise
+ * doloop.c (doloop_condition_get): Export.
+ * loop-init.c (fixup_loop_exit_succesor): New function.
+ (loop_optimizer_finalize): Handle loops ending with branch and
+ count jumps.
+ * loop-unroll.c: Include toplev.h
+ (discard_increment): New function.
+ (expand_bct): New function.
+ (peel_loop_completely): Handle the removal of branch and count jumps.
+ (unroll_loop_constant_iterations): Likewise.
+ (unroll_loop_runtime_iterations): Likewise
+ * loop.h (doloop_condition_get): Declare.
- * doc/install.texi: Use @command and @samp for single- and
- multi-word commands respectively.
- * doc/makefile.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
-2003-04-07 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
- Richard Henderson <rth@redhat.com>
+ PR debug/14328
+ * dwarf2out.c (gen_enumeration_type_die): Output all enumeration
+ constants as signed values.
- PR c/9516
- * expr.c (safe_from_p): Rearrange to avoid deep recursion in
- favour of looping and tail recursion for TREE_LIST and binops.
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
-2003-04-07 Glen Nakamura <glen@imodulo.com>
+ PR middle-end/13448
+ * c-tree.h (readonly_warning): Rename to ...
+ (readonly_error): ... this.
+ * c-typeck.c (build_unary_op): Adjust accordingly.
+ (readonly_warning): Rename to ...
+ (readonly_error): ... this and issue errors, not warnings.
+ (build_modify_expr): Call readonly_error, not readonly_warning.
+ (c_expand_asm_operands): Likewise.
+ * tree-inline.c (optimize_inline_calls): Do not inline functions
+ after errors have occurred.
- PR opt/8634
- * explow.c (maybe_set_unchanging): Don't flag non-static const
- aggregate type initializers with RTX_UNCHANGING_P.
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-2003-04-07 Richard Henderson <rth@redhat.com>
+ * doc/cppopts.texi: Fix a typo.
- PR opt/8634
- * function.c (purge_addressof_1): Don't try arithmetics for
- unchanging memories.
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-04-07 Janis Johnson <janis187@us.ibm.com>
+ * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
- * doc/sourcebuild.texi (Test Suites): Document testing support for
- gcov and profile-directed optimizations; describe gcc.misc-tests.
+2004-02-27 Ian Lance Taylor <ian@wasabisystems.com>
-2003-04-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR optimization/7871
+ * flow.c (mark_set_1): Don't add LOG_LINKS for global registers
+ from or to call insns.
- * doc/rtl.texi (Comparison operations): Update to
- record the allowed comparison modes.
+2004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-Mon Apr 7 22:13:38 CEST 2003 Jan Hubicka <jh@suse.cz>
+ PR optimization/7871
+ * flow.c (propagate_one_insn): Interpret calls as setting global
+ registers, not merely clobbering them.
- PR target/10077
- * i386.md (movsi_1): Fix SSEMOV alternative.
+2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
-Mon Apr 7 15:56:30 CEST 2003 Jan Hubicka <jh@suse.cz>
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
- PR opt/10024
- Revert Zack's change
- * cfglayout.c (cfg_layout_redirect_edge):
- Redirect any branch edges unified with the fallthru one.
- * cfgrtl.c (force_nonfallthru_and_redirect): Do not special
- case fallthru edges when called via cfglayout.c
+2004-02-27 Daniel Jacobowitz <drow@mvista.com>
-2003-04-07 James A Morrison <ja2morri@student.math.uwaterloo.ca>
+ * config/arm/arm.c (arm_legitimate_address_p): Don't check the mode
+ size for minipool references.
- * doc/extend.texi (Darwin Pragmas): Fix spelling of Mac OS.
+2004-02-27 Eric Botcazou <ebotcazou@act-europe.fr>
+ Roger Sayle <roger@eyesopen.com>
-2003-04-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ * fold-const.c (fold): Revert 2004-02-25 change. Use the original
+ operands to build a tree with swapped operands.
+ * expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the
+ 'unsignedp' predicate to specify the signedness.
- * c-decl.c (set_save_expr_context): Prototype.
+2004-02-26 Aldy Hernandez <aldyh@redhat.com>
-2003-04-05 David Edelsohn <edelsohn@gnu.org>
+ * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and
+ fix_truncsfsi2.
- * config/rs6000/rs6000.h (RTX_COSTS): Halve Power multiply costs.
- * config/rs6000/rs6000.md: Correct Power4 multiply latency.
+ * config/rs6000/spe.md: Delete spe_efsctuiz.
+ Add spe_fixuns_truncsfsi2.
+ Add spe_fix_truncsfsi2.
-2003-04-05 Zack Weinberg <zack@codesourcery.com>
+2004-02-26 Bob Wilson <bob.wilson@acm.org>
- PR optimization/10024
- * cfgrtl.c (force_nonfallthru_and_redirect): If e is the edge
- we want, use it.
+ * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__.
-2003-04-05 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-02-25 James E Wilson <wilson@specifixinc.com>
- PR bootstrap/10267
- * doc/install.texi (*-*-solaris2): /bin/ksh is not just recommended
- for configuring.
+ * gcc-simple.c (rtl_zone, tree_zone, garbage_zone, ggc_alloc_typed,
+ ggc_alloc_zone): New.
+ (ggc_pch_count_object, gcc_pch_alloc_object, ggc_pch_write_object):
+ Add bool is_string parameter.
-2003-04-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+2004-02-26 Alan Modra <amodra@bigpond.net.au>
- * c-decl.c (set_save_expr_context): Use traditional-style function
- definition.
+ * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
+ beginning of block. Do not delete CC setter unless HAVE_cc0.
-2003-04-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
- * doc/contrib.texi (Contributors): Add entries for Wolfgang
- Bangerth, DJ Delorie, Christian Ehrhardt, Christopher Faylor,
- Nathanael Nerode, Diego Novillo, Hartmut Penner, Volker Reichelt,
- Danny Smith, and Ulrich Weigand.
- Update Kriang Lerdsuwanakij and fix a typo in Janis Johnson's
- entry.
+ * doc/contrib.texi: Add an entry for myself.
-2003-04-04 Zack Weinberg <zack@codesourcery.com>
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
- PR bootstrap/10216
- * configure.in: Check whether it is necessary to link against
- libm to use ldexp.
+ * config.gcc: Add comment describing extra_gcc_objs.
+ i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs.
+ * configure.ac (extra_gcc_objs): New substitution variable.
+ (host_extra_gcc_objs): Don't substitute.
* configure: Regenerate.
- * Makefile.in: Add LDEXP_LIB substitution variable.
-
-2003-04-03 Jason Merrill <jason@redhat.com>
-
- PR c/10175
- * jump.c (never_reached_warning): Revert patch of 2002-11-02.
- Look backwards for a line note.
-
-2003-04-02 Mike Stump <mrs@apple.com>
-
- * doc/extend.texi (PowerPC AltiVec Built-in Functions): Split up
- some to avoid faulting makeinfo --html.
-
-2003-04-02 Richard Henderson <rth@redhat.com>
-
- * libgcc-std.ver (_Unwind_GetCFA): New.
- * unwind-dw2.c (_Unwind_GetCFA): New.
- * unwind-sjlj.c (_Unwind_GetCFA): New.
- * unwind.h: Declare it.
-
-2003-04-02 Mike Stump <mrs@apple.com>
-
- * doc/install.texi (Specific): Update pointers to apple.com.
-
-2003-04-01 Jan Hubicka <jh@suse.cz>
-
- PR inline-asm/8088
- * i386.c (ix86_hard_regno_mode_ok): Return 0 for MMX/SSE registers
- when MMX/SSE is not available.
-
-2003-04-02 Richard Henderson <rth@redhat.com>
-
- * except.c (sjlj_find_directly_reachable_regions): Recognize when
- must-not-throw region has been deleted.
-
-2003-04-02 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (output_call_frame_info): Ignore fde->nothrow as an
- optimization when flag_exceptions not enabled.
-
-2003-04-01 Richard Henderson <rth@redhat.com>
-
- * except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION
- notes for nothrow calls if flag_forced_unwind_exceptions.
- (build_post_landing_pads): Mind flag_forced_unwind_exceptions.
- (sjlj_find_directly_reachable_regions): Likewise.
- (reachable_handlers): Likewise.
- (can_throw_external): Likewise.
- (collect_one_action_chain): Record cleanups after catch-all and
- must-not-throw if flag_forced_unwind_exceptions.
- * flags.h (flag_forced_unwind_exceptions): Declare.
- * toplev.c (flag_forced_unwind_exceptions): New.
- (lang_independent_options): Add it.
- * doc/invoke.texi: Add it.
-
-2003-04-01 Geoffrey Keating <geoffk@apple.com>
-
- * unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New.
- (live_image_destructor): Reset image to initial state.
- (examine_objects): Set DESTRUCTOR_MAY_BE_CALLED_LIVE.
-
-2003-04-01 Dale Johannesen <dalej@apple.com>
-
- * cse.c (count_reg_usage): Fix handling of REG_EQUAL notes.
- (Zdenek Dvorak's fix from 3.4 branch)
-
-2003-04-01 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_fixup_clobbered_return_reg):
- Do nothing if __builtin_return_address was not used.
-
-2003-04-01 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (function_arg_pass_by_reference):
- Return true for variable sized types.
- (rs6000_va_arg): Handle variable sized types passed by reference
- on non-SVR4 ABI.
-
-2003-03-31 Mark Mitchell <mark@codesourcery.com>
-
- PR c/9936
- * c-decl.c (grokdeclarator): Clear SAVE_EXPR_CONTEXT for
- variably-sized arrays in parameters.
- (set_save_expr_context): New function.
- (c_expand_body): Use it, via walk_tree.
-
-2003-03-31 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (hard_reg_operand): Check the mode.
-
-2003-03-31 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0
- notes as they are boggus.
- (m68hc11_gen_movqi): Likewise.
-
-2003-03-31 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (expand_prologue): For an interrupt handler
- save the soft registers after the frame pointer so that gdb can unwind
- the frame more easily.
- (expand_epilogue): Likewise in opposite order; allow to use X register
- as scratch if the return value is by reference.
-
-2003-03-31 Jason Merrill <jason@redhat.com>
-
- PR java/10145
- * stor-layout.c (update_alignment_for_field): Respect
- DECL_USER_ALIGN for zero-length bitfields, too.
- * c-decl.c (finish_struct): Don't set DECL_ALIGN for normal
- fields.
-
-2003-03-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- PR other/6955
- * collect2.c (collect_wait): Use WCOREDUMP and fix output message.
- * system.h (WCOREDUMP, WCOREFLG): Define if necessary.
-
-2003-03-30 Richard Henderson <rth@redhat.com>
-
- PR c/10083
- * config/alpha/alpha.md (umuldi3_highpart): Change to expander;
- don't zero_extend const inputs.
-
-2003-03-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi: Add Eric Botcazou and Roger Sayle.
- Uniformly use bugfix instead of bug fix.
-
-2003-03-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- PR doc/895
- * ONEWS: Remove those items that already appear in the EGCS
- release notes on our web pages.
-
-2003-03-29 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Respect
- TARGET_HARD_FLOAT. Reformat.
- (FUNCTION_ARG_REGNO_P): Likewise, and remove unneeded casts.
-
-2003-03-29 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_emit_prologoue): Make sure backchain is
- set up before any trapping memory access if flag_non_call_exceptions.
-
-2003-03-29 Alan Modra <amodra@bigpond.net.au>
-
- * reload1.c (reload_as_needed): Allow a USE in asm reloads.
-
- * loop.c: (find_mem_in_note_1, find_mem_in_note): Comment.
-
-2003-03-28 Loren James Rittle <ljrittle@acm.org>
-
- * doc/install.texi (*-*-freebsd*): Update with known status.
-
-2003-03-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("literal_pool_31"): Output pool anchor
- label even if pool empty when generating PIC.
- ("literal_pool_31", "literal_pool_64"): Coding style cleanup.
-
-2003-03-28 Kazu Hirata <kazu@cs.umass.edu>,
- Dhananjay Deshpande <dhananjayd@kpit.com>
-
- PR target/10205
- * config/h8300/h8300.c (h8300_initial_elimination_offset):
- Correct the offset computation when TARGET_NORMAL.
-
-2003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/10067
- * config/sparc/sparc.md (jump pattern): Correct order
- when issuing the annuling marker.
-
-2003-03-28 Alan Modra <amodra@bigpond.net.au>
-
- * loop.c: (find_mem_in_note_1, find_mem_in_note): New functions.
- (replace_loop_mems): Add "written" param. Remove invalid REG_EQUAL
- notes after hoisting.
- (load_mems): Adjust replace_loop_mems call.
-
-2003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/8281
- * config/sparc/sparc.md (movdi_insn_sp32_v9): Remove 'f-f' alternative.
- (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
-
-2003-03-28 Eric Botcazou <ebotcazou@libertysurf.fr>
- Richard Henderson <rth@redhat.com>
-
- PR target/10114 and PR target/10084
- * dwarf2out.c (mem_loc_descriptor): Handle LO_SUM.
-
-2003-03-27 Olivier Hainque <hainque@act-europe.fr>
-
- PR ada/9953
- * ada/Makefile.in (gnatlib configuration for HPUX): Split
- the general section for HPUX into specific sections for
- HPUX 10 and HPUX 11. Fix the setting of TGT_LIB in the HPUX
- 11 case.
-
-2003-03-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_optimize_prolog): Do not save/restore
- registers used for global asm variables.
- (s390_frame_info, s390_arg_frame_offset): Likewise.
- (s390_emit_prologue, s390_emit_epilogue): Likewise.
-
-2003-03-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Update Janis Johnson.
-
-2003-03-26 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/ia64.c (ia64_expand_op_and_fetch): Fix comment.
- (ia64_expand_compare_and_swap): Use always DImode ar.ccv,
- zero extend old to it.
- * config/ia64/ia64.md (cmpxchg_acq_si): Remove mode from ccv
- operand.
-
-2003-03-26 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/7784
- * reload.c (find_reloads_address): Handle
- (PLUS (PLUS (REG) (REG)) (CONST_INT)) form for
- all base registers.
-
-2003-03-25 Marcelo Abreu <mmabreu@inf.ufrgs.br>
-
- PR other/10203
- * version.c: Reference the GCC web site in the URL.
-
-2003-03-25 Jan Hubicka <jh@suse.cz>
-
- PR opt/10056
- * cfglayout.c (fixup_reorder_chain): Fix dealing with the conditional
- jump jumping to the next instruction.
- * cfgrtl.c (force_nonfallthru_and_redirect): Likewise.
- * cfg.c (unchecked_make_edge): New.
- * basic-block.h (unchecked_make_edge): Declare.
+ * Makefile.in: Use extra_gcc_objs.
+
+2004-02-25 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like
+ comparisons with regard to signedness.
+
+2004-02-25 Jakub Jelinek <jakub@redhat.com>
+
+ * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of
+ fopen.
+ * libgcov.c: Include sys/stat.h.
+ * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define.
+
+2004-02-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_legitimate_index_p): For QImode the range of an offset
+ is -4095...+4095 inclusive.
+
+2004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/install.texi (sparc-sun-solaris2* specific notes): Document
+ the bootstrap failure with Sun CC 5.4 and 5.5.
+
+2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cse.c (cse_change_cc_mode_insns): Stop at any instruction
+ which modifies NEWREG.
+ (cse_condition_code_reg): Update the mode of CC_REG in
+ CC_SRC_INSN on our own.
+
+2004-02-24 Michael Matz <matz@suse.de>
+
+ * config/i386/i386.c (ix86_comp_type_attributes): Check for
+ regparm attributes.
+
+2004-02-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_fix_truncsfsi2): Delete.
+ (spe_fixuns_truncsfsi2): Delete.
+
+ * config/rs6000/rs6000.md (fix_truncsfsi2): Delete.
+ (fixuns_truncsfsi2): Delete.
+
+2004-02-24 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14240
+ * rtlanal.c (replace_label): Fix replacing labels in constant pool.
+
+2004-02-24 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update.
+ (init_cumulative_args): Likewise.
+ (a7_overlap_mentioned_p): Delete prototype.
+ * config/xtensa/xtensa.c (struct machine_function): Replace
+ incoming_a7_copied field with need_a7_copy and vararg_a7 flags.
+ Add set_frame_ptr_insn field.
+ (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7.
+ (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check
+ if the operand is an argument in a7. If so, copy a7 to a new pseudo
+ at the function entry and replace the operand with the pseudo.
+ (init_cumulative_args): Remove unused arguments. Add new "incoming"
+ argument and record this flag in CUMULATIVE_ARGS.
+ (function_arg): Remove result_mode and special-case code to handle
+ arguments in a7. Instead, set need_a7_copy flag when there is an
+ incoming argument in a7.
+ (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn
+ and use the value recorded in cfun->machine->set_frame_ptr_insn.
+ (xtensa_builtin_saveregs): Check for negative gp_left value. Set
+ need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of
+ special-case code.
+ (a7_overlap_mentioned_p): Delete.
+ * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag.
+ (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless
+ arguments to init_cumulative_args and pass "incoming" flag instead.
+ (BLOCK_REG_PADDING): Delete.
+ * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary
+ checks for reload_in_progress and reload_completed. Update calls to
+ xtensa_copy_incoming_a7.
+ (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander
+ to call xtensa_copy_incoming_a7.
+
+2004-02-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * invoke.texi (ARM Options): Mark -mapcs-26 and -mno-alignment-traps
+ as deprecated. Remove already deprecated synonyms.
+ * arm.c (arm_override_options): Generate an inform message if the
+ user tries to invoke the compiler in apcs-26 mode.
+ * arm.h (TARGET_SWITCHES): Remove help comments from deprecated
+ switches. Delete deprecated synonyms for -malignment-traps.
+ (TARGET_DEFAULT): Default to alignment traps.
+ * arm/coff.h (TARGET_DEFAULT): Default to alignment traps.
+ * arm/elf.h arm/netbsd.h arm/pe.h arm/semi.h arm/semiaof.h: Likewise.
+ * arm/unknown-elf.h arm/wince-pe.h: Likewise.
+
+2004-02-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.h: Deprecate -mpni/-mno-pni.
+
+2004-02-23 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/i386/i386.c: Rename pni to sse3.
+ * config/i386/i386.h: Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/i386/pmmintrin.h: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/invoke.texi: Likewise.
-2003-03-25 Jason Merrill <jason@redhat.com>
+2004-02-23 Andrew Pinski <pinskia@physics.uc.edu>
- PR optimization/10171
- * unroll.c (unroll_loop): Don't delete the jump at the end unless
- we also delete a jump at the beginning.
+ * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define.
+ * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define.
-2003-03-25 Stephane Carrez <stcarrez@nerim.fr>
+2004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Falk Hueffner <falk@debian.org>
- * doc/contrib.texi (Contributors): Mention self as 68HC11/68HC12
- contributor.
-
-2003-03-25 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/passes.texi (Passes): Properly document that we do not
- perform jump2 any longer; remove command-line option -dJ.
+ PR c/14188
+ * builtins.c (expand_builtin_va_arg): Emit an informative message
+ if a trap is generated.
+ * c-typeck.c (build_function_call): Likewise.
-2003-03-25 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/8746
- * config/i386/i386.md (and promoting splitters): Disable HImode to
- SImode promoting when the sign bit matters and is not preserved, or
- when TARGET_FAST_PREFIX is true. Disable promoting when optimizing
- for size.
+2004-02-22 Christopher Faylor <cgf@redhat.com>
-2003-03-24 Stephane Carrez <stcarrez@nerim.fr>
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify
+ extra host object file when targetting cygwin rather than generic
+ object files.
- * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Add _call_far and
- _return_far
- (MULTILIB_OPTIONS): Don't multilib on -mlong-calls.
- (MULTILIB_EXCEPTIONS): Likewise.
- * config/m68hc11/m68hc11.md ("call"): Support far calls for 68HC11
- by calling some board support routine.
- ("call_value"): Likewise.
- ("*return_void"): Likewise for return.
- ("*return_16bit"): Likewise.
- ("*return_32bit"): Likewise.
- * config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Generate .far
- for 68HC11 too.
- (DWARF2_ADDR_SIZE): Use 4 so that addresses can
- * config/m68hc11/m68hc11.c (m68hc11_override_options): Accept
- -mlong-calls for 68HC11.
- * config/m68hc11/larith.asm (declare_near): New macro.
- (__premain, ___negsi2, ___one_cmplsi2, ___ashlsi3): Use it.
- (___ashrsi3, ___lshrsi3, ___lshrhi3, ___lshlhi3): Likewise.
- (___rotrhi3, ___rotlhi3, ___ashrhi3, ___ashrqi3): Likewise.
- (___lshlqi3, __divmodhi4, ___mulqi3, ___mulhi3): Likewise.
- (__mulhi32): Likewise.
- (ret): Update macro for 68HC11.
- (__far_trampoline): Implement for 68HC11.
- (__call_a16, __call_a32, __return_void, __return_16): New support
- routines for 68HC11 memory bank switching calling support.
- (__return_32): Likewise.
+2004-02-22 Matthias Klose <doko@debian.org>
-2003-03-21 Glen Nakamura <glen@imodulo.com>
+ Taken from mainline:
- PR opt/10087
- * loop.c (loop_givs_reduce): Skip bivs with duplicate locations
- while incrementing giv.
- (record_biv): Check for duplicate biv locations and
- set (struct induction *) v->same if found.
+ 2004-02-12 Geoffrey Keating <geoffk@apple.com>
-2003-03-24 Janis Johnson <janis187@us.ibm.com>
+ * Makefile.in (install-man): Use $(CPP_INSTALL_NAME) and
+ $(GCOV_INSTALL_NAME) to install manpages. Remove generic rule
+ for installing .1 manpages. Add rules for installing cpp
+ and gcov manpages under their installed names.
- * doc/install.texi (Testing): Mention test result links from build
- status pages.
+2004-02-22 Hans-Peter Nilsson <hp@axis.com>
-2003-03-24 Mark Mitchell <mark@codesourcery.com>
+ PR target/14209
+ * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
+ constraints to not match postincrement. Adjust the predicate to
+ exclude a volatile memory reference.
+ ("*andsi_clear"): Tweak constraints to not match postincrement.
+ Adjust the predicate to exclude a volatile memory reference.
+ ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed".
+ ("*andhi_clear_unsigned"): Remove, non-matching pattern.
- * function.c (put_var_into_stack): Change bool parameter to int.
- (gen_mem_addressof): Likewise.
- * rtl.h (gen_mem_addressof): Likewise.
- * tree.h (put_var_into_stack): Likewise.
- * config/alpha/alpha.c (alpha_gp_save_rtx): Adjust call to
- gen_mem_addressof or put_var_into_stack.
- * config/c4x/c4x.c (c4x_expand_builtin): Likewise.
+2004-02-21 Christopher Faylor <cgf@redhat.com>
-2003-03-24 Andreas Schwab <schwab@suse.de>
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host
+ object file when targetting cygwin.
+ * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is
+ overridden by top-level Makefile.
- * config/ia64/ia64.c (spill_tfmode_operand): Adjust calls to
- gen_mem_addressof.
+2004-02-21 Alan Modra <amodra@bigpond.net.au>
-2003-03-24 Jakub Jelinek <jakub@redhat.com>
+ * combine.c (can_combine_p): Don't ignore SETs marked with
+ REG_EH_REGION notes.
- * expr.c (do_jump): Handle UNSAVE_EXPR specially.
+2004-02-21 Jan Hubicka <jh@suse.cz>
-2003-03-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+ * params.def (max-peeled-insns, max-completely-peeled-insns,
+ max-once-peeled-insns): Set to 400.
- PR target/10072
- * combine.c (simplify_if_then_else): Check that the mode
- has MODE_INT class before applying the (OP Z (mult COND C2))
- transformation.
+2004-02-20 Falk Hueffner <falk@debian.org>
-2003-03-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+ PR target/14201
+ * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand
+ numbers.
- PR optimization/9414
- * config/sparc/sparc.md (widening peepholes): Use
- widen_memory_access instead of change_address.
+2004-02-20 Mohan Embar <gnustuff@thisiscool.com>
+ Tom Tromey <tromey@redhat.com>
-2003-03-23 Mark Mitchell <mark@codesourcery.com>
+ * doc/install.texi: Moved --disable-libgcj and
+ --with-system-zlib documentation to new section for
+ Java-specific options.
+ Added explicit Cross-Compiler-Specific Options subheading.
+ Added section for Java-specific options.
- PR c++/7086
- * c-typeck.c (c_mark_addressable): Adjust calls to
- put_var_into_stack.
- * expr.c (expand_expr): Likewise.
- * function.c (put_var_into_stack): Add rescan parameter. Do not
- call fixup_var_refs when rescan is false.
- (gen_mem_addressof): Likewise.
- (assign_parms): Adjust calls to put_var_into_stack.
- (setjmp_protect): Likewise.
- (setjmp_protect_args): Likewise.
- * rtl.h (gen_mem_addressof): Change prototype.
- * stmt.c (expand_decl): Adjust calls to put_var_into_stack.
- * tree.h (put_var_into_stack): Change prototype.
-
-2003-03-23 Arpad Beszedes <beszedes@cc.u-szeged.hu>
-
- PR middle-end/9967
- * builtins.c (expand_builtin_fputs): When optimizing for size,
- don't transform fputs into fwrite.
-
-2003-03-24 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Remove unnecessary
- globalize_label.
-
- Merge from mainline.
- 2003-01-13 Andreas Schwab <schwab@suse.de>
- * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Output type
- directive.
-
-2003-03-23 Glen Nakamura <glen@imodulo.com>
-
- PR c/8224
- * fold-const.c (extract_muldiv_1): Don't pass through type conversions
- when signedness changes for division or modulus.
+2004-02-20 James E Wilson <wilson@specifixinc.com>
-2003-03-23 Richard Henderson <rth@redhat.com>
+ * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg.
- * cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps
- before flow2.
- * cfgrtl.c (try_redirect_by_replacing_jump): Similarly.
+2004-02-20 Josef Zlomek <zlomekj@suse.cz>
-2003-03-23 Richard Henderson <rth@redhat.com>
+ * tree-inline.c (copy_body_r): Do not replace ret_label.
- PR opt/10116
- * ifcvt.c (find_if_block): Disallow tablejump insns outgoing
- from then_bb or else_bb after flow2.
- * jump.c (tablejump_p): New.
- * rtl.h: Declare it.
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
-2003-03-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ * gcc.c (process_command): Allow translation of the copyright
+ symbol but not the rest of the copyright message.
+ * gcov.c (print_version): Likewise. Allow translation of the
+ message about warranty.
- * pa.c (output_cbranch): Fix typo in comment.
+2004-02-19 Aldy Hernandez <aldyh@redhat.com>
-2003-03-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ * config/rs6000/spe.md (spe_fixunssfsi2): Rename to
+ spe_fixuns_truncsfsi2.
- * pa.c (output_cbranch, output_bb, output_bvb): Output nop for
- conditional branch to the following instruction. Use next_real_insn
- instead of next_active_insn.
- (output_dbra, output_movb, jump_in_call_delay): Use next_real_insn
- instead of next_active_insn.
+ * config/rs6000/rs6000.md (fixunssfsi2): Rename to
+ fixuns_truncsfsi2.
-2003-03-22 Ulrich Weigand <uweigand@de.ibm.com>
+2004-02-19 Richard Sandiford <rsandifo@redhat.com>
+ Maciej W. Rozycki <macro@ds2.pg.gda.pl>
- * config/s390/s390.md ("movti", "*movdi_31", "*movdf_31"): Use 'o' instead
- of 'm' constraint in forced-split alternatives.
- ("*adddi3_31", "*subdi3_31"): Likewise. Also, pass 0 instead of 1 as
- VALIDATE_ADDRESS parameter to operand_subword.
+ * config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
+ * config/mips/mips.md: Expand comment above unaligned loads and stores.
-2003-03-22 Svein E. Seldal <Svein.Seldal@solidas.com>
+2004-02-20 Alan Modra <amodra@bigpond.net.au>
- * config/c4x/t-c4x (MULTILIB_MATCHES): Make gcc recognize a c33 as
- a c30 instead of a c40 processor.
+ * function.c (assign_parms): Correct leakage of mainline code
+ in last commit. Also leakage from INIT_CUMULATIVE_ARGS patch.
-2003-03-21 Richard Henderson <rth@redhat.com>
+2004-02-19 Zack Weinberg <zack@codesourcery.com>
- PR opt/2001
- * bb-reorder.c (maybe_duplicate_computed_goto_succ): New.
- (make_reorder_chain_1): Call it.
+ * config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
+ when passing single SFmode quantities in general registers,
+ put them in the high half.
+ (struct extern_func_list, extern_func_head): Mark with GTY(()).
+ (ia64_hpux_add_extern_decl): Save the decl, not the name string.
+ Allocate memory with ggc_alloc. No need to copy anything.
+ (ia64_hpux_file_end): Update to match.
- * function.h (struct function): Add computed_goto_common_label,
- computed_goto_common_reg.
- * function.c (free_after_compilation): Zap them.
- * stmt.c (expand_computed_goto): Use them to produce one
- indirect branch per function.
+2004-02-19 David Daney <ddaney@avtrex.com>
-2003-03-22 Stephane Carrez <stcarrez@nerim.fr>
+ PR preprocessor/14198
+ * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
+ builtin_assert ("machine=mips")
- * config/m68hc11/m68hc11.md ("call_value"): Fix trap check.
+2004-02-19 Ulrich Weigand <uweigand@de.ibm.com>
-2003-03-22 Stephane Carrez <stcarrez@nerim.fr>
+ * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
+ "*subsf3_cconly"): Subtraction is not commutative.
- * config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Fix typo in
- writing .interrupt command.
- * config/m68hc11/m68hc11.md ("call"): Look at the symbol to see
- if it's a far or near function.
- ("call_value"): Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_attribute_table): Add far and
- near attributes.
- (m68hc11_handle_fntype_attribute): Accept attributes on methods.
- (m68hc11_override_options): Ignore -mlong-calls for 68HC11.
- (m68hc11_initial_elimination_offset): Set current_function_far
- according to attributes.
- (expand_prologue): Likewise.
- (trap_handler_symbol): New global to keep track of trap handlers.
- (m68hc11_encode_section_info): Mark symbol as far if needed; set
- trap symbol.
- (m68hc11_is_far_symbol): New function.
- (m68hc11_is_trap_symbol): New function.
- * config/m68hc11/m68hc11-protos.h (m68hc11_is_far_symbol): Declare.
- (m68hc11_is_trap_symbol): Declare.
+2004-02-19 Alan Modra <amodra@bigpond.net.au>
-2003-03-21 Jan Hubicka <jh@suse.cz>
+ * function.c (assign_parms): When building decl_rtl for
+ SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.
- PR inline-asm/7916
+2004-02-19 Olivier Hainque <hainque@act-europe.fr>
- * function.c (instantiate_virtual_regs_lossage): New function.
- (instantiate_virtual_regs_1): Use it.
- (instantiate_virtual_regs): Do not continue in substition when insn has
- been deleted.
+ * expr.c (is_aligning_offset): Check if we are aligning the
+ expressions's address over BIGGEST_ALIGNMENT in bytes, not
+ in bits.
-2003-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+2004-02-19 Jan Hubicka <jh@suse.cz>
- * config/s390/s390.h: Do not include fixdfdi.h on s390x.
- (TARGET_64BIT): Define as compile-time constant when IN_LIBGCC2.
- (MIN_UNITS_PER_WORD): Do not define when IN_LIBGCC2.
+ * genextract.c (main): Do not output the memset when not checking.
-2003-03-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-02-18 Jakub Jelinek <jakub@redhat.com>
- PR doc-bug/9813
- * doc/extend.texi: Move misplaced paragraph about underscores in
- variables in macros.
+ * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
+ by default.
-2003-03-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
- * doc/invoke.texi: Fix table environment.
+ * config/s390/s390.md ("divmoddisi3"): Fix incorrect mode.
-2003-03-21 Richard Earnshaw <rearnsha@arm.com>
+2004-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * ifcvt.c (find_if_case_1): If we add a new bb, update the dominance
- information.
+ * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
+ generating PIC code.
-2003-03-21 Eric Botcazou <ebotcazou@libertysurf.fr>
- Richard Henderson <rth@redhat.com>
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
- PR optimization/8366
- * config/sparc/sparc.h: (SYMBOLIC_CONST): New macro.
- (GO_IF_LEGITIMATE_ADDRESS): Use it. Reject the form
- PIC+SYMBOLIC_CONST in other modes than Pmode.
- (GO_IF_MODE_DEPENDENT_ADDRESS): Use it. Mark
- the form PIC+SYMBOLIC_CONST as mode dependent.
+ * config/s390/s390.c (s390_mainpool_start): Delete the main pool
+ placeholder insn when chunkifying the pool.
-2003-03-20 Richard Henderson <rth@redhat.com>
+2004-02-18 Per Bothner <per@bothner.com>
- * fold-const.c (extract_muldiv_1): Revert changing order of
- operands in case MULT_EXPR of 2003-02-16 patch.
+ * cpphash.h (struct cpp_buffer): Restore return_at_eof field. This
+ partly reverts my 2003-10-01 change, because we're back to logically
+ including <command line> inside the main line.
+ * cpplex.c (_cpp_get_fresh_line): Check return_at_eof field.
+ * cppmacro.c (cpp_scan_nooutput): Set return_at_eof of current buffer.
+ Fixes PR preprocessor/14103.
-2003-03-20 Richard Henderson <rth@redhat.com>
+2004-02-18 Richard Earnshaw <rearnsha@arm.com>
- PR c/8602
- * integrate.c (output_inline_function): Reset input_filename
- and lineno from the decl before rest_of_compilation.
+ PR target/13866
+ * arm.c (load_multiple_operation): Don't insist that the source reg
+ of a post-increment component is the same as the destination.
+ (store_multiple_operation): Likewise.
-2003-03-20 Richard Earnshaw <rearnsha@arm.com>
+2004-02-18 Paul Brook <paul@codesourcery.com>
- PR 10066
- * arm.md (UNSPEC_PIC_BASE): New constant.
- (pic_add_dot_plus_four): Wrap with unspec.
- (pic_add_dot_plus_eight): Likewise.
+ * rtlanal.c (rtx_varies_p): Return 0 for NULL_RTX
-2003-03-19 Ulrich Weigand <uweigand@de.ibm.com>
+2004-02-18 Mark Mitchell <mark@codesourcery.com>
- * config/s390/s390.c (s390_preferred_reload_class): Do not
- force constants to the pool unless necessary.
- (s390_decompose_address): Prefer to use pointer as base,
- not index register.
- * config/s390/s390.md ("*tsthiCCT_only"): Remove '?' from
- Q alternative.
- ("*movdi_64", "*movsi", "movhi", "movqi_64", "movqi",
- "*movdf_64", "*movsf"): Add '?' to Q->Q alternatives.
- ("*extractqi", "*extracthi", "*zero_extendhisi2_31",
- "*zero_extendqisi2_31", "*zero_extendqihi2_31",
- "*adddi3_31", "*subdi3_31"): Do not set "type" attribute.
+ PR c++/11326
+ * config/ia64/ia64.c (ia64_struct_value_rtx): Cope with NULL
+ fntype.
-2003-03-19 Jakub Jelinek <jakub@redhat.com>
+2004-02-18 Paul Brook <paul@codesourcery.com>
- * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Don't call
- rs6000_maybe_dead if !fromprolog.
+ PR debug/12934
+ * dwarf2out.c (loc_descriptor_from_tree): Handle
+ EXPR_WITH_FILE_LOCATION.
-2003-03-19 Jakub Jelinek <jakub@redhat.com>
+2004-02-17 Mark Mitchell <mark@codesourcery.com>
- * ifcvt.c (dead_or_predicable): Fail if there are any references
- to tablejump in merge_bb other than the final JUMP_INSN.
+ PR c++/11326
+ * c-common.c (flag_abi_version): Remove.
+ * c-common.h (flag_abi_version): Likewise.
+ * c-opts.c (c_common_handle_option): Remove OPT_fabi_version case.
+ * c.opt (fabi-version): Remove.
+ * calls.c (expand_call): Always pass a function type to
+ struct_value_rtx. Use convert_memory_address.
+ * common.opt (fabi-version): Add it.
+ * flags.h (flag_abi_version): Likewise.
+ (abi_version_at_least): New macro.
+ * opts.c (common_handle_option): Add OPT_fabi_version.
+ * toplev.c (flag_abi_version): Define it.
+ * config/ia64/ia64.h (STRUCT_VALUE_REGNUM): Remove.
+ * config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): Define it.
+ (ia64_struct_retval_addr_is_first_parm_p):
+ New function.
+ (ia64_output_mi_thunk): Use it.
+ (ia64_struct_value_rtx): New function.
-2003-03-19 Jakub Jelinek <jakub@redhat.com>
+2004-02-18 Alan Modra <amodra@bigpond.net.au>
- * stmt.c (expand_start_case): Call emit_queue ().
+ PR optimization/14119
+ * combine.c (try_combine): When attemting to fix unrecognized insns,
+ don't delete SETs marked with REG_EH_REGION notes.
-2003-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-02-17 Jan Hubicka <jh@suse.cz>
- PR 10062
- * config/pa/pa-hpux.h (TARGET_HPUX_UNWIND_LIBRARY): Redefine.
- * pa-protos.h (output_lbranch): New prototype.
- * pa.c (compute_frame_size): Change size of the frame marker on the
- 64-bit ports to 48 bytes.
- (pa_output_function_prologue): Document why SAVE_SP is set.
- (hppa_expand_prologue): Save previous stack pointer into frame marker
- on targets which use the hpux unwind library.
- (output_cbranch): Use output_lbranch.
- (output_lbranch): New function to output long unconditional branches.
- * pa.h (TARGET_HPUX_UNWIND_LIBRARY): Define.
- (STACK_POINTER_OFFSET): Update offset for 48-byte frame marker on
- 64-bit ports.
- * pa.md (jump): Use output_lbranch.
- (allocate_stack): New expander for dynamic stack allocation.
+ PR bootstrap/14180
+ * cselib.c (remove_useless_values): Do not access released
+ memory.
-2003-03-18 Alexandre Oliva <aoliva@redhat.com>
+2004-02-17 Ulrich Weigand <uweigand@de.ibm.com>
- * toplev.c (independent_decode_option): Return success for --help,
- --target-help and --version.
+ * combine.c (simplify_if_then_else): Do not replace
+ (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
+ modes differ.
-2003-03-19 Alan Modra <amodra@bigpond.net.au>
+2004-02-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- PR target/10073
- * combine.c (force_to_mode <NOT>): Use gen_int_mode.
+ * config/mips/t-iris6gld: Renamed to ...
+ * config/mips/t-irix-gld: ... this.
+ * config.gcc (mips-sgi-irix6*): Reflect this
+ (mips-sgi-irix5*): Use it with GNU ld.
-2003-03-18 Andreas Schwab <schwab@suse.de>
+ * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed
+ to ...
+ * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this.
+ * config/mips/t-irix-gld: Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
- PR target/7248
- * config/m68k/m68k.md (iordi3): Fix setting low half to -1. From
- martin@blom.org.
+ * config/mips/iris5gld.h: New file.
+ * config.gcc (mips-sgi-irix5*): Use it with GNU ld.
+ Only use collect2 without gas.
-2003-03-17 Jason Merrill <jason@redhat.com>
+ * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC):
+ Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
- PR c++/10091
- * expr.c (expand_expr) [ADDR_EXPR]: Disallow taking the address of
- an unaligned member of TREE_ADDRESSABLE type.
+ * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ...
+ * config/mips/iris5.h: ... here.
-2003-03-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to
+ IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Define.
- * dwarf2asm.h: Delete obsolete comment.
- (dw2_asm_output_data, dw2_asm_output_delta, dw2_asm_output_offset,
- dw2_asm_output_pcrel, dw2_asm_output_addr,
- dw2_asm_output_addr_rtx, dw2_asm_output_encoded_addr_rtx,
- dw2_asm_output_nstring, dw2_asm_output_data_uleb128,
- dw2_asm_output_data_sleb128, dw2_asm_output_delta_uleb128,
- dw2_asm_output_delta_sleb128): Add ATTRIBUTE_NULL_PRINTF.
+ * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify
+ using irix_startfile_spec, irix_endfile_spec.
+ * patches.summary (http):
-2003-03-17 Steve Ellcey <sje@cup.hp.com>
+2004-02-17 Andrew Pinski <pinskia@physics.uc.edu>
- * stmt.c (tail_recursion_args): Call promote_mode to set
- unsignedp flag correctly before calling convert_move.
+ PR c++/14178
+ * doc/invoke.texi (fabi-version): The default is 2 now.
-2003-03-17 Dave Love <fx@gnu.org>
- Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-02-17 Jonathan Wakely <redi@gcc.gnu.org>
- * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define __digital__,
- __arch64__ to match Compaq cc.
+ * doc/install.texi: Update description of --gxx-include-dir to
+ give correct default value. (merged from mainline)
-2003-03-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+2004-02-16 Matthias Klose <doko@debian.org>
- * function.c (thread_prologue_and_epilogue_insns): Set delete_unused
- argument to 0 for redirect_jump.
+ * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
+ in terms of SHLIB_SOVERSION.
+ * config/m68k/t-slibgcc-elf-ver: New file.
+ * config/pa/t-slibgcc-elf-ver: New file.
+ * config.gcc (m68k-linux, parisc-linux): Use them when not
+ sjlj exceptions are not configured.
-2003-03-16 Mark Mitchell <mark@codesourcery.com>
+2004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR c++/8805
- * except.c (eh_region_u_cleanup): Add prev_try.
- (expand_eh_region_end_cleanup): Set it.
- (reachable_handlers): Use it to skip over cleanup blocks.
+ * config/sparc/sparc.c (get_pc_symbol_name): Mark with GTY(()).
-2003-03-16 Richard Henderson <rth@redhat.com>
+2004-02-16 Joseph S. Myers <jsm@polyomino.org.uk>
- PR opt/6798
- * cfgcleanup.c: Include params.h.
- (try_crossjump_bb): Use PARAM_MAX_CROSSJUMP_EDGES. Fix test for
- too many outgoing edges from a block.
- * Makefile.in (cfgcleanup.o): Depend on PARAMS_H.
- * params.def (max-crossjump-edges): New.
- * doc/invoke.texi: Document it.
+ * doc/sourcebuild.texi: Mention backends.html.
-2003-03-16 Richard Henderson <rth@redhat.com>
+2004-02-15 Roger Sayle <roger@eyesopen.com>
- * config/i386/i386.md (movstrictqi, movstrictqi_1): Check
- optimize_size as well.
+ Backport from mainline:
-2003-03-16 Stephane Carrez <stcarrez@nerim.fr>
+ 2004-02-07 Roger Sayle <roger@eyesopen.com>
+ PR middle-end/13696
+ * fold-const.c (fold_convert): New function to provide type
+ conversion to the middle-end without using convert.
+ (negate_expr, associate_trees, size_diffop, omit_one_operand,
+ operand_equal_for_comparison_p, pedantic_omit_one_operand,
+ invert_truthvalue, optimize_bit_field_compare, range_binop,
+ decode_field_reference, make_range, build_range_check, unextend,
+ fold_truthop, extract_muldiv_1, fold_mathfn_compare,
+ fold_binary_op_with_conditional_arg, fold_inf_compare,
+ fold_single_bit_test, fold, multiple_of_p): Replace all calls to
+ convert with calls to fold_convert.
+
+ 2004-02-09 Roger Sayle <roger@eyesopen.com>
+ * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion
+ tree code rather than call fold_convert, which doesn't specify a
+ default floating point to integer conversion.
+
+ 2004-02-10 Paolo Bonzini <bonzini@gnu.org>
+ PR c/14092
+ * fold-const.c (fold) <NEGATE_EXPR>: Convert result of
+ negate_expr back to the original type.
+
+2004-02-15 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
- * config/m68hc11/m68hc11.c (print_operand): Handle 'b' modifier
- for D register to specify the low part of it, aka B.
- (m68hc11_gen_movhi): Use REG_WAS_0 note and increment or decrement
- the register if we are loading 1 or -1 to it; avoid using temp
- register when moving X/Y to Y/X.
- (m68hc11_gen_movqi): Likewise.
- (m68hc11_check_z_replacement): Fix last insn setting for compare case.
+ Backport from mainline:
-2003-03-14 Mark Mitchell <mark@codesourcery.com>
+ 2004-02-05 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
+ * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR)
+ to $$(slibdir) in the installation commands.
- PR optimization/9016
- * config/i386/i386.c (ix86_expand_move): Force more CONST_DOUBLEs
- into the constant pool.
+2004-02-15 Roger Sayle <roger@eyesopen.com>
-2003-03-16 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+ Backport from mainline:
- PR target/9164
- * tree.c (get_narrower): For extensions with unchanged bit number,
- return the unsignedness of the outer mode.
+ 2004-01-20 Roger Sayle <roger@eyesopen.com>
+ * fold-const.c (fold_convert): Rename to fold_convert_const.
+ (fold_convert_const): Change arguments to take a tree_code,
+ a type and the operand/expression to be converted. Return
+ NULL_TREE if no simplification is possible.
+ (fold): Adjust call to fold_convert to match new fold_convert_const.
+ Avoid modifying the tree passed to fold in-place.
-2003-03-16 Roger Sayle <roger@eyesopen.com>
+2004-02-15 Jan Hubicka <jh@suse.cz>
- * c-typeck.c (build_component_ref): Turn "for" into "do .. while"
- to avoid "may be used uninitialized" warning on ia64-hpux.
- * config/ia64/ia64-c.c: Include "tm_p.h" for function prototypes.
+ * cselib.c (value_pool): New.
+ (new_cselib_val): Use pool.
+ (cselib_init): Initialize value_pool
+ (cselib_finish): Free pool.
-2003-03-16 Neil Booth <neil@daikokuya.co.uk>
+ * cselib.c: Include alloc-pool.h
+ (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill.
+ (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare.
+ (new_elt_list, new_elt_loc_list, unchain_one_elt_list,
+ unchain_one_elt_loc_list_pool, unchain_one_value,
+ new_cselib_val): Simplify using allocpool.
+ (cselib_init): Initialize allocpools.
+ (cselib_finish): Finish allocpools.
- * cppinit.c: Remove support of -A-.
- * doc/cppopts.texi: Remove documentation of -A-.
+2004-02-14 Richard Sandiford <rsandifo@redhat.com>
-2003-03-15 Richard Henderson <rth@redhat.com>
+ Backport from mainline:
- 2003-01-14 Richard Henderson <rth@redhat.com>
- * config/alpha/alpha.c (alpha_expand_mov): Use correct mode
- for force_const_mem.
+ 2002-04-08 Richard Sandiford <rsandifo@redhat.com>
+ * real.c (encode_ibm_extended): Normalize the input value before
+ converting it to a double. Handle the case where a normal value
+ rounds to infinity.
-2003-03-15 Richard Henderson <rth@redhat.com>
+2004-02-14 Olivier Hainque <hainque@act-europe.fr>
- PR target/9700
- * config/alpha/alpha.c (alpha_va_start): Account for
- current_function_pretend_args_size in the AP offset.
+ * loop.c (check_dbra_loop): Use gen_int_mode instead of GEN_INT
+ for start_value when it is directly moved into reg, and factorize
+ the retrieval of GET_MODE (reg).
-2003-03-15 Jason Merrill <jason@redhat.com>
+2004-02-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- PR debug/6387
- * dwarf2out.c (dwarf2out_decl): If we're at -g1, just stick nested
- function DIEs at toplevel.
- (decls_for_scope): At -g1, don't descend into subblocks.
+ * configure.ac: Search for as, ld below libexec/gcc.
+ * configure: Regenerate.
-2003-03-15 Ulrich Weigand <uweigand@de.ibm.com>
+2004-02-13 Jan Hubicka <jh@suse.cz>
- * varasm.c (struct rtx_const): Change type of un.addr member
- to struct holding an additional 'symbol' member.
- (decode_rtx_const): Re-enable optimization to count SYMBOL_REFs
- with equal string addresses as equal.
- (simplify_subtraction): Adapt to struct rtx_const change.
+ * combine.c (recog_for_combine): Avoid allocating unnecesary RTX.
-2003-03-15 Glen Nakamura <glen@imodulo.com>
+ * genrecog.c (find_operand): add extra argument stop.
+ (validate_pattern): Verify that mach_dup is duplicating operand
+ defined lexically earlier.
- * reload1.c (choose_reload_regs): Use && instead of ||
- with REG_CANNOT_CHANGE_MODE_P condition.
+2004-02-13 Ian Lance Taylor <ian@wasabisystems.com>
-2003-03-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ PR other/10584
+ * c-opts.c (c_common_post_options): Disable function inlining when
+ using -finstrument-functions.
+ * doc/invoke.texi (Code Gen Options): Document this restriction.
- PR optimization/9387
- * function.c (thread_prologue_and_epilogue_insns): Use redirect jump
- for conditional returns.
+2004-02-12 Chris Demetriou <cgd@broadcom.com>
-2003-03-14 Jason Merrill <jason@redhat.com>
+ * config/mips/mips.md (casesi_internal, casesi_internal_di):
+ Use ".set macro" to avoid warnings about multi-instruction
+ macros, since they're intentional.
- PR optimization/6871
- * varasm.c (assemble_variable): Leave constant zeroes in .rodata.
+2004-02-13 Jan Hubicka <jh@suse.cz>
-2003-03-12 Andrew Lewycky <andrew@mxc.ca>
+ * alias.c (find_base_term, get_addr): Do not dereference NULL
+ pointer when all VALUE's locations has been invalidated.
+ (rtx_equal_for_memref_p): Simplify checking of VALUEs.
- PR c++/7050
- * expr.c (store_expr): Don't attempt to store void-typed trees,
- just evaluate them for side effects.
+ * cselib.c (discard_useless_values): Clear out value pointer pointing
+ to datastructure to be recycled.
-2003-03-14 Eric Botcazou <ebotcazou@libertysurf.fr>
+ * gcse.c (bypass_block): Prevent edges to be unified when we are
+ about to emit compenstation code.
- PR optimization/8396
- * tree-inline.c (initialize_inlined_parameters): Make sure the value
- of read-only constant arguments is passed with the right type.
+ * gcse.c (bypass_block): Fix a typo in the previous check-in
+ to the file.
-2003-03-14 Andreas Jaeger <aj@suse.de>
- Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
+ * alloc-pool.c (align_four): Kill.
+ (create_alloc_pool): Align size to eight.
+ (free_alloc_pool, free_pool): Invalidate deallocated data.
- * linux64.h (TARGET_OS_CPP_BUILTINS): Define _LP64 and __LP64__ in
- 64-bit mode.
+2004-02-12 Richard Sandiford <rsandifo@redhat.com>
-2003-03-13 Mike Stump <mrs@apple.com>
+ PR bootstrap/13617
+ * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare.
+ (mips_declare_object): Make variadic.
+ * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use
+ mips_output_aligned_decl_common.
+ * config/mips/mips.c (mips_output_aligned_decl_common): New function.
+ (mips_declare_object): Make variadic.
- * ggc-page.c (struct page_entry): Remove varray.h header.
- Add index_by_depth field.
- Remove save_in_use_p field.
- (struct globals): Add depth_in_use, depth_max, by_depth_in_use,
- by_depth_max, by_depth, and save_in_use fields.
- (INITIAL_PTE_COUNT): Add.
- (save_in_use_p_i): Add.
- (save_in_use_p): Add.
- (adjust_depth): Add.
- (push_depth): Add.
- (push_by_depth): Add.
- (prefetch): Add.
- (free_page): Add support for and use faster data structures.
- (ggc_alloc): Likewise.
- (init_ggc): Likewise.
- (ggc_recalculate_in_use_p): Likewise.
- (ggc_pop_context): Likewise.
- (clear_marks): Likewise.
- * Makefile.in (ggc-page.o): Remove varray.h.
+2004-02-12 Jan Hubicka <jh@suse.cz>
-2003-03-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ * tree-optimize.c (tree_rest_of_compilation): Do not release DECL_ARGUMENTS
- * pa.c (pa_init_builtins): Fix warning.
+2004-02-12 Ian Lance Taylor <ian@wasabisystems.com>
-2003-03-12 Richard Henderson <rth@redhat.com>
+ PR inline-asm/6162
+ * reload.c (find_reloads): Only support one pair of commutative
+ operands.
- PR opt/8178
- * config/i386/i386.md (ffssi2): Tighten op1 predicate to
- the requirements of the output insns.
+2004-02-12 Ian Lance Taylor <ian@wasabisystems.com>
-2003-03-12 Steve Ellcey <sje@cup.hp.com>
+ PR target/1532
+ Backport from mainline:
- * config/ia64/ia64.h (ASM_OUTPUT_XDATA_CHAR): Remove.
- (ASM_OUTPUT_XDATA_SHORT): Remove.
- (ASM_OUTPUT_XDATA_INT): Remove.
- (ASM_OUTPUT_XDATA_DOUBLE_INT): Remove.
- (ASM_OUTPUT_ADDR_DIFF_ELT): Handled 32 bit address diffs.
- (ASM_PREFERRED_EH_DATA_FORMAT): Handle 32 bit EH pointers.
- (CASE_VECTOR_MODE): Handle 32 bit pointers in case statement.
+ 2004-02-11 Richard Henderson <rth@redhat.com>
-2003-03-12 Andrew Lewycky <andrew@mxc.ca>
+ * flow.c (insn_dead_p): A clobber of a dead hard register is a
+ dead insn after reload.
- PR c++/7050
- * expr.c (store_expr): Don't attempt to store void-typed trees,
- just evaluate them for side effects.
+ 2004-01-24 Ian Lance Taylor <ian@wasabisystems.com>
-2003-03-12 Bob Wilson <bob.wilson@acm.org>
+ * cse.c (cse_cc_succs): Change the mode of the source expression
+ as soon as decide we need a new mode. Don't permit changing modes
+ if we found a match in a successor block.
+ (cse_condition_code_reg): Save original mode of source expression
+ so that we know whether we have to change the mode in other
+ insns.
+ 2004-01-24 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * cse.c: (cse_cc_succs) Fix comparison warning.
+
+ 2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cse.c (cse_change_cc_mode): New static function.
+ (cse_change_cc_mode_insns, cse_cc_succs): Likewise.
+ (cse_condition_code_reg): New function.
+ * rtl.h (cse_condition_code_reg): Declare.
+ * toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg.
+ * target.h (struct gcc_target): Add fixed_condition_code_regs and
+ cc_modes_compatible.
+ * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (TARGET_INITIALIZER): Add new initializers.
+ * targhooks.c (default_cc_modes_compatible): New function.
+ * targhooks.c (default_cc_modes_compatible): Declare.
+ * hooks.c (hook_bool_intp_intp_false): New function.
+ * hooks.h (hook_bool_intp_intp_false): Declare.
+ * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (ix86_fixed_condition_code_regs): New static function.
+ (ix86_cc_modes_compatible): Likewise.
+ * doc/tm.texi (Condition Code): Document new hooks.
+
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/rs6000/altivec.md (*movv4si_internal): At least one
+ operand must be register_operand.
+ (*movv8hi_internal1): Likewise.
+ (*movv16qi_internal1): Likewise.
+ (*movv4sf_internal1): Likewise.
+
+2004-02-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/14113
Backport from mainline:
- 2003-03-12 Bob Wilson <bob.wilson@acm.org>
- * config/xtensa/xtensa.md (adddi3): Don't clobber source operand used
- to detect carry.
- (subdi3): Reorder emitted instructions.
+ 2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-03-12 Jan Hubicka <jh@suse.cz>
+ * config/sparc/sparc.md (call followed by jump define_peephole's):
+ Delete.
- * i386.c (ix86_setup_incoming_varargs): Set stack_alignment_needed to 128.
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
-2003-03-12 Daniel Jacobowitz <drow@mvista.com>
+ * gcc/config/rs6000/rs6000.c (rs6000_override_options)
+ Set AltiVec ABI and vrsave as default for ppc64 linux.
+ (init_cumulative_args): Post error, if try to return
+ value in AltiVec register without enable AltiVec.
+ (function_arg_advance): Ditto for passing arguments.
- Fix PR target/9797 and PR c/9853.
- * stmt.c (expand_decl_init): Call push_temp_slots () and
- pop_temp_slots ().
+2004-02-11 Joseph S. Myers <jsm@polyomino.org.uk>
-2003-03-12 Hans-Peter Nilsson <hp@bitrange.com>
+ PR c/456
+ * cppexp.c (num_binary_op): Don't allow comma operators in #if
+ constant expressions at all outside C99 mode if pedantic.
- * configure.in (rlim_t): Define to long if no valid definition
- found in sys/resource.h.
- * config.in, configure: Regenerate.
+2004-02-10 Aldy Hernandez <aldyh@redhat.com>
-2003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/9928
- * c-decl.c (duplicate_decls): Discard the initializer of the new decl
- only if it is a VAR_DECL.
+ * config/rs6000/spe.md ("*movv2si_internal"): Check for register
+ operand.
+ (movv4hi_internal): Same.
+ (movv2sf_internal): Same.
+ (movv1di_internal): Same.
-2003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-02-11 Richard Sandiford <rsandifo@redhat.com>
- PR optimization/9888
- * config/i386/i386.md (jcc_1): Fix range.
- (jcc_2): Likewise.
- (jump): LIkewise.
- (doloop_end_internal): Likewise.
+ * emit-rtl.c (mark_label_nuses): Check that a LABEL_REF refers to
+ a label before updating its usage count.
-2003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-02-10 Danny Smith <dannysmith@users.sourceforge.net>
- PR optimization/9888
- * config/i386/i386.md (movsi_1): Remove special alternatives
- for %eax register.
- (movhi_1): Likewise.
- * config/i386/i386.c (memory_address_length): Do not use
- short displacement when there is no base.
- (ix86_attr_length_address_default): Handle LEA instructions.
+ PR c/14088
+ real.c (real_from_string): Look for 'X' as well as 'x' in
+ hexfloat strings.
-2003-03-11 Loren James Rittle <ljrittle@acm.org>
+2004-02-10 Per Bothner <per@bothner.com>
- (per-port preprocessor fix, concurrent to Neil's cppinit.c fix)
- * config/freebsd-spec.h (FBSD_CPP_PREDEFINES): Remove.
- (FBSD_TARGET_OS_CPP_BUILTINS): New port-specific macro.
- (FBSD_TARGET_CPU_CPP_BUILTINS): New port-specific macro.
- * config/freebsd.h (CPP_PREDEFINES): Remove.
- (TARGET_OS_CPP_BUILTINS): New.
- * config/alpha/freebsd.h: Use overridden FBSD_TARGET_CPU_CPP_BUILTINS
- instead of TARGET_OS_CPP_BUILTINS.
- * config/sparc/freebsd.h (CPP_PREDEFINES): Remove.
+ * c-opts.c (c_common_post_options): Don't emit working directory
+ in cpp output if -P was specified.
-2003-03-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+2004-02-10 Jakub Jelinek <jakub@redhat.com>
- PR bootstrap/9994
+ PR optimization/13424
Backport from mainline:
- 2003-02-18 Roger Sayle <roger@eyesopen.com>
-
- * sbitmap.c (sbitmap_resize): New function.
- * sbitmap.h (sbitmap_resize): Prototype here.
- * recog.c (split_all_insns): Use sbitmap_resize.
-
- Mon Feb 17 16:16:54 CET 2003 Jan Hubicka <jh@suse.cz>
-
- * recog.c (split_all_insns): Fix memory overflow.
-
- 2003-02-15 Richard Henderson <rth@redhat.com>
-
- * recog.c (split_all_insns): Include new blocks in life update;
- do a global life update.
-
-2003-03-11 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/cris/cris.md: Remove lingering EGCS reference.
- ("*extopqihi_side_biap"): For HI operation, match
- cris_additive_operand_extend_operator, not
- cris_operand_extend_operator. Adjust condition.
- ("*extopqihi_side", "*extopqihi"): Ditto.
- ("*extopqisi_side_biap"): Correct operand numbers in condition.
- ("*extophisi_side_biap", "*extopqisi_swap_side_biap"): Ditto.
- ("*extophisi_swap_side_biap", "*extopqisi_swap"): Ditto.
- ("*extophisi_swap"): Ditto.
- ("*extopqihi_swap_side_biap"): For HI operation, match a simple
- PLUS, not cris_operand_extend_operator. Adjust condition and
- output template.
- ("*extopqihi_swap_side", "*extopqihi_swap"): Ditto.
- * config/cris/cris.h (PREDICATE_CODES): Add
- cris_additive_operand_extend_operator.
- * config/cris/cris.c (cris_additive_operand_extend_operator):
- New predicate.
-
- * config/cris/aout.h (ENDFILE_SPEC): Undef.
- (CRIS_CPP_SUBTARGET_SPEC): Move -D__AOUT__ to...
- (TARGET_OS_CPP_BUILTINS): New macro.
- (HAVE_GAS_HIDDEN): Undef.
- * config/cris/cris.h: Remove EGCS references.
- (CPP_SPEC): Remove "-$".
- (INIT_CUMULATIVE_ARGS): Correct comment.
- * config/cris/cris.h (CRIS_CPP_SUBTARGET_SPEC): Move -D__ELF__ to...
- (TARGET_OS_CPP_BUILTINS): New macro.
- (CPP_PREDEFINES): Don't define. Move old definitions and...
- (CPP_SPEC): ...move -D__CRIS_ABI_version=2 to...
- (TARGET_CPU_CPP_BUILTINS): New macro.
- * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC): Move constant
- definitions and the optional __PIC__, __pic__ and
- __NO_UNDERSCORES__ definitions to...
- (TARGET_OS_CPP_BUILTINS): New macro.
-
-2003-03-10 Devang Patel <dpatel@apple.com>
-
- PR c++/9394
- * gcc.c (DEFAULT_SWITCH_TAKES_ARG): Remove.
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove.
- * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Add.
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Add.
- * cppspec.c (DEFAULT_SWTICH_TAKES_ARG): Remove.
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Remove.
-
-2003-03-10 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.h (HARD_REGNO_RENAME_OK): Define.
- * config/m68hc11/m68hc11-protos.h (m68hc11_hard_regno_rename_ok):
- Declare.
- * config/m68hc11/m68hc11.c (m68hc11_hard_regno_rename_ok): New function
- for reg rename optimization to avoid using Z and Y registers.
-
-2003-03-10 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("*addhi3_68hc12"): Accept any constant
- when adding to X and Y since leax/leay are fast.
- ("*addhi3"): Accept 'I' constraint when adding to address register.
- ("rotlhi3"): Operand 1 must be a register_operand.
- (peephole2): New peephole to optimize some adds.
- * config/m68hc11/m68hc11.h (CONST_OK_FOR_LETTER_P): Use 'I' constraint
- to represent -2 .. 2 small integer range.
-
-2003-03-10 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_gen_rotate): Set carry before
- each 16-bit rotation.
-
-2003-03-10 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h: Merge from mainline.
-
-2003-03-10 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Revert the previous patch.
-
-2003-03-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/9986
- * c-common.c (c_common_nodes_and_builtins): Initialize target builtins
- after the common builtins.
- * pa-hpux.h (DONT_HAVE_FPUTC_UNLOCKED): Define.
- * pa.c (TARGET_INIT_BUILTINS): Define.
- (pa_init_builtins): New function.
-
- * pa.md (call, call_value, sibcall, sibcall_value): When sufficient
- space has been allocated for the outgoing arguments, set the arg
- pointer for a call emitted after virtuals have been instantiated
- using the stack pointer offset, otherwise abort.
-
-2003-03-06 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Defer RTL compilation only when
- RTL inlining is done.
-
- * i386.c (ix86_expand_vector_move): Do not crash when offloading
- to memory in PIC mode.
-
-2003-03-08 Neil Booth <neil@daikokuya.co.uk>
-
- * cppinit.c (cpp_finish_options): Set first_unused_line to -1.
-
-2003-03-08 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/7796
- * unroll.c (calculate_giv_inc): Handle constants being
- loaded with LSHIFTRT.
-
-2003-03-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/8726
- Backport patch from mainline:
-
- 2003-01-08 Dale Johannesen <dalej@apple.com>
-
- * function.c (assign_parms): Don't set pretend_args_size if
- REG_PARM_STACK_SPACE.
-
-2003-03-06 Kurt Garloff <garloff@suse.de>
- Geoffrey Keating <geoffk@apple.com>
- Dale Johannesen <dalej@apple.com>
- * params.def: Introduce parameter max-inline-insns-rtl for
- a separate limit for the RTL inliner.
- * params.h: Likewise.
- * integrate.c (function_cannot_inline_p): Use it.
- * toplev.c (decode_f_option): Set multiple parameters
- controlling inlining with -finline-limit.
- * params.def: Fix orthographic and typographic errors.
- * doc/invoke.texi: Document parameters controlling inlining
- and the way -finline-limit sets multiple of them.
- * tree.h (struct tree_decl): Introduce inlined_function_flag,
- recording whether the function became eligible for inlining
- by a compiler flag rather than the declaration.
- Provide DID_INLINE_FUNC macro to access it.
- * c-decl.c (grokdeclarator): Set DID_INLINE_FUNC.
- * cp/decl.c (grokfndecl): Likewise.
- * toplev.c (rest_of_compilation): Likewise.
- * cp/optimize (maybe_clone_body): Copy DID_INLINE_FUNC.
- * print-tree.c (print_node): Report it.
- * params.def: Introduce new max-inline-insns-auto limit.
- * params.h: Likewise.
- * tree-inline.c (inlinable_function_p): Apply it to functions
- with DID_INLINE_FUNC set.
- * toplev.c (decode_f_option): Initialize it from -finline-limit
- value.
- * doc/invoke.texi: Document new parameter.
-
-2003-03-06 Michael Matz <matz@suse.de>
-
- * i386/i386.c (ix86_save_reg): Also test
- current_function_uses_const_pool.
-
-2003-03-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md (return_external_pic): Add !TARGET_PA_20 to constraint.
- (epilogue): Don't generate return_external_pic when emitting PA 2.0
- code.
-
-2003-03-05 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.h (PAD_VARARGS_DOWN): Define and return
- according to va_arg type.
- (EXPAND_BUILTIN_VA_ARG): Remove.
- * config/m68hc11/m68hc11.c (m68hc11_va_arg): Remove.
- * config/m68hc11/m68hc11-protos.h (m68hc11_va_arg): Remove.
+ 2004-01-29 Jakub Jelinek <jakub@redhat.com>
+ * emit-rtl.c (change_address): Use XEXP (memref, 0) instead
+ of addr when creating MEM copy.
+
+ 2004-01-28 Jakub Jelinek <jakub@redhat.com>
+ * expr.c (store_constructor): Revert 2003-12-03 change.
+
+ * emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
+ expected before returning early. Avoid sharing RTL if they
+ need to be changed.
+
+ * config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
+ handling so that memory attributes are preserved. Don't call
+ ix86_set_move_mem_attrs.
+ (ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
+ (ix86_expand_clrstr): Rename src argument to
+ dst. Rework rep_stos and strset handling so that memory attributes
+ are preserved.
+ (ix86_expand_strlen): Pass src argument to
+ ix86_expand_strlensi_unroll_1. Rework strlenqi_1 handling so that
+ memory attributes are preserved.
+ (ix86_expand_strlensi_unroll_1): Add src argument. Use
+ change_address instead of gen_rtx_MEM.
+ * config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
+ expanders.
+ (strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
+ strmovqi, strmovqi_rex64): Remove.
+ (rep_mov*, strmov*): Prefix insn names with *.
+ (strset, strset_singleop, rep_stos): New expanders.
+ (strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
+ strsetqi, strsetqi_rex64): Remove.
+ (rep_stos*, strset*): Prefix insn names with *.
+ (rep_stosqi_rex64): Likewise. Fix mode of dirflag reg from DImode
+ to SImode.
+ (cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
+ are preserved.
+ (cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
+ Prefix insn names with *.
+ (cmpstrqi_nz_1, cmpstrqi_1): New expanders.
+ (strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
+ (strlenqi_1): New expander.
+ * config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
+
+ 2004-01-24 Jan Hubicka <jh@suse.cz>
+ * emit-rtl.c (change_address, adjust_address_1, offset_address,
+ widen_memory_access): Return early when there is nothing to change.
+
+2004-02-10 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.ac (gcc_cv_as_powerpc_mfcrf): Correct test for mfcr.
+ * configure: Regenerate.
-2003-03-05 Jan Hubicka <jh@suse.cz>
+2004-02-10 Ulrich Weigand <uweigand@de.ibm.com>
- * toplev.c (rest_of_compilation): Do duplicate loop headers when
- optimizing for size.
+ * cfganal.c (flow_call_edges_add): Never split a libcall block.
-2003-03-05 Michael Matz <matz@suse.de>
+2004-02-10 Richard Sandiford <rsandifo@redhat.com>
- * unwind.h: Add the GPL exception.
- * Makefile.in (USER_H): Add unwind.h.
+ * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI
+ && TARGET_IRIX.
-2003-03-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-02-09 Geoffrey Keating <geoffk@apple.com>
- PR c/9799
- * c-typeck.c (push_init_level): Add sanity check.
+ PR 12028
+ * config/rs6000/rs6000.c (ccr_bit): Don't let consistency check
+ failure stop compilation, just print helpful message.
-2003-03-04 Steve Ellcey <sje@cup.hp.com>
+2004-02-09 Fariborz Jahanian <fjahanian@apple.com>
- * expr.c (convert_modes): Check for legal hard register.
+ * expr.c (emit_group_load): split constant
+ correctly into register components of PARALLEL insn.
-2003-03-04 Andreas Schwab <schwab@suse.de>
+2004-02-09 DJ Delorie <dj@redhat.com>
- * config/m68k/m68k.c (m68k_output_function_prologue): Fix CFA
- offset without frame pointer.
+ * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No
+ longer modify standard_exec_prefix, standard_bindir_prefix, or
+ standard_startfile_prefix.
-2003-03-04 Steve Ellcey <sje@cup.hp.com>
+2004-02-09 James E Wilson <wilson@specifixinc.com>
- * expr.c (expand_expr): Call promote_mode to set unsignedp.
+ PR c++/11295
+ * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call
+ to expand_expr_real call, and pass in alt_rtl as last argument.
-2003-03-04 Roger Sayle <roger@eyesopen.com>
+ PR libstdc++/5625
+ * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New.
+ * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER.
+ * builtins.def (BUILT_IN_EXTEND_POINTER): New.
+ * except.c (expand_builtin_extend_pointer): New.
+ * except.h (expand_builtin_extend_pointer): Declare.
- PR c++/9367
- * builtin-types.def (DEF_FUNCTION_TYPE_VAR_3): New macro.
- (BT_FN_INT_CONST_STRING_VALIST_ARG,
- BT_FN_INT_STRING_CONST_STRING_VALIST_ARG,
- BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG,
- BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG,
- BT_FN_INT_STRING_CONST_STRING_VAR,
- BT_FN_INT_CONST_STRING_CONST_STRING_VAR,
- BT_FN_INT_STRING_SIZE_CONST_STRING_VAR): New built-in types.
- * builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2,
- ATTR_NONNULL_3): Also include the nothrow attribute.
- (sprintf, scanf, sscanf, vprintf, vsprintf, snprintf,
- vsnprintf, vscanf, vsscanf): Don't define attributes here.
- * builtins.def (putchar, puts): Make full C89 built-ins.
- (snprintf, sprintf, scanf, sscanf, vprintf, vscanf,
- vsscanf, vsnprintf, vsprintf): New built-ins.
- * c-common.c (c_common_nodes_and_builtins): Handle new macro
- DEF_FUNCTION_TYPE_VAR_3.
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * doc/extend.texi: Document these new built-in functions.
-
-2003-03-04 Jan Hubicka <jh@suse.cz>
-
- * calls.c (rtx_for_function_call): Take the address as an argument
- (expand_call): Do not modify the expression.
-
-2003-03-04 Kevin Buettner <kevinb@redhat.com>
+ * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define.
+ * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef.
- * dwarf2out.c (rtl_for_decl_location): Don't return NULL_RTX for
- global register variables.
-
-2003-03-03 Richard Henderson <rth@redhat.com>
+ * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ...
+ * config/mips/iris5.h: ... here.
+ * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove.
- * configure.in (HAVE_AS_LTOFFX_LDXMOV_RELOCS): New ia64 test.
- * config.in, configure: Rebuild.
- * config/ia64/ia64.c (ia64_ld_address_bypass_p): Accept lo_sum.
- * config/ia64/ia64.md (load_symptr): Use high/lo_sum for the
- paired ldtoffx and ldxmov annotations.
- (load_symptr_internal1): Remove.
- (load_symptr_high, load_symptr_low): New.
- * config/ia64/ia64.h (HAVE_AS_LTOFFX_LDXMOV_RELOCS): Default to 0.
+ * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ...
+ * config/mips/iris5.h: ... here.
-2003-03-03 Jason Merrill <jason@redhat.com>
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * calls.c (compute_argument_addresses): Give the new MEMs a
- minimum alignment of PARM_BOUNDARY.
+ * configure.ac: Remove default executable files before AC_PROG_CC.
+ * configure: Regenerate.
-2003-03-03 Geoffrey Keating <geoffk@apple.com>
+2004-02-09 Kazu Hirata <kazu@cs.umass.edu>
- * doc/install.texi (Specific): Update entry for powerpc-darwin.
+ PR target/13721
+ * config/h8300/h8300.c (byte_reg): Call abort() if asked to
+ print a operand other than a register.
-2003-03-03 Jan Hubicka <jh@suse.cz>
- * toplev.c (rest_of_compilation): Avoid cfg_cleanup calls when not
- optimizing.
+2004-02-09 Nick Clifton <nickc@redhat.com>
-2003-02-28 Jan Hubicka <jh@suse.cz>
+ * Import these patches from mainline sources:
- * combine.c (gen_lowpart_for_combine): Update handling of subregs_of_mode
- * flow.c (life_analysis, mark_used_regs): Likewise.
- * regclass.c (subregs_of_mode): Turn into single bitmap.
- (cannot_change-mode_set_regs, invalid_mode_change_p): Update
- dealing with subregs_of_mode
- * regs.h (subregs_of_mode): Update prototype.
+ 2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com>
-2003-02-28 Jan Hubicka <jh@suse.cz>
+ * config/m32r/m32r.h (CPP_SPEC): Define.
- * toplev.c (rest_of_compilation): Rearrange insn splitting
- * reg-stack.c (reg_to_stack): Do not split insns.
+ 2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-2003-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK
+ not TARGET_M32RX_MASK.
- * ggc-common.c (ggc_rlimit_bound): Cast RLIM_INFINITY to avoid
- warnings.
+2004-02-09 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+ * cpplib.h (cpp_get_line_maps): Un-constify the structure
+ pointed to by the pointer returned by the function.
+ * cpplib.c (cpp_get_line_maps): Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_override_options): Don't enable
- min/max instructions by default as may result in reload errors.
+2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
-2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+ * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a
+ warning.
- * config/m68hc11/m68hc11.md ("mulqi3"): Allow address register to
- avoid reload problems; define split for it.
+2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
-2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+ * README.Portability: Change "ISO C89" to "ISO C90".
+ * c-parse.in (primary, initelt): Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_shift_operator): New function.
- * config/m68hc11/m68hc11-protos.h (m68hc11_shift_operator): Declare.
- * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register.
- * config/m68hc11/m68hc11.md ("rotrhi3", "rotlhi3"): New patterns for
- rotatert and rotate.
- ("rotrhi3_const", "rotlhi3_const"): Rename of old 'rotrhi3' insns.
- ("*rotrhi3", "*rotlhi3"): New insn pattern for non-const rotatert.
- ("*rotrhi3_addr"): New split for shift insns on address register.
- ("*lshrhi3", "*ashrhi3", "*ashlhi3_2"): Use new split.
- * config/m68hc11/larith.asm (___rotlhi3): New asm function.
- (___rotrhi3): Likewise.
- * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build them.
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
-2003-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ Bug 13856
+ * c-decl.c (diagnose_mismatched_decls): Only give special
+ treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE
+ is also true.
+ (merge_decls): Don't clear DECL_BUILT_IN_CLASS and
+ DECL_FUNCTION_CODE when defining a built-in function.
+ Don't update DECL_ESTIMATED_INSNS.
+ * dwarf2out.c (dwarf2out_decl): Don't ignore built-in
+ FUNCTION_DECLs.
+ * tree.h: Delete DECL_ESTIMATED_INSNS.
+ * tree-inline.c (struct inline_data): Delete inlined_insns field.
+ (expand_call_inline, optimize_inline_calls): Don't update
+ DECL_ESTIMATED_INSNS nor inlined_insns.
+ * cgraphunit.c (cgraph_analyze_function): Don't update
+ DECL_ESTIMATED_INSNS.
- * fp-bit.h (float_to_usi): Fix condition wrapping prototype.
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
-2003-03-02 Ashif Harji <asharji@uwaterloo.ca>
+ * c-common.c (shadow_warning): Delete.
+ * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete.
+ * c-decl.c (warn_if_shadowing): Issue shadow warnings directly.
+ * c-opts.c (c_common_parse_file): Don't call free_parser_stacks.
+ * c-parse.in (free_parser_stacks): Delete.
- * gcc.c (default_compilers): Add -no-integrated-cpp flag to invoke
- an external cpp during compilation.
- (option_map): Likewise.
- * objc/lang-specs.h (default_compilers): Similarly.
- * doc/invoke.texi: Document -no-integrated-cpp flag.
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-2003-03-01 Jason Thorpe <thorpej@wasabisystems.com>
+ * c-opts.c, c-ppoutput.c, cppfiles.c, cpphash.h, cppinit.c,
+ cpplib.h, diagnostic.h, fix-header.c, config/fp-bit.c,
+ config/mips/iris5.h, doc/makefile.texi: Update copyright.
- * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Enable
- POSIX thread support by default.
+2004-02-06 James E Wilson <wilson@specifixinc.com>
-2003-03-01 Roger Sayle <roger@eyesopen.com>
+ * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for
+ glibc 2.3 or better.
- PR bootstrap/7389.
- * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
+2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
-2003-02-28 Jason Thorpe <thorpej@wasabisystems.com>
+ * loop.c (force_movables): Transitively increase the priorities of
+ all insns forces by an insn, not just the first one.
- * config/netbsd.h: Update copyright years.
- (NETBSD_CPP_SPEC): Define _REENTRANT and _PTHREADS if
- -pthread is specified on the command line.
+2004-02-06 Falk Hueffner <falk@debian.org>
-2003-02-28 Bob Wilson <bob.wilson@acm.org>
+ PR target/12898
+ * config/alpha/alpha.c (alpha_emit_set_const_1): If
+ no_new_pseudos, use gen_rtx_SET directly for SImode constants
+ which need multiple instructions to emit.
- Backport following patch:
+2004-02-06 H.J. Lu <hongjiu.lu@intel.com>
- 2003-02-28 Bob Wilson <bob.wilson@acm.org>
- * config.gcc (xtensa-*-linux*): Add t-slibgcc-elf-ver to tmake_file.
+ * doc/invoke.texi: Remove the pni option from -mfpmath=.
-2003-02-27 Joel Sherrill <joel@OARcorp.com>
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
- PR 9638/other
- * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Ensure the
- this constant defaults to 1.
+ * doc/install.texi: Update automake and autoconf version
+ requirements. Note where to find gcj automake version.
-2003-02-28 Richard Sandiford <rsandifo@redhat.com>
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
- * config/mips/mips.md: Disable the movstrsi define_split.
+ * Makefile.in (generate-manpages): Move dependencies to ...
+ (man): here.
+ * doc/makefile.texi: Document new targets.
+ * doc/sourcebuild.texi (Make-lang.in): Document new langhooks.
-2003-02-28 Richard Sandiford <rsandifo@redhat.com>
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
- * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Wrap in
- #ifndef __mips16.
+ PR/13485
+ Makefile.in (srcextra): Add a level of indirection to ...
+ (gcc.srcextra): ... here.
+ (po-generated): Delete.
+ (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on
+ options.c.
+ (start.encap): Remove superfluous lang.srcextra dependency.
+ objc/Make-lang.in (po-generated): Delete.
-2003-02-27 Geert Bosch <bosch@gnat.com>
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * toplev.c (print_version): Add indentation for GGC heuristics and
- output after printing version information.
+ * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define.
-2003-02-27 James E Wilson <wilson@tuliptree.org>
+2004-02-05 Andreas Krebbel <krebbel1@de.ibm.com>
- PR bootstrap/9255
- * combine.c (simplify_comparison): Require integral mode when
- permuting SUBREG with AND.
+ * config/s390/s390.md ("*tmqidi_ext"): New insn.
+ ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old
+ pre-reload splitters are transformed to post-reload
+ define_insn_and_split patterns.
+ ("*tmqisi_ext"): Renamed old "*tmqi_ext".
-2003-02-27 Steve Ellcey <sje@cup.hp.com>
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * config/ia64/hpux.h (STARTFILE_PREFIX_SPEC): Remove.
+ PR middle-end/13750
+ Revert:
+ 2004-01-15 Geoffrey Keating <geoffk@apple.com>
+ PR pch/13361
+ * c-typeck.c (constructor_asmspec): Delete.
+ (struct initializer_stack): Delete field 'asmspec'.
+ (start_init): Delete saving of asmspec.
+ (finish_init): Don't update constructor_asmspec.
+ * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
+ * stmt.c (expand_asm): Duplicate strings from tree.
+ (expand_asm_operands): Likewise.
+ * tree.c (tree_size): Update computation of size of STRING_CST.
+ (make_node): Don't make STRING_CST nodes.
+ (build_string): Allocate string with tree node.
+ * tree.def (STRING_CST): Update comment.
+ * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
+ (tree_string): Place contents of string in tree node.
+ * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
+ from tree.
-2003-02-27 Alan Modra <amodra@bigpond.net.au>
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
- * config/rs6000/rs6000.md: Add TI constant splitter.
+ * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to
+ msgid.
-2003-02-26 Jan Hubicka <jh@suse.cz>
+2004-02-05 Paul Brook <paul@codesourcery.com>
- * expr.c (emit_group_store): Fix crash when converting single
- register into complex register.
+ Backport from mainline.
-2003-02-26 Michael Matz <matz@suse.de>
+ 2003-11-22 Phil Edwards <phil@codesourcery.com>
+
+ PR target/12476
+ * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use
+ 'bx' instead of 'b' to avoid branch range restrictions. Output
+ the thunk immediately before the thunked-to function.
+ * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit
+ .thumb_func if a thunk is being generated. Emit .code 16 along
+ with .thumb_func if a thunk is not being generated.
+
+ 2003-11-05 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
+ parameter. Use it instead of current_function_is_thunk.
+ * function.h (struct function): Update documentation for is_thunk.
+ * tree.h (CALL_FROM_THUNK_P): New macro.
+ * config/alpha/alpha.c (alpha_sa_mask): Do not check
+ no_new_pseudos when testing current_function_is_thunk.
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.
+
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
- * ra-colorize.c (merge_moves): Fix list handling.
+ * sourcebuild.texi (Test Idioms): Update testcase naming
+ conventions.
+
+2004-02-04 Per Bothner <per@bothner.com>
+
+ Partially revert/redo 2003-10-01 change; fix -fworking-directory.
+ * c-ppoutput.c (pp_dir_change): New function.
+ * c-common.h (pp_dir_change): New declaration.
+ * cpplib.h (struct cpp_options): Remove working_directory field.
+ * cppinit.c (cpp_find_main_file, cpp_push_main_file): Merge back to
+ (cpp_read_main_file): as before 10-01. Call _cpp_stack_file.
+ Don't handle -fworking_directory here, but in c_common_post_options.
+ (read_original_directory): Don't back up when done.
+ Don't clear no-longer used working_directory flag.
+ * cpplib.h: Update declarations to match.
+ * c-lex.c (cb_dir_change): Move to c-opts.c.
+ (init_c_lex): Don't set dir_change callback here, since we want
+ to set it even if flag_preprocess_only.
+ * c-opts.c (cb_dir_change): Function moved from c-lex.c.
+ (c_common_post_options): Set dir_change callback.
+ Call pp_dir_change if approporiate.
+ (finish_options): Don't call cpp_find_main_file here. Hence remove
+ unneeded parameter and result. Do LC_RENAME for <built-in>.
+ (c_common_post_options): Call cpp_read_main_file here instead.
+ (c_common_init): Update accordingly.
+ (push_command_line_include): Don't cpp_push_main_file.
+ Do LC_RENAME rather than LC_LEASE to get back to main file.
+ Compared to pre-10-01 version, inline cpp_rename_to_main_file.
+ (c_common_parse_file): Call cpp_read_main_file for subsequent main
+ files, but call finish_options for all files.
+ * c-opts.c (sanitize_cpp_opts): Don't set cpp_opts->working_directory.
+ * fix-header.c (read_scan_file): Call cpp_read_main_file instead of
+ cpp_find_main_file + cpp_push_main_file.
+ * c-lex.c (fe_file_change): Don't set main_input_filename here.
+ * opts.c (handle_options): Only set main_input_filename first time.
+
+2004-02-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in: Move target, host overrides after per-language
+ fragments.
+
+ * config/mips/t-iris5-as (FORCE_DEBUG_ADAFLAGS): Clear.
+ (GNATLIBCFLAGS): Remove -g.
+
+2004-02-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for all modes whose size is greater than 8 bytes if ARCH32.
+ (sparc_va_arg): Handle all modes whose size is greater than 8 bytes
+ by reference if ARCH32.
+
+2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move
+ to before adddi3 insn patterns.
+ ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31",
+ "reload_insi"): Move to before addsi3 insn patterns.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't
+ mention deprecated target macros.
+
+2004-02-03 Wolfgang Bangerth <bangerth@dealii.org>
+
+ * doc/invoke.texi (x86 options): Fix spelling/wording.
+
+2004-02-03 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to
+ put the original string in a comment.
+ * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument.
+ * config/mips/mips.c (mips_output_ascii): Likewise.
+ * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13975
+ * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and
+ TI_PRIVATE.
+ (access_public_node): Redefine.
+ (access_protected_node): Likewise.
+ (access_private_node): Likewise.
+ * tree.c (build_common_tree_nodes): Create access_public_node,
+ access_protected_node, and access_private_node.
+
+2004-02-03 Alan Modra <amodra@bigpond.net.au>
-2003-02-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+ PR target/13914
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap
+ for retaddr_column.
+
+2004-02-03 Kelley Cook <kcook@gcc.gnu.org>
+
+ * opts.c (OPT_fwritable_strings): Deprecate -fwritable-strings.
- * pa.c (compute_frame_size): Don't assume PREFERRED_STACK_BOUNDARY
- is 8 * STACK_BOUNDARY.
- * pa.h (PREFERRED_STACK_BOUNDARY): Change to 128 on 64-bit port.
+2004-02-03 Steven Bosscher <s.bosscher@student.tudelft.nl>
-2003-02-26 Alan Modra <amodra@bigpond.net.au>
+ * toplev.c: Fix broken checkin of 2003-12-30, again.
- PR target/9681
- * tlink.c (scan_linker_output): Drop leading '.' from symbol names.
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
-2003-02-25 Richard Henderson <rth@redhat.com>
+ * c-opts.c (c_common_handle_option): Add -finput-charset.
+ * c.opt: Ditto.
+ * cppcharset.c (_cpp_convert_input): New function.
+ (_cpp_default_encoding): Ditto.
+ * cpphash.h: Add prototypes for above.
+ * cppfiles.c (read_file_guts): Use _cpp_convert_input.
+ * cppinit.c (cpp_create_reader): Use _cpp_default_encoding
+ for narrow execution and input character sets.
+ * doc/cppopts.texi: Document -finput-charset.
- * config/i386/i386.c (function_arg): Pass variable sized
- structures correctly on the stack.
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-02-25 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ * doc/invoke.texi (SPARC options): Further improve.
- PR target/9732
- * config/rs6000/rs6000.c (first_reg_to_save): Handle
- PIC_OFFSET_TABLE_REGNUM for -fPIC too.
- (rs6000_emit_prologue): Likewise.
- (rs6000_emit_epilogue): Likewise.
- * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Make
- PIC_OFFSET_TABLE_REGNUM a fixed register for -fPIC.
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-02-25 Richard Henderson <rth@redhat.com>
+ * config/sparc/sparc.c (function_arg_slotno): Align TImode
+ arguments on a 16-byte boundary in the parameter array if ARCH64.
+ Split handling of TFmode.
- * real.c (real_to_integer2): Force overflow result only for
- unsigned overflow.
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-02-25 Jan Hubicka <jh@suse.cz>
+ * doc/invoke.texi (SPARC options): Document that -mflat is deprecated.
- PR target/8343
- * m68k.md (umulsidi, mulsidi expanders): Use register operand.
+2004-02-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-02-24 Svein E. Seldal <Svein.Seldal@solidas.com>
+ * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3.
+ (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3.
+ (ASM_CPU_SPEC): Likewise
+ * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3.
+ (ASM_CPU_SPEC): Remove -mcpu=v8plus. Handle -mcpu=ultrasparc3.
- * config/c4x/c4x.h (ASM_FILE_START): Added support for the c33
- processor.
+2004-02-01 Jan Hubicka <jh@suse.cz>
-2003-02-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
- * config/mips/iris6.h (TARGET_OS_CPP_BUILTINS): Define __c99 for
- ISO C99 and C++.
+2004-02-01 Richard Sandiford <rsandifo@redhat.com>
- * fixinc/inclhack.def (irix___restrict): Don't change __restrict
- for C++ on IRIX 6.5.1[89].
- * fixinc/tests/base/internal/sgimacros.h: New file.
+ * config/mips/mips.md (adddi3_internal_2): Remove superfluous %s.
- * fixinc/inclhack.def (irix_wcsftime): Use XPG5 variant for C99.
- * fixinc/tests/base/internal/wchar_core.h: New file.
+2004-01-31 Eric Botcazou <ebotcazou@libertysurf.fr>
- * fixinc/inclhack.def (irix_socklen_t): Fix broken IRIX 6.5.1[78]
- socklen_t definition.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/sys/socket.h: New file.
- Fixes PR libgcj/9652.
+ * doc/invoke.texi (SPARC options): Restructure and update.
-2003-02-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
- * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Rename
- __EXTERN_PREFIX to __PRAGMA_EXTERN_PREFIX.
- * doc/extend.texi (Tru64 Pragmas): Reflect this.
+ * doc/invoke.texi: Follow spelling conventions.
+ * doc/tm.texi: Likewise.
- * fixinc/inclhack.def (alpha___extern_prefix): Indicate #pragma
- extern_prefix support for Tru64 UNIX V5 <sys/stat.h>.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_CHECK]: New
- testcase.
- Fixes PR c/5059, c/6126, other/9671.
-
-2003-02-24 Alan Modra <amodra@bigpond.net.au>
-
- PR 9297, PR 9722
- * calls.c (store_one_arg): Revert 1999-02-16 change. Revert
- 2000-12-17 change. Pass EXPAND_STACK_PARM to expand_expr.
- * expr.h (enum expand_modifier): Define EXPAND_STACK_PARM.
- (enum block_op_methods): Reorder for better store_expr optimization.
- * expr.c (store_expr): Test bit 1 of "want_value" for call param
- stores, test bit 0 for original want_value meaning. Pass
- BLOCK_OP_CALL_PARM to emit_block_move when bit 1 set. Adjust
- recursive calls, and calls to expand_param.
- (expand_expr): Handle EXPAND_STACK_PARM modifier. When cse
- expected, set target to 0 rather than to subtarget. Formatting.
-
-2003-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Document
- new default behavior.
- * ggc-common.c: Include sys/resource.h.
- (ggc_rlimit_bound): New function.
- (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic): Update
- defaults to account for rlimits.
-
-2003-02-22 Jan Hubicka <jh@suse.cz>
-
- * config/linux.h (TARGET_HAS_F_SETLKW): Define.
- * config/alpha/linux.h (TARGET_HAS_F_SETLKW): Likewise
-
-2003-02-22 Hans-Peter Nilsson <hp@axis.com>
-
- * regmove.c (optimize_reg_copy_1): Do not replace a hard register
- in an asm.
-
-2003-02-22 Jan Hubicka <jh@suse.cz>
-
- * i386.c (builtin_description): Add __builtin_ia32_paddq and
- __builtin_ia32_psubq. Fix __builtin_ia32_paddq128
- and __builtin_ia32_psubq128.
- * i386.h (IX86_BUILTIN_PADDQ, IX86_BUILTIN_PSUBQ): New.
- * i386.md (addv*, mmx_ior*, mmx_xoe*, mmx_and*): Add missing '%'.
- (mmx_adddi3, mmx_subdi3): New.
- * mmintrin.h (_mm_add_si64, _mm_sub_si64): New.
- * xmmintrin.h (_mm_movepi64_pi64): New.
- (_mm_add_epi64, _mm_sub_epi64): fix.
- (_mm_mul_pu16): Rename to...
- (_mm_mul_su32): ... this one.
-
- * i386.c (def_builtin): Special case 64bit builtins.
- (MASK_SSE164, MASK_SSE264): New constants.
- (builtin_description): Add 64bit builtins.
- (ix86_init_mmx_sse_builtins): Likewise.
- * i386.h (enum ix86_builtins): Likewise.
- * i386.md (cvtss2siq, cvttss2siq, cvtsd2siq, cvttsd2siq, cvtsi2sdq,
- sse2_movq2dq_rex64, sse2_movsq2q_rex64): New.
- (sse2_movq2dq, sse2_movsq2q): Disable for 64bit.
- * mmintrin.h (_mm_cvtsi64x_si64, _mm_set_pi64x, _mm_cvtsi64_si64x): New.
- * xmmintrin.h (_mm_cvtss_si64x, _mm_cvttss_si64x, _mm_cvtsi64x_ss,
- _mm_set_epi64x, _mm_set1_epi64x, _mm_cvtsd_si64x, _mm_cvttsd_si64x,
- _mm_cvtsi64x_sd, _mm_cvtsi64x_si128, _mm_cvtsi128_si64x): New.
-
- * builtins.c (expand_builtin_expect): Do not predict
- flag_guess_branch_prob is not set.
- * c-semantics.c (expand_stmt): Likewise.
- * predict.c (predict_insn): Likewise.
- * stmt.c (expand_continue_loop): Likewise.
- * toplev.c (rest_of_compilation): Do not call
- note_prediction_to_br_prob and note_prediction_to_br_prob
- when not optimizing.
-
- * basic-block.h (tidy_fallthru_edges): Kill.
- * cfgrtl.c (tidy_fallthru_edges): Kill.
- * cfgbuild.c (find_basic_blocks): Do not call tidy_fallthru_edges.
- * cfgcleanup.c (delete_unreachable_blocks): Likewise.
-
-2003-02-22 Steven Bosscher <s.bosscher@student.tudelft.nl>
-
- PR other/3782
- * toplev.c (process_options): If flag_detailed_statistics is set,
- then set time_report as well.
-
- PR c/8828
- * jump.c (never_reached_warning): Don't fall through BARRRIER
- insns. Update comments to reflect what the function really does.
-
-2003-02-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Update
- documentation.
- * ggc-common.c: Include params.h
- (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic,
- init_ggc_heuristics): New functions.
- * ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic,
- init_ggc_heuristics): Prototype.
- * toplev.c (print_version): Output GGC heuristics.
- (parse_options_and_default_flags): Call init_ggc_heuristics.
-
-2003-02-21 Jan Hubicka <jh@suse.cz>
-
- * cfgrtl.c (commit_edge_insertions): Call
- find_many_sub_basic_block only when some code has been emitted.
- (commit_edge_insertions_watch_calls): Bring into sync with
- commit_edge_insertions
-
-2003-02-21 Zack Weinberg <zack@codesourcery.com>
-
- * cpphash.h (struct lexer_state): Add directive_wants_padding.
- * cpplib.c (_cpp_handle_directive): Set directive_wants_padding
- for directives of type INCL.
- (glue_header_name, parse_include): Use get_token_no_padding.
- * cppmacro.c (replace_args): If directive_wants_padding,
- provide padding tokens.
-
-2003-02-21 Jan Hubicka <jh@suse.cz>
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
- * cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting.
- (commit_edge_insertions): Call find_many_sub_basic_blocks
-
- * reg-stack.c (convert_regs): Cleax aux for blocks.
-
-2003-02-21 Glen Nakamura <glen@imodulo.com>
-
- PR optimization/8613
- * builtins.c (expand_builtin): Emit postincrements before expanding
- builtin functions.
-
-2003-02-21 Toon Moene <toon@moene.indiv.nluug.nl>
-
- PR fortran/9038
- * c-opts.c (sanitize_cpp_opts): Add Fortran front end
- options to be ignored.
- (c_common_decode_option): Ignore them when preprocessing.
-
-2003-02-21 Ben Elliston <bje@redhat.com>
-
- PR other/5634
- * doc/install.texi (Configuration): Explain using $HOME instead of
- the ~ metacharacter when referring to home directories.
-
-2003-02-20 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_reload_in_hi): Ensure that the scratch register does
- not overlap the final result register.
-
-2003-02-20 Josef Zlomek <zlomekj@suse.cz>
-
- * combine.c (distribute_notes): Kill REG_EXEC_COUNT.
- * rtl.c (reg_note_name): Likewise.
- * rtl.h (enum reg_note): Likewise.
+ * doc/install.texi: Fix typos.
* doc/invoke.texi: Likewise.
- * doc/rtl.texi: Likewise.
-
-2003-01-30 Richard Henderson <rth@redhat.com>
-
- * tree-inline.c (walk_tree): Streamline duplicate hash table lookup.
-
-2003-02-19 Daniel Jacobowitz <drow@mvista.com>
-
- * expr.c (expand_expr): Use gen_int_mode for the argument
- to gen_rtx_MULT.
-
-2003-02-19 Jan Hubicka <jh@suse.cz>
-
- * i386.md (cosxf2): Fix conditional.
-
-2003-02-18 Matt Austern <austern@apple.com>
- * toplev.c, langhooks.c, langhooks-def.h: Move
- write_global_declarations from toplev.c to langhooks.c.
-
-2003-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (general_operand_src): Always check
- MODE.
- (general_operand_dst): Likewise.
-
-2003-02-18 Richard Henderson <rth@redhat.com>
-
- * c-common.c (handle_used_attribute): Accept static data too.
-
-2003-02-18 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.md (floatdidf2, floatdisf2): Add %, before second
- instruction in output template.
- (bsp_value): Change output template from string to C code, add %,
- before actual instruction.
- (flushrs): Mark as not predicable.
-
-2003-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*zero_extendhisi2_h8300): Fix the
- insn length.
- (extendqisi2): Likewise.
- (*extendhisi2_h8300): Likewise.
-
-2003-02-18 Matt Austern <austern@apple.com>
-
- * langhooks.h, langhooks-def.h: introduce new langhook,
- final_write_globals, with write_global_declarations as default.
- * toplev.c: Move invocation of wrapup_global_declarations from
- compile_file to new function, write_global_declarations. Change
- compile_file to use final_write_globals hook. Change
- wrapup_global_declarations so writing to DECL_DEFER_OUTPUT is
- conditional.
-
-2003-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md: Correct and enhance comment.
-
-2003-02-16 Kai Henningsen <kaih@khms.westfalen.de>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Specific): Fix link for m68k-att-sysv.
- (Binaries): Ditto for Sinix/Reliant Unix.
-
-2003-02-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * config/i386/i386-protos.h (function_arg_pass_by_reference): Declare.
- * config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
- * config/i386/i386.c (function_arg_pass_by_reference): New.
- (ix86_va_arg): Support arguments passed by reference.
-
-2003-02-16 Arend Bayer <arend.bayer@web.de>
- Richard Henderson <rth@redhat.com>
-
- PR c/8068
- * fold-const.c (extract_muldiv_1): Rename from extract_muldiv;
- rearrange mult arguments for less recursion.
- (extract_muldiv): New. Prevent runaway recursion.
-
-2003-02-16 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygwin.h (TARGET_SUBTARGET_DEFAULT): Set
- MASK_ALIGN_DOUBLE.
-
-2003-02-15 Adam Nemet <anemet@lnxw.com>
-
- PR opt/2391
- * combine.c: Fix spelling in comment.
- (cached_nonzero_bits): New function.
- (cached_num_sign_bit_copies): New function.
- (nonzero_bits_with_known): New macro.
- (num_sign_bit_copies_with_known): New macro.
- (nonzero_bits1): Rename from nonzero_bits. Add three new
- arguments. Change calls from nonzero_bits to
- nonzero_bits_with_known.
- (num_sign_bit_copies1): Rename from num_sign_bit_copies. Add
- three new arguments. Change calls from num_sign_bit_copies to
- num_sign_bit_copies_with_known.
- (nonzero_bits): New macro.
- (num_sign_bit_copies): New macro.
- (update_table_tick): Don't traverse identical subexpression more
- than once.
- (get_last_value_validate): Likewise.
-
-2003-02-15 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
-
- PR optimization/7702
- * reload1.c (reload_cse_simplify_set): Honor
- CANNOT_CHANGE_MODE_CLASS.
-
-2003-02-15 Jan Hubicka <jh@suse.cz>
-
- PR optimization/9258, PR fortran/7681
- * global.c (struct allocno): Add no_stack_reg.
- (global_conflicts): Set it.
- (find_reg): Use it.
-
-2003-02-14 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.c (mn10300_wide_const_load_uses_clr): New
- function.
- * config/mn10300/mn10300-protos.h: Declare it.
- * config/mn10300/mn10300.md (movdi, movdf): Use it to compute
- attribute cc of instructions that may use clr.
-
-2003-02-13 John David Anglin <dave.anglin@nrc-crnc.gc.ca>
-
- * inclhack.def (hpux_long_double): Tighten select and add bypass
- regexp.
- * fixincl.x: Rebuilt.
-
-2003-01-30 Richard Henderson <rth@redhat.com>
-
- * ggc-page.c (G.context_depth_allocations): New.
- (G.context_depth_collections): New.
- (alloc_page): Set G.context_depth_allocations.
- (ggc_collect): Set G.context_depth_collections.
- (ggc_push_context): Limit to HOST_BITS_PER_LONG contexts.
- (ggc_pop_context): Early exit for no allocations or collections.
-
-2003-01-25 Segher Boessenkool <segher@koffie.nl>
-
- * bitmap.h (BITMAP_WORD): New typedef: fundamental storage
- type for bitmaps. Use unsigned long.
- (nBITMAP_WORD_BITS): New macro.
- (BITMAP_WORD_BITS): New macro.
- (rest of file): Use it.
- * bitmap.c: Use it.
-
-2003-02-13 Josef Zlomek <zlomekj@suse.cz>
-
- * cfgcleanup.c (outgoing_edges_match): When there is single outgoing
- edge and block ends with a jump insn it must be simple jump.
-
-2003-02-13 Robert Lipe <robertlipe@usa.net>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Specific): Update three SCO-related URLs.
-
-2003-02-12 Ranjit Mathew <rmathew@hotmail.com>
-
- * doc/tm.texi (MODIFY_JNI_METHOD_CALL): Document.
- * config/i386/cygwin.h (MODIFY_JNI_METHOD_CALL): New macro.
-
-2003-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Specific): Update AVR- and Darwin-related URLs.
-
-2003-02-11 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/9100
- Backport patch from mainline:
-
- 2003-01-12 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/9264
- * c-lex.c (c_lex): Set the token value to error_mark_node for
- invalid numeric constants.
-
-2003-02-11 Jan Hubicka <jh@suse.cz>
-
- * i386.md (ahi?v*3): Set third operand type to TImode.
- * i386.c (ix86_expand_binop_builtin): Extend operand when needed.
-
- * i386.c (contains_128bit_aligned_vector_p): New function
- (ix86_function_arg_boundary): Properly align vector modes.
-
-2003-02-11 Bob Wilson <bob.wilson@acm.org>
-
- Backport following patch:
-
- 2003-02-11 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7.
- * config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP
- as a SET pattern.
-
-2003-02-11 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Fix conversion from vector into
- integer mode.
-
- * rtl.def (VEC_MERGE, VEC_SELECT, VEC_CONCAT, VEC_DUPLICATE):
- Change code so they are arithmetic expressions now.
- * simplify-rtx.c (simplify_unary_operation, simplify_binary_operation,
- simplify_ternary_operation): Deal with VEC_* expressions.
-
-2003-02-11 Richard Henderson <rth@redhat.com>
-
- 2003-01-15 Richard Henderson <rth@redhat.com>
- * config/alpha/alpha.c (find_lo_sum_using_gp): Rename from find_lo_sum;
- also check that GP is being used.
- (alpha_find_lo_sum_using_gp): New.
- (alpha_does_function_need_gp): Use get_attr_usegp.
- * config/alpha/alpha-protos.h: Update.
- * config/alpha/alpha.md (attr usegp): New. Annotate patterns
- as needed.
-
-2003-02-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * inclhack.def (hpux_long_double, hpux10_ctype_declarations1,
- hpux10_ctype_declarations2, hpux_ctype_macros): New hacks.
- * fixincl.x: Rebuilt.
- * tests/base/stdlib.h: Update.
- * tests/base/ctype.h: New file.
-
-2003-02-11 Janis Johnson <janis187@us.ibm.com>
-
- * config/rs6000/ppc64-fp.c: New file.
- * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
-
-2003-02-11 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
-
- PR optimization/9651
- * rtlanal.c (may_trap_p): Handle FIX.
-
-2003-02-11 Jan Hubicka <jh@suse.cz>
-
- * predict.c (choose_function_section): Choose sections correctly.
-
-2003-02-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * reload1.c (first_label_num): New.
- (reload): Index offsets_known_at and offsets_at using difference of
- label number and first label number. Don't use offset pointers.
- (set_label_offsets, set_initial_label_offsets): Likewise.
-
-2003-02-10 Eric Botcazou <ebotcazou@libertysurf.fr>
- Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
- PR c/7741
- * c-decl.c (duplicate_decls): Discard the initializer of the
- new decl when the types are conflicting.
-
-2003-02-09 Wolfgang Bangerth <bangerth@ticam.utexas.edu>
-
- * doc/install.texi: Squeeze and streamline section on
- testing and regression checking.
-
-2003-02-07 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/t-netbsd (USER_H): Revert previous change.
-
-2003-02-07 Richard Henderson <rth@redhat.com>
-
- PR 9226
- * gcse.c (local_cprop_find_used_regs): New.
- (local_cprop_pass): Use it.
-
-2003-02-07 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse2_nandv2di3): Fix.
-
- * i386.md (movdi_rex64_1): Fix mmx<->int move opcode.
-
-2003-02-07 Andrey Petrov <petrov@netbsd.org>
-
- * optabs.c (expand_float): Search wider integer modes first.
-
-2003-02-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config.gcc (hppa*-*-linux*): Set MASK_NO_SPACE_REGS in
- target_cpu_default.
- * pa.c (attr_length_call): Add 8 to call length (long indirect PA 1.X)
- if not MASK_NO_SPACE_REGS.
- (output_call): Adjust return pointer, don't load new space register
- into %sr0, and use %sr4 for call if TARGET_NO_SPACE_REGS is true.
- (pa_asm_output_mi_thunk): Don't load new space register into %sr0 if
- TARGET_NO_SPACE_REGS is true.
- * pa.md (return_external_pic): Add TARGET_NO_SPACE_REGS to insn
- conditions.
- (epilogue): Always use return_internal if TARGET_NO_SPACE_REGS is true.
- (interspace_jump): Add new pattern for when TARGET_NO_SPACE_REGS is
- true. Use bve when TARGET_64BIT is true.
-
-2003-02-06 Eric Botcazou <ebotcazou@libertysurf.fr>
- Richard Henderson <rth@redhat.com>
-
- PR c/9530
- * config/i386/i386.h (FUNCTION_OK_FOR_SIBCALL): Forbid sibcalls
- from functions that return a float to functions that don't.
-
-2003-02-04 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (find_reloads): Do not use the mode specified in the insn
- pattern as reload mode for address operands. Do not generate optional
- reloads for operands where a mandatory reload was already pushed.
-
-2003-02-04 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movti_rex64): Fix constraint.
-
-2003-02-04 Rodney Brown <rbrown64@csc.com.au>
-
- * config/i386/i386.c (x86_function_profiler): Fix typo in format.
-
-2003-01-23 Mike Stump <mrs@apple.com>
-
- * regclass.c (init_reg_autoinc): New function.
- (regclass): Move initialization of forbidden_inc_dec_class from
- here...
- (init_regs): to here. Avoids reinitialization for each function,
- saving compilation time.
-
-2003-02-04 Phil Edwards <pme@gcc.gnu.org>
-
- * doc/install.texi (*-*-linux-gnu): Mention glibc requirements
- for recent libstdc++. Remove formatting cruft.
-
-2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/gcc.texi, doc/gccint.texi, doc/gcov.texi,
- doc/include/fdl.texi, doc/invoke.texi: Update to GFDL 1.2.
- * doc/install.texi: Update copyright dates. Update to GFDL 1.2.
-
-2003-02-03 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the
- coprocessor registers before floating-point registers.
- * config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers
- to account for a previously removed register.
- (SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM):
- Delete unused macros.
-
-2003-02-03 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_store_builtin): Always force op1 to register.
- (mov*_internal): Fix predicates; require one of operands to not be memory.
- (SSE?MMX move expanders): Fix predicates; force one of operands to register.
- (SSE/MMX push patterns): Reorganize; fix x86-64 code generation.
- (movups/movupd/movdqu patterns): Force one of operands to not be memory.
-
-2003-02-03 Jan Hubicka <jh@suse.cz>
-
- * regclass.c (cannot_change_mode_set_regs): Correct argument order.
-
-2003-02-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips/_tilib.c: Don't include tsystem.h. Don't define
- LIBGCC2_WORDS_BIG_ENDIAN.
-
-2003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-01-31 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Do not treat virtual
+ registers as pointers.
+ * config/s390/s390.md ("*la_31" second peephole2): Fix incorrect mode.
+
+2004-01-31 Jan Hubicka <jh@suse.cz>
+
+ Revert the following patch until after AIX linker bug is fixed:
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ alloc-pool.c, alloc-pool.h, c-lex.c, c-pragma.h,
+ tree-optimize.c, config/alpha/alpha.c, config/alpha/alpha.h,
+ config/alpha/alpha.md, config/alpha/vms.h, config/arm/arm.h,
+ config/arm/linux-elf.h, config/avr/avr.c, config/c4x/c4x.c,
+ config/c4x/c4x.md, config/d30v/d30v.h,
+ config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
+ config/frv/frv.md, config/frv/frvbegin.c, config/frv/frvend.c,
+ config/i386/cygming.h, config/i386/djgpp.h,
+ config/i386/emmintrin.h, config/i386/gthr-win32.c,
+ config/i386/i386-interix.h, config/i386/i386-protos.h,
+ config/i386/i386.c, config/i386/i386.h, config/i386/openbsd.h,
+ config/i386/winnt.c, config/i386/xm-mingw32.h,
+ config/i386/xmmintrin.h, config/ia64/ia64-protos.h,
+ config/ia64/ia64.c, config/ia64/ia64.md, config/ip2k/ip2k.c,
+ config/iq2000/iq2000-protos.h, config/iq2000/iq2000.c,
+ config/iq2000/iq2000.md, config/m32r/m32r-protos.h,
+ config/m32r/m32r.c, config/m32r/m32r.md, config/m68k/m68k.md,
+ config/m68k/netbsd-elf.h, config/mcore/mcore-elf.h,
+ config/mcore/mcore.c, config/mcore/mcore.h,
+ config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
+ config/mips/iris5gas.h, config/mips/iris6.h,
+ config/mips/iris6gas.h, config/mips/linux.h,
+ config/mips/mips.md, config/mips/netbsd.h,
+ config/mips/openbsd.h, config/mips/windiss.h,
+ config/mn10300/mn10300.c, config/mn10300/mn10300.h,
+ config/pdp11/pdp11.c, config/rs6000/aix.h,
+ config/rs6000/altivec.h, config/rs6000/darwin.h,
+ config/rs6000/xcoff.h, config/s390/s390-protos.h,
+ config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
+ config/sh/netbsd-elf.h, config/sh/sh.h, config/sh/vxworks.h,
+ config/sparc/sol2.h, config/stormy16/stormy16.h: Update
+ copyright.
+
+2004-01-30 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ PR bootstrap/9249
+ * doc/install.texi: document --enable-__cxa_atexit option.
+ * configure.ac: Disable __cxa_atexit if not supported.
+ * configure: Regenerate.
- * doc/install.texi (hppa*-hp-hpux11*): Update installation notes.
+2004-01-30 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
+
+ PR target/12978
+ * c4x.md: (movstrqi*) Use match_scratch instead of match_dup.
+ Remove movstrqi_small because it conflicts with movstrqi_large.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (abs_docdir, abs_srcdir): Define.
+ (doc/%.dvi, doc/gccinstall.dvi): Use $(abs_docdir).
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR optimization/12147
+ * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with
+ RELOAD_FOR_OPADDR_ADDR.
+ (reload_reg_reaches_end_p): RELOAD_FOR_OTHER_ADDRESS register
+ might be reused as RELOAD_FOR_OPADDR_ADDR register.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (get_secondary_mem): Fix updating of
+ secondary_memlocs_elim_used.
+
+2004-01-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * toplev.c: Include alloc-pool.h.
+ * Makefile.in (toplev.c): Update dependencies.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.h: Update copyright.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/12818
+ * varasm.c (const_hash_1) <STRING_CST>: Use the
+ address to compute the hash value if flag_writable_strings.
+ (compare_constant) <STRING_CST>: Compare the addresses
+ if flag_writable_strings.
+ (build_constant_desc): Do not copy the expression for a
+ STRING_CST if flag_writable_strings.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+ * reload.c (secondary_memlocs_elim_used): New static variable.
+ (get_secondary_mem): Update it.
+ (find_reloads): Use it.
+
+ * alias.c (reg_base_value): Turn into varray.
+ (reg_base_value_size): Kill.
+ (old_reg_base_value): New deletable varray.
+ (alias_invariant_size): New variable.
+ (REG_BASE_VALUE): Update to use varray.
+ (find_base_value): Likewise.
+ (record_set): Likewise.
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Likewise.
+ (record_set): Likewise
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Use alias_invariant_size.
+ (init_alias_analysis): Use varray; set alias_invariant_size;
+ rescale other arrays to be sized by maxreg.
+ (end_alias_analysis): Save reg_base_value; clear alias_invariant_size.
+
+ * basic-block.h (PROP_POSTRELOAD): New macro.
+ (CLEANUP_LOG_LINKS): New.
+ * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to.
+ * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg.
+
+ * alloc-pool.c: Include hashtab.h
+ (alloc_pool_descriptor): New structure
+ (alloc_pool_hash): New global variable.
+ (hash_descriptor, eq_descriptor, alloc_pool_descriptor): New.
+ (create_alloc_pool): Update statistics.
+ (free_alloc_pool): Likewise.
+ (pool_alloc): Likewise.
+ (output_info): New structure
+ (print_statistics, dump_alloc_pool_statistics): New function.
+ * alloc-pool.h (alloc_pool_def): Turn name to be constant.
+ (dump_alloc_pool_statistics): Declare.
+ * toplev.c (finalize): Dump statistics.
+
+ * varray.c: Include hashtab.h
+ (varray_descriptor): New structure.
+ (hash_descriptor, eq_descriptor, varray_descriptor,
+ print_statistics): New static functions
+ (varray_init, varray_grow): Update statistics
+ (dump_varray_statistics): New function.
+ * varray.h (dump_varray_statistics): Declare.
+ * toplev.c (finalize): Call it.
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
+ s390*-*-* targets by specifying a 'nop' insn.
+ * configure: Regenerate.
-2003-02-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
- * pa-protos.h (attr_length_millicode_call): Remove second argument.
- (attr_length_indirect_call, attr_length_indirect_call,
- attr_length_save_restore_dltp): New prototypes.
- * pa.c (attr_length_millicode_call): Remove second argument. Check
- INSN_ADDRESSES_SET_P in distance calculation.
- (output_millicode_call): Check INSN_ADDRESSES_SET_P before using
- INSN_ADDRESSES.
- (attr_length_call): Check INSN_ADDRESSES_SET_P in distance calculation.
- (output_call): Check INSN_ADDRESSES_SET_P before using INSN_ADDRESSES.
- Call attr_length_call directly.
- (attr_length_indirect_call, output_indirect_call,
- attr_length_save_restore_dltp): New functions.
- * pa.md (attr_length_millicode_call): Drop second argument from all
- patterns.
- (return_internal_pic): Delete.
- (return_external_pic): Remove use of PIC register and pic operand and
- flag checks.
- (epilogue): Use return_internal for both normal and pic code.
- (call, call_value): Emit new 32-bit pic patterns for symref and
- indirect calls. Remove uses for arg pointer and pic register.
- (call_symref_pic, call_symref_pic_post_reload, call_reg_pic,
- call_reg_pic_post_reload, call_val_symref_pic,
- call_val_symref_pic_post_reload, call_val_reg_pic,
- call_val_reg_pic_post_reload): New pre and post reload insn patterns.
- Implement define_split and define_peephole2 patterns for pre reload
- patterns.
- (call_symref_64bit, call_internal_reg_64bit, call_value_symref_64bit,
- call_value_internal_reg_64bit): Shorten names.
- (all call patterns): Explicitly indicate registers used and clobbered.
- Use attr_length_indirect_call and attr_length_save_restore_dltp for
- attribute length calculation. Move code generation for indirect calls
- to output_indirect_call.
- (sibcall, sibcall_value): Don't restore PIC register.
- (exception_receiver, builtin_setjmp_receiver): Add blockage after PIC
- register retore.
+ PR target/11475
+ * config/sparc/sparc.md (movhi_lo_sum): Tighten predicates.
-2003-02-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-01-29 Bruce Korb <bkorb@gnu.org>
- * doc/install.texi (Testing): Simplify and compress instructions
- concerning Dejagnu.
+ * fixinc/inclhack.def(math_exception): bypass only for glibc.
+ (matherr_decl): rename & relocate as exception_structure.
+ This fix must precede the math_exception fix.
+ * fixinc/fixincl.x: regen
-2003-02-01 Daniel Jacobowitz <drow@mvista.com>
+2004-01-29 Richard Henderson <rth@redhat.com>
- * dwarf2out.c (gen_type_die): Check for typedefs before calling
- for TYPE_MAIN_VARIANT.
+ * c-parse.in (extension): Use itype.
+ (SAVE_EXT_FLAGS): Don't allocate a tree.
+ (RESTORE_EXT_FLAGS): Don't read a tree.
-2003-02-01 Ulrich Weigand <uweigand@de.ibm.com>
+2004-01-29 Giovanni Bajo <giovannibajo@gcc.gnu.org>
- * reload.c: Revert 2003-01-31 change.
+ * c-lex.c (c_lex): Rename to...
+ (c_lex_with_flags): Add new parameter to get CPP flags.
+ (c_lex): Thunk to c_lex_with_flags while keeping the old interface.
+ * c-pragma.h (c_lex_with_flags): Declare.
-2003-02-01 Jan Hubicka <jh@suse.cz>
+2004-01-29 Roger Sayle <roger@eyesopen.com>
- PR c/9506
- * i386.c (override_options): Use DEFAULT_PCC_STRUCT_RETURN.
+ PR java/13824
+ * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially
+ as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded
+ recursion.
-2003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * pa.c (pa_output_function_prologue, pa_output_function_epilogue): Move
- updating of total_code_bytes from prologue to epilogue.
+ * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
+ to register_operand.
-2003-01-31 Ulrich Weigand <uweigand@de.ibm.com>
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
- * regclass.c (record_reg_classes): Fix incorrect argument
- to EXTRA_ADDRESS_CONSTRAINT macro.
-
-2003-01-31 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (find_reloads): Do not use the mode specified in the insn
- pattern as reload mode for address operands. Do not generate optional
- reloads for operands where a mandatory reload was already pushed.
- Generate optional reloads only in the final pass though find_reloads.
- (have_replacement_p): New function.
-
-2003-01-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Testing): Remove a reference to our obsolete
- /testresults web pages and strip redundant information concerning
- test results.
- (Binaries): Refer to Microsoft Windows instead of listing all
- possible variants.
-
-2003-02-01 Jan Hubicka <jh@suse.cz>
-
- * loop.c (emit_prefetch_instructions): Do conversion at right place in
- RTL chain.
-
- * combine.c (simplify_set): Reverse order of ragumetns to
- REG_CANNOT_CHANGE_MODE_P
- * df.c (df_def_record_1): Likewise.
- * recog.c (register_operand): Likewise.
- * simplify-rtx.c (simplify_subreg): Likewise.
- * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of
- CANNOT_CHANGE_MODE_CLASS.
- * regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p):
- Likewise.
- * reload.c (push_reload): Likewise.
- * alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * mips-protos.h (mips_cannot_change_mode_class): Update prototype.
- * mips.c (mips_cannot_change_mode_class): Update.
- * pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * sh-protos.h (sh_cannot_change_mode_class): Update prototype.
- * sh.c (sh_cannot_change_mode_class): Update.
- * i386.h (CANNOT_CHANGE_MODE_CLASS): New.
- * tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation.
+ * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di)
+ (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and
+ match_operand expressions so that all match_dups appear
+ lexically after their corresponding match_operands.
-2003-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
+ Jim Wilson <wilson@specifixinc.com>
- * pa32-regs.h (REGNO_REG_CLASS, REG_CLASS_FROM_LETTER): Delete
- duplicated code.
+ * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move):
+ Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a
+ scratch pointer.
+ (ia64_secondary_reload_class): Delete case GR_REGS.
+ * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal):
+ Do not allocate a scratch register.
+ (reload_inti, reload_outti, reload_intf, reload_outtf): Delete.
-2003-01-30 Richard Earnshaw <rearnsha@arm.com>
+2004-01-27 Zack Weinberg <zack@codesourcery.com>
- * arm.c (arm_compute_initial_elimination_offset): If optimizing for
- size, the link register is always saved if any other register is
- saved.
+ * ia64.c (ia64_function_arg): When placing HFAs in integer
+ registers, do not special case the mode used for complex
+ types. Do not advance int_regs until the current register
+ is full.
-2003-01-30 Jerry Quinn <jlquinn@optonline.net>
+2004-01-28 Jan Hubicka <jh@suse.cz>
- * gcc/doc/invoke.texi (Optimization Options): Group together
- optional and experimental flags. Move trapv and bounds-check
- out of this section. Group floating point flags together.
- (Code Gen Options): Move trapv and bounds-check to here.
+ * function.c (allocate_struct_function): Do not initialize expr, emit
+ and varasm.
+ (prepare_function_start): Do it here.
+ * c-parse.in (maybe_type_qual): Do not produce line number notes.
-2003-01-30 Jerry Quinn <jlquinn@optonline.net>
+2004-01-28 Richard Sandiford <rsandifo@redhat.com>
- * gcc/doc/invoke.texi (Optimization Options): List -O levels
- for each optimization flag.
+ * config/fp-bit.c (pack_d): When using paired doubles to implement
+ a long double, round the high part separately.
+ (unpack_d): Fix the case in which the high part is a power of two
+ and the low part is a nonzero value of the opposite sign.
-2003-01-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+2004-01-27 Roger Sayle <roger@eyesopen.com>
- PR target/9316
- * config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC.
- * config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC.
- * config/rs6000/t-rtems: New file. multilib variants to match OS.
- * config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of
- rs6000/t-ppcgas so we get the desired multilibs.
+ * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
+ CONST_INT before using INTVAL.
-2003-01-30 Alexandre Oliva <aoliva@redhat.com>
-
- * config/fp-bit.h (__make_dp): Declare if TMODES.
-
-2003-01-29 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_rwreloc_section_type_flags): New.
- * config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): New.
+2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
-2003-01-29 Steve Ellcey <sje@cup.hp.com>
+ * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN.
+ * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current
+ frame if !TARGET_BACKCHAIN.
+ * config/s390/s390.md ("allocate_stack"): Use pattern only if
+ TARGET_BACKCHAIN.
+ * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default.
- * config/ia64/ia64.c (ia64_rwreloc_select_rtx_section): Rename
- from ia64_aix_select_rtx_section.
- (ia64_rwreloc_select_section): Simlarly; use default*_1 function
- instead of saving and restoring flag_pic.
- (ia64_rwreloc_unique_section): Similarly.
- * config/ia64/aix.h (TARGET_ASM_SELECT_SECTION,
- TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Update.
- * config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
- TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): New.
+2004-01-27 Richard Sandiford <rsandifo@redhat.com>
-2003-01-29 Joel Sherrill <joel@OARcorp.com>
+ PR target/7297
+ * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp().
- PR bootstrap/9296
- * gthr-rtems.h: Define __GTHREAD_MUTEX_INIT. Apparently no code
- depended on it being defined until now.
+2004-01-27 Bob Wilson <bob.wilson@acm.org>
-2003-01-29 Joel Sherrill <joel@OARcorp.com>
+ * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG
+ on CQImode and CHImode incoming arguments in register a7.
+ (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL.
+ * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define.
+ * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or
+ xtensa_copy_incoming_a7 before reload.
- PR target/9295
- * config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic
- RTEMS code knows which C++ initialization style the toolset
- configuration is using.
+2004-01-27 Ian Lance Taylor <ian@wasabisystems.com>
-2003-01-29 Joel Sherrill <joel@OARcorp.com>
+ * config/arm/arm.c (output_return_instruction): Only restore IP
+ into SP if frame_pointer_needed.
- PR bootstrap/9293
- * config/m68k/t-crtstuff: Replace spaces with tabs, add
- $(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o.
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-01-29 Joel Sherrill <joel@OARcorp.com>
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for SCmode and DCmode if ARCH32.
+ (sparc_va_arg): Handle SCmode and DCmode by reference if ARCH32.
+ * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for TCmode
+ if ARCH32.
+ (BASE_RETURN_VALUE_REG): Return 32 for all FP modes except TFmode
+ if ARCH32.
+ (BASE_OUTGOING_VALUE_REG): Likewise.
- PR bootstrap/9292
- * config.gcc (hppa1.1-rtems): Did not include t-rtems nor enable
- RTEMS threads.
- * config/pa/rtems.h (LIB_SPEC): Use -N when linking.
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-01-25 Andrew Haley <aph@redhat.com>
+ PR target/10904
+ PR target/13058
+ * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New.
+ Forbid mode changes from SImode for lower FP regs if ARCH64.
- * tree-inline.c (walk_tree): Add CHAR_TYPE.
+2004-01-27 Jakub Jelinek <jakub@redhat.com>
-2003-01-28 Christian Cornelssen <ccorn@cs.tu-berlin.de>
+ * config/i386/i386.c (ix86_constant_alignment): Decrease alignment
+ of long string literals from 32 bytes to sizeof (void *) when !-Os
+ and to 1 with -Os.
- * doc/install.texi: Add documentation for installation into
- tooldirs and with DESTDIR.
+2004-01-27 Kaz Kojima <kkojima@gcc.gnu.org>
-2003-01-28 Andreas Schwab <schwab@suse.de>
+ PR optimization/13567
+ * cse.c (cse_basic_block): Call cse_insn with a non-null
+ libcall_insn for the last SET insn of a no-confilict block.
- * config/m68k/m68k.md (tablejump+2): Don't sign extend an address
- register.
- * config/m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/coff.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/mot3300.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
- * config/m68k/pbb.h (ASM_RETURN_CASE_JUMP): Likewise.
+2004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-2003-01-28 David Edelsohn <edelsohn@gnu.org>
+ * system.h (CHAR_BITFIELD): Delete.
+ (BOOL_BITFIELD): New.
+ * c-decl.c (c_scope): Use BOOL_BITFIELD.
+ * gengtype-lex.l: Recognize BOOL_BITFIELD instead of CHAR_BITFIELD.
- * config/rs6000/rs6000.md (movti_string): Remove clobber.
- * config/rs6000/rs6000.c (rs6000_emit_move, TImode): Explicitly
- generate PARALLEL with clobber for TARGET_POWER.
+2004-01-26 J"orn Rennecke <joern.rennecke@superh.com>
-2003-01-28 Richard Henderson <rth@redhat.com>
+ * doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP
+ may or may not return non-NIL.
+ * postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code,
+ check CANNOT_CHANGE_MODE_CLASS
- * ifcvt.c (noce_process_if_block): Re-add check vs X being changed
- in no-else-block case. Add commentary.
+2004-01-26 Jeff Law <law@redhat.com>
-2003-01-28 Alexandre Oliva <aoliva@redhat.com>
+ * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add
+ acute accents for Petur Runolfsson's entry.
- * config/mips/mips.h (UNITS_PER_HWFPVALUE): Renamed from...
- (UNITS_PER_FPVALUE): Defined as the width of a long double, or
- zero if no hardware floating point.
- (LONG_DUBLE_TYPE_SIZE): Set to 128 on N32 and N64.
- (MAX_FIXED_MODE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
- (BIGGEST_ALIGNMENT): Same as LONG_DOUBLE_TYPE_SIZE.
- (FUNCTION_VALUE_REGNO_P): Set for FP_RETURN+2 on N32 and N64.
- * config/mips/iris6.h (MIPS_TFMODE_FORMAT): Define.
- * config/mips/mips.c (override_options): Use it.
- (mips_arg_info): Pass TFmode values in even FP registers on N32
- and N64.
- (mips_setup_incoming_varargs): Use UNITS_PER_HWFPVALUE.
- (mips_va_start): Adjust alignment of ARG_POINTER_REGNUM.
- (mips_va_arg): Use UNITS_PER_HWFPVALUE. Impose additional
- even-register-like alignment to 128-bit arguments.
- (save_restore_insns): Use UNITS_PER_HWFPVALUE.
- (mips_function_value): Likewise. Return TFmode in $f0 and $f2
- on N32 or N64.
- * config/mips/_tilib.c (__negti2, __ashlti3, __lshrti3): New.
- * config/mips/t-iris6 (LIB2FUNCS_EXTRA): Add _tilib.c.
- (TPBIT): Set to tp-bit.c.
- (tp-bit.c): Create out of fp-bit.c.
-2003-01-27 Gabriel Dos_Reis <gdosreis@sophia.inria.fr>
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
- * c-parse.in: Remove '%expect 32' directive when in objc mode.
+ Backport from mainline:
-2003-01-27 Josef Zlomek <zlomekj@suse.cz>
+ 2004-01-23 Eric Botcazou <ebotcazou@act-europe.fr>
+ Olivier Hainque <hainque@act-europe.fr>
- * gcse.c (constprop_register): Check NEXT_INSN (insn) != NULL.
+ * fold-const.c (fold_binary_op_with_conditional_arg): Only
+ build a COMPOUND_EXPR if 'arg' is really a SAVE_EXPR.
-2003-01-27 Richard Earnshaw <rearnsha@arm.com>
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR optimization/9090
- * function.c (purge_addressof_1): After pushing an addressed register
- onto the stack, simplify the result.
+ PR target/13666
+ * config/sparc/sparc.c (function_arg_union_value): New function.
+ (function_arg): Use it to deal with unions.
+ (function_value): Likewise. Define 'regbase' only for ARCH64.
+ Replace a conditional statement by a simpler one.
-2003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-01-26 Richard Sandiford <rsandifo@redhat.com>
- * doc/extend.texi: Fix typo.
+ * config/mips/mips.c (mips16_optimize_gp): Delete.
+ (mips_reorg): Don't call it.
-2003-01-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
- * doc/cppopts.texi: Fix typo.
- * doc/objc.texi: Likewise.
- * doc/passes.texi: Likewise.
+ * config/mips/mips.c (mips_offset_within_object_p): New function.
+ (mips_symbolic_constant_p): Use it in the SYMBOL_SMALL_DATA and
+ SYMBOL_CONSTANT_POOL cases. Also use it for SYMBOL_GENERAL if the
+ ABI has 64-bit pointers and the object file only allows 32-bit symbols.
-2003-01-27 Alexandre Oliva <aoliva@redhat.com>
+2004-01-25 Eric Botcazou <ebotcazou@act-europe.fr>
- * real.c (ibm_extended_format): Add 53 to minimum exponent.
- (encode_ibm_extended): Adjust.
+ PR bootstrap/13853
+ * cfgcleanup.c (try_optimize_cfg): Explicitly test against 0.
-2003-01-26 Kazu Hirata <kazu@cs.umass.edu>
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
- * doc/gccint.texi: Update the copyright.
+ * config/mips/mips-protos.h (mips_reg_mode_ok_for_base_p): Delete.
+ (mips_regno_mode_ok_for_base_p): Declare.
+ * config/mips/mips.h (ARG_POINTER_REGNUM): Renumber to 77.
+ (FRAME_POINTER_REGNUM): Renumber to 78.
+ (FIRST_PSEUDO_REGISTER): Update comment accordingly.
+ (BASE_REG_P, GP_REG_OR_PSEUDO_STRICT_P): Delete.
+ (GP_REG_OR_PSEUDO_NONSTRICT_P): Delete.
+ (REGNO_MODE_OK_FOR_BASE_P): Use mips_regno_mode_ok_for_base_p.
+ (REG_MODE_OK_FOR_BASE_P): Likewise.
+ * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Change
+ entry for 77 to "$arg" and entry for 78 to "$frame".
+ (mips_regno_to_class): Map 77 and 78 to ALL_REGS.
+ (mips_reg_mode_ok_for_base_p): Remove.
+ (mips_regno_mode_ok_for_base_p): New function, derived from old
+ BASE_REG_P macro. Don't enforce the mips16 stack pointer
+ restrictions unless we're being strict.
+ (mips_valid_base_register_p): Use mips_regno_mode_ok_for_base_p.
-2003-01-26 Kazu Hirata <kazu@cs.umass.edu>
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
- * doc/cpp.texi: Fix typos.
- * doc/extend.texi: Likewise.
+ * doc/frontends.texi: Update copyright.
+ * doc/gcov.texi: Likewise.
* doc/gty.texi: Likewise.
- * doc/install.texi: Likewise.
- * doc/passes.texi: Likewise.
- * doc/rtl.texi: Likewise.
-
-2003-01-26 Christian Cornelssen <ccorn@cs.tu-berlin.de>
-
- * Makefile.in (ORDINARY_FLAGS_TO_PASS): Also pass DESTDIR.
- (install-cpp, installdirs, install-common)
- (install-driver, install-info, install-man)
- (install-headers, install-include-dir, install-headers-tar)
- (install-headers-cpio, install-headers-cp, install-mkheaders)
- (install-collect2, uninstall): Prepend $(DESTDIR) to
- destination paths in all (un)installation commands.
- (install-driver): Rewrite $(LN) commands to support DESTDIR
- with "ln" as well as with "ln -s".
- (installdirs): Simply use mkinstalldirs.
- (install-libgcc, install-multilib): Also pass DESTDIR.
- * mklibgcc.in: Prepend $(DESTDIR) to $(libsubdir) in the
- installation destination variable ldir.
- * config/alpha/t-osf4 (SHLIB_INSTALL): Prepend $$(DESTDIR)
- to $$(slibdir) in the installation commands.
- * config/arm/t-netbsd (SHLIB_INSTALL): Likewise.
- * config/ia64/t-hpux (SHLIB_INSTALL): Likewise.
- * config/mips/t-iris5-6 (SHLIB_INSTALL): Likewise.
- * config/pa/t-hpux-shlib (SHLIB_INSTALL): Likewise.
- * config/rs6000/t-aix43 (SHLIB_INSTALL): Likewise.
- * config/rs6000/t-aix52 (SHLIB_INSTALL): Likewise.
- * config/t-slibgcc-elf-ver (SHLIB_INSTALL): Likewise.
- * config/t-slibgcc-sld (SHLIB_INSTALL): Likewise.
- * config/arc/t-arc (install-multilib-arc): Prepend $(DESTDIR) to
- $(libsubdir) in the installation commands.
+ * doc/sourcebuild.texi: Likewise.
-2003-01-26 Alexandre Oliva <aoliva@redhat.com>
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
- * fp-bit.h: Define macros for TFmode floating-point constants
- in IBM-extended TFmode types.
- (TMODES): Define if __LDBL_MANT_DIG__ has the newly-supported
- widths.
- * config/fp-bit.c (pack_d, unpack_d): Support IBM-extended
- TFmode type.
+ * config/h8300/coff.h: Update copyright.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
- * config/fp-bit.h: Define macros for TFmode floating-point
- constants in IEEE quad TFmode type. Declare functions according
- to L_ macros.
- (TMODES): Define if __LDBL_MANT_DIG__ is 113.
- (TFtype, TItype, UTItype): Define if TMODES is defined.
- (MAX_UDI_INT, MAX_DI_INT, BITS_PER_DI): Likewise.
- (F_T_BITOFF, D_T_BITOFF): Define.
- (IMPLICIT_1, IMPLICIT_2): Cast constants to types that are
- guaranteed to be wide enough.
- * config/fp-bit.c: Check for L_ macros for tf functions.
- (__thenan_tf): New.
- (nan): Adjust.
- (pack_d, unpack_d): Support IEEE 854 quad type.
- (_fpmul_parts): Support TFmode. Compute exponent adjustment
- from FRAC_NBITS, FRAC_BITS and NGARDS.
- (usi_to_float): Cast constants to be shifted to fractype
- instead of assuming long long is wide enough.
- (sf_to_tf, df_to_tf, __make_tp, tf_to_df, tf_to_sf): New.
+2004-01-24 Hartmut Penner <hpenner@de.ibm.com>
- * Makefile.in (FPBIT_FUNCS): Added _sf_to_tf.
- (DBBIT_FUNCS): Added _df_to_tf.
- (TPBIT_FUNCS): New.
- (libgcc.mk): Pass TPBIT and TPBIT_FUNCS down.
- (LIBGCC_DEPS): Added TPBIT.
- * mklibgcc.in: Support TPBIT and TPBIT_FUNCS.
+ PR target/13674
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Do not disparage
+ loading into GPR.
- * optabs.c (expand_binop) <add, sub>: Return xtarget if we haven't
- been able to move the result to target.
+2004-01-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
- * expr.c (emit_group_store): Initialize dst with CONST0_RTX
- for the appropriate mode.
+ PR optimization/12440
+ * loop.c: Include ggc.h.
+ (loop_optimize): Run garbage collector between optimization of loops.
+ * Makefile.in (loop.o): Add GGC_H dependency.
- * calls.c (emit_library_call_value_1): Handle return values
- in a PARALLEL.
+2004-01-24 Jakub Jelinek <jakub@redhat.com>
- * rtl.c (get_mode_alignment): Moved to...
- * stor-layout.c: ... here.
+ * simplify-rtx.c (simplify_relational_operation): Don't
+ simplify address == constant into address + -constant == 0.
- * print-rtl.c (print_rtx): Don't print MEM details in
- GENERATOR_FILEs.
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-2003-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ * gcc.c (process_command): Don't internationalize the
+ Copyright message.
+ * mips-tfile.c (main): Likewise.
- * df.c (df_uses_record): Handle CC0.
+2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
-2003-01-25 Jan Hubicka <jh@suse.cz>
- Eric Botcazou <ebotcazou@libertysurf.fr>
+ * recog.c: Fix a typo in copyright.
- PR opt/8492
- * gcse.c (one_cprop_pass): Delete unreachable blocks.
+2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
-2003-01-25 Ulrich Weigand <uweigand@de.ibm.com>
+ * alias.c, basic-block.h, c-common.c, c-common.h,
+ c-cppbuiltin.c, c-pragma.c, c-pretty-print.c, c-semantics.c,
+ calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
+ combine.c, cppcharset.c, cpptrad.c, cse.c, cselib.c, cselib.h,
+ defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
+ expr.h, fold-const.c, function.h, gcc.c, gcse.c, genattrtab.c,
+ genautomata.c, genconditions.c, genflags.c, gengtype.c,
+ genopinit.c, genrecog.c, gensupport.c, ggc-zone.c, graph.c,
+ haifa-sched.c, integrate.c, langhooks-def.h, langhooks.c,
+ langhooks.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
+ ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
+ rtlanal.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
+ target.h, targhooks.c, toplev.h, tree-inline.c,
+ unwind-dw2-fde.h, unwind-pe.h, unwind.h, varray.c, varray.h:
+ Update copyright.
- * reload.c (maybe_memory_address_p): New function.
- (find_reloads_address): Use it instead of memory_address_p.
+2004-01-23 Bob Wilson <bob.wilson@acm.org>
-2003-01-25 Kaz Kojima <kkojima@gcc.gnu.org>
+ * config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as
+ separate real and imaginary parts.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define.
- * final.c (shorten_branches): Align the address of code label
- when computing initial lengths and addresses.
+2004-01-23 Richard Henderson <rth@redhat.com>
-2003-01-25 Richard Henderson <rth@redhat.com>
+ PR opt/12941
+ * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
+ (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
+ if SHIFT_COUNT_TRUNCATED is set.
- 2002-02-19 Robert Lipe <robertlipe@usa.net>
- * config/i386/t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff.
+2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-2003-01-23 Andreas Schwab <schwab@suse.de>
+ * fixinc/inclhack.def (alpha___extern_prefix): Renamed to ...
+ (alpha___extern_prefix_sys_stat): ... this.
+ Apply to <sys/mount.h>, too.
+ Tweak to match more variations.
+ * fixinc/tests/base/sys/stat.h: Adapt for new hackname.
- * config/ia64/crtend.asm [HAVE_INITFINI_ARRAY]: Make
- __do_global_ctors_aux hidden global and don't put it in
- .init_array.
- * config/ia64/crtbegin.asm [HAVE_INITFINI_ARRAY]: Put it here
- instead so that it comes first.
+ * fixinc/inclhack.def (alpha___extern_prefix,
+ alpha___extern_prefix_standards): New hacks to obey
+ __PRAGMA_EXTERN_PREFIX.
+ * fixinc/tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: New
+ test.
+ * fixinc/tests/base/standards.h: Likewise.
-2003-01-25 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ * fixincl/inclhack.def (alpha_pthread): Tweak to match more
+ variations.
+ New testcase.
+ * fixinc/tests/base/pthread.h: Handle it.
- * config/c4x/c4x.h (ASM_SPEC): Fix for new gas format.
+ * fixinc/fixincl.x: Regenerate.
-2003-01-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
- * calls.c (fix_unsafe_tree): Prototype.
- * loop.c (loop_invariant_p): Avoid signed/unsigned warning.
+ * fixinc/inclhack.def (bad_lval): Renamed to ...
+ (alpha_bad_lval): ... this.
+ Removed file list.
+ Restrict to alpha*-dec-osf*.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/libgen.h: Remove, moving test ...
+ * fixinc/tests/base/testing.h: ... here, reflecting new name.
-2003-01-24 Richard Henderson <rth@redhat.com>
+2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
- PR optimization/4382
- * tree-inline.c (find_builtin_longjmp_call_1): New.
- (find_builtin_longjmp_call): New.
- (inlinable_function_p): Use it.
+ * doc/invoke.texi (Optimize Options): Note that --param arguments
+ are subject to change without notice.
-2003-01-24 Ulrich Weigand <uweigand@de.ibm.com>
+2004-01-23 Zack Weinberg <zack@codesourcery.com>
- * configure.in (HAVE_AS_TLS): Add s390-*-* and s390x-*-* cases.
- * configure: Regenerate.
+ PR c/13814
+ * c-decl.c (diagnose_mismatched_decls): Also discard a
+ built-in if we encounter an old-style definition with the
+ same name.
- * config/s390/s390-protos.h (tls_symbolic_operand): Add prototype.
- (tls_symbolic_reference_mentioned_p): Add prototype.
- (s390_tls_get_offset): Add prototype.
- (emit_pic_move): Remove prototype, replace by ...
- (emit_symbolic_move): .. this new prototype.
-
- * config/s390/s390.c (TARGET_HAVE_TLS): Conditionally define.
- (tls_model_chars): New global variable.
- (s390_encode_section_info): Encode TLS model.
- Use targetm.binds_local_p to check for local symbols.
- (s390_strip_name_encoding): New function.
- (TARGET_STRIP_NAME_ENCODING): Define.
-
- (get_thread_pointer): New function.
- (legitimize_tls_address): New function.
- (legitimize_address): Call it.
- (emit_pic_move): Remove, replace by ...
- (emit_symbolic_move): ... this new function.
-
- (larl_operand): Handle TLS operands.
- (legitimate_constant_p): Likewise.
- (s390_decompose_address): Likewise.
- (s390_cannot_force_const_mem): New function.
- (TARGET_CANNOT_FORCE_CONST_MEM): Define.
-
- (s390_output_symbolic_const): Handle TLS unspecs.
- (print_operand): New code 'J'.
- (machine_function): Add struct member 'some_ld_name'.
- (get_some_local_dynamic_name, get_some_local_dynamic_name_1): New.
-
- (enum s390_builtin): New type.
- (code_for_builtin_64, code_for_builtin_31): New global variables.
- (s390_init_builtins, s390_expand_builtin): New functions.
- (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.
-
- * config/s390/s390.h (TLS_SYMBOLIC_CONST): New macro.
- (ASM_OUTPUT_LABELREF): Define.
- (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Handle TLS constants.
-
- * config/s390/s390.md: Define TLS UNSPEC constants.
- ("movdi", "movsi"): Handle TLS operands.
- ("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): New insns.
- ("*tls_load_64", "*tls_load_31"): New insns.
- ("call_value_tls", "call_value_tls_exp"): New expanders.
- ("brasl_tls", "bras_tls", "basr_tls_64", "basr_tls_31",
- "bas_tls_64", "bas_tls_31"): New insns.
-
-2003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * doc/passes.texi: Fix typo.
-2003-02-01 Jan Hubicka <jh@suse.cz>
-
- * loop.c (emit_prefetch_instructions): Do conversion at right place in
- RTL chain.
-
- * combine.c (simplify_set): Reverse order of ragumetns to
- REG_CANNOT_CHANGE_MODE_P
- * df.c (df_def_record_1): Likewise.
- * recog.c (register_operand): Likewise.
- * simplify-rtx.c (simplify_subreg): Likewise.
- * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of
- CANNOT_CHANGE_MODE_CLASS.
- * regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p):
- Likewise.
- * reload.c (push_reload): Likewise.
- * alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * mips-protos.h (mips_cannot_change_mode_class): Update prototype.
- * mips.c (mips_cannot_change_mode_class): Update.
- * pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
- * sh-protos.h (sh_cannot_change_mode_class): Update prototype.
- * sh.c (sh_cannot_change_mode_class): Update.
- * i386.h (CANNOT_CHANGE_MODE_CLASS): New.
- * tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation.
-
-2003-01-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * timevar.def (TV_NAME_LOOKUP, TV_OVERLOAD,
- TV_TEMPLATE_INSTANTIATION): New timevar_id eumerations.
- * timevar.h (POP_TIMEVAR_AND_RETURN): New macro.
- * timevar.c (timevar_pop): Be verbose when aborting. Include
- "toplev.h".
-
-2003-01-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * doc/bugreport.texi: Use @command instead of @code for commands.
- * doc/collect2.texi: Likewise.
- * doc/headerdirs.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/standards.texi: Likewise.
- * doc/tm.texi: Likewise.
- * doc/trouble.texi: Likewise.
-
-2003-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+2004-01-23 Jakub Jelinek <jakub@redhat.com>
- PR java/6748
- * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Don't destroy
- regs->nip. Fix rt_sigreturn frame layout. Add support for newer
- kernels.
+ * config.gcc (powerpc*-*): Clear $with_cpu or $with_tune if it was
+ set to default{32,64}.
-2003-01-23 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
- PR other/7341
- * invoke.texi (ftest-coverage): Fix broken cross-reference.
- Change @code to @command for gcov command.
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR)
+ [!__powerpc64__]: Corrected to handle kernels with changed ucontext.
- * gcc.texi: Adjust title of gcov section.
- Adjust copyright.
- * gcov.texi: Likewise.
+2003-11-30 Jan Hubicka <jh@suse.cz>
-2003-01-23 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+ * i386.c (ix86_emit_restore_regs_using_mov): Deal with large offsets.
- PR other/7448
- * doc/passes.texi (fssa-ccp): Remove misplaced line.
+2004-01-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-01-22 Ulrich Weigand <uweigand@de.ibm.com>
+ * config/sparc/sparc.c (scan_record_type): New function.
+ (function_arg_slotno): Use it to determine which kinds of
+ registers the record can be passed in.
- * config/s390/s390.h (HARD_REGNO_MODE_OK): Fix warning regression
- introduced by last change.
+2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-2003-01-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in: Make --disable-checking the default.
+ * configure.ac (enable_werror): Fixed typo.
* configure: Regenerate.
-2003-01-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (preferred_la_operand_p):
- Remove second parameter.
- * config/s390/s390.c (preferred_la_operand_p): Likewise.
- * config/s390/s390.h (FRAME_REGNO_P, FRAME_REG_P): New macros.
- (HARD_REGNO_MODE_OK): Use FRAME_REGNO_P.
- * config/s390/s390.md ("*la_cc_64", "*la_cc_31", splitters): Remove.
- Add peepholes to transform ADD to LOAD ADDRESS.
-
-2003-01-20 Jan Hubicka <jh@suse.cz>
-
- * i386.md (SSE cmov splitter): Handle memory operand in operand 5.
-
-2003-01-21 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
-
- PR opt/7507
- * calls.c (fix_unsafe_tree): Split out from ...
- (expand_call): ... here. Use it on the function address too.
-
-2003-01-20 Richard Henderson <rth@redhat.com>
-
- PR opt/7154
- * stmt.c (expand_asm_operands): Validize memory operands.
-
-2003-01-20 Richard Henderson <rth@redhat.com>
-
- PR opt/8848
- * ifcvt.c (noce_process_if_block): Correct arguments to
- modified_between_p for no-else-block case.
-
-2003-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x
- is not a scalar int mode.
-
-2003-01-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (notice_update_cc): Don't assume that
- recog_data.operands[0] is always associated with cc0.
-
-2003-01-19 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (stack_push_word, stack_pop_word,
- z_reg, z_reg_qi): Declare static and GTY().
- (da_reg): Remove.
- (create_regs_rtx): Don't create da_reg.
- ("gt-m68hc11.h"): Include for GTY roots.
- (m68hc11_autoinc_compatible_p): Remove.
- (autoinc_mode): Declare prototype.
- (m68hc11_make_autoinc_notes): Likewise.
- * config/m68hc11/m68hc11.h (ix_reg, iy_reg, d_reg): Declare extern
- and GTY() here.
- (m68hc11_compare_op0, m68hc11_compare_op1): Likewise.
- (m68hc11_soft_tmp_reg): Likewise.
- * config/m68hc11/m68hc11-protos.h: Remove above declarations.
-
-2003-01-18 Roger Sayle <roger@eyesopen.com>
-
- * config/pa/pa.md (muldi3): Avoid invalid sharing of SUBREG RTXs.
-
-2003-01-10 Geoffrey Keating <geoffk@apple.com>
-
- * varasm.c (struct constant_descriptor_rtx): Remove unused
- `label' field.
-
- * ggc-page.c (ggc_collect): Avoid overflow computing
- min_expand.
-
-2002-12-20 Geoffrey Keating <geoffk@apple.com>
-
- * integrate.c (output_inline_function): Don't hold private
- pointers to 'struct function' over GC calls.
-
-2003-01-17 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.h: Don't use #elif. Reported by Kaveh
- R. Ghazi.
-
-2003-01-16 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (sh_initialize_trampoline): Emit rotrdi3_mextr
- instead of rotldi3_mextr.
+2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-2003-01-16 Stephane Carrez <stcarrez@nerim.fr>
+ * config.gcc (mips-sgi-irix6*o32): Removed.
+ * config/mips/iris6-o32-as.h: Likewise.
+ * config/mips/iris6-o32-gas.h: Likewise.
+ * config/mips/iris6-o32.h: Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix handling
- 68HC12 pre/post inc/dec side effects.
+2004-01-22 Bob Wilson <bob.wilson@acm.org>
-2003-01-16 Stephane Carrez <stcarrez@nerim.fr>
+ * config/xtensa/xtensa.c (function_arg): Generalize logic so that it
+ handles complex and vector modes.
- * config/m68hc11/m68hc11.h (MASK_M6812): Define.
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
-2003-01-16 Stephane Carrez <stcarrez@nerim.fr>
+ * c-semantics.c (genrtl_while_stmt, genrtl_do_stmt_1)
+ (genrtl_for_stmt): Remove emit_nop calls.
- * config/m68hs11/m68hc11.c (expand_prologue): Use push/pop to
- allocate 4-bytes of locals on 68HC11.
- (expand_epilogue): Likewise.
- (m68hc11_memory_move_cost): Increase cost of HI/QI soft registers.
+2004-01-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
+ PR target/13713
+ PR target/13324
+ * pa.md (movstrsi_prereload, movstrsi_postreload, movstrdi_prereload,
+ movstrdi_postreload, clrstrsi_prereload, clrstrsi_postreload,
+ clrstrdi_prereload, clrstrdi_postreload): Fix constraints.
- * som.h (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY,
- ASM_WEAKEN_LABEL, GTHREAD_USE_WEAK): Define.
- * pa.h (TARGET_SOM_SDEF): Define.
- * pa-hpux11.h (TARGET_SOM_SDEF): Define.
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
-2003-01-15 Stephane Carrez <stcarrez@nerim.fr>
+ * config/arm/arm.c: Include "debug.h".
+ (thumb_pushpop): Take two new arguments. Add some commentary.
+ Output frame information when pushing.
+ (thumb_exit, thumb_unexpanded_epilogue): Update calls to
+ thumb_pushpop.
+ (thumb_output_function_prologue): Likewise. Accumulate a CFA
+ offset, and pass it to thumb_pushpop. Output CFI information.
+ (thumb_expand_prologue): Add some frame-related markers and notes.
- * config/m68hc11/m68hc11.h (ASM_SPEC): Handle -m68hcs12; Pass -mshort
- and -mshort-double to the assembler to specify the ABI.
- (LINK_SPEC): Likewise.
- (CPP_SPEC): Pass HCS12 specific define.
- (MASK_M68S12): New define.
- (TARGET_M68S12): Likewise.
- (TARGET_SWITCHES): New options -m68hcs12 and -m68S12.
- (TARGET_VERSION): Update.
- * config/m68hc11/m68hc12.h (CPP_SPEC): Pass HCS12 specific define.
- (LINK_SPEC): Update.
- (ASM_SPEC): Update.
- * config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Update.
- * doc/invoke.texi (M68hc1x Options): Document -m68hcs12.
+2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
-2003-01-15 John David Anglin <dave.anglin@nrc.gc.ca>
+ * config/s390/s390.c (s390_frame_info): Allow large frame sizes
+ for TARGET_64BIT.
+ (s390_arg_frame_offset): Change return type to HOST_WIDE_INT.
+ * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise.
- * gengtype-lex.l (malloc, realloc): Move defines after include of
- system.h.
+2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
-2003-01-15 Stephane Carrez <stcarrez@nerim.fr>
+ * doc/tm.texi (CASE_VECTOR_PC_RELATIVE): Mention that the
+ macro need not be defined if jump-tables should contain
+ relative addresses only when -fPIC or -fPIC is in effect.
- * config/m68hc11/m68hc11.md ("return"): Use emit_jump_insn to emit
- the return code.
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-01-15 Josef Zlomek <zlomekj@suse.cz>
-
- * cfganal.c (set_edge_can_fallthru_flag): Clear the EDGE_CAN_FALLTHRU
- flag before setting it.
-
-2003-01-15 Josef Zlomek <zlomekj@suse.cz>
-
- Segher Boessenkool <segher@koffie.nl>
-
- * predict.c (real_inv_br_prob_base): New variable.
- (propagate_freq): Use multiply by reciprocal instead of
- division. Don't divide by 1.0 at all.
- (estimate_bb_frequencies): Similar.
-
-2003-01-15 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (libgcc_visibility): Force disabled on IRIX 6 too.
- * configure: Rebuilt.
-
- * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Define so as
- to set $gp before the call.
-
-2003-01-10 Andrew Haley <aph@redhat.com>
-
- * config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Rename
- registers to be in correct order. Add rip.
-
-2003-01-14 Denis Chertykov <denisc@overta.ru>
-
- * config/ip2k/ip2k.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
-
- * config/ip2k/ip2k.c (ip2k_attribute_table): New table of
- attributes.
- (TARGET_ATTRIBUTE_TABLE): New macro.
- (valid_machine_type_attribute): Remove.
- (valid_machine_decl_attribute): Remove.
- (ip2k_handle_progmem_attribute): New function.
- (ip2k_handle_fndecl_attribute): New function.
-
-2003-01-14 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/8870, PR target/9195
-
- Backport from mainline:
-
- 2003-01-10 Richard Henderson <rth@redhat.com>
-
- * combine.c (make_compound_operation): Use SCALAR_INT_MODE_P,
- not INTEGRAL_MODE_P when widening extensions.
-
-2003-01-13 Alexandre Oliva <aoliva@redhat.com>
-
- * aclocal.m4 (gcc_AC_PROG_GNAT): Don't try to prepend
- ${ac_tool_prefix} to ADAC or CC. Protect them from word
- splitting.
- * configure: Rebuilt.
-
-2003-01-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * unwind-dw2-fde.h (last_fde): Mark parameter with __attribute__
- ((__unused__)).
-
-2003-01-12 Alan Modra <amodra@bigpond.net.au>
-
- * expr.c (expand_expr <RDIV_EXPR>): Correct recursive call args.
-
-2003-01-11 Jan Hubicka <jh@suse.cz>
-
- PR target/9068
- * i386.c (output_fp_compare): Fix typo
-
-2003-01-10 Josef Zlomek <zlomekj@suse.cz>
-
- * jump.c (next_nonnote_insn_in_loop): New function.
- (copy_loop_headers): Use next_nonnote_insn_in_loop instead of
- next_nonnote_insn.
- (duplicate_loop_exit_test). Likewise.
-
-2003-01-08 Jan Hubicka <jh@suse.cz>
-
- PR target/8213
- * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem.
-
-2003-01-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*extzv_1_r_h8300): Correct the insn
- length.
- (*extzv_1_r_h8300hs): Likewise.
- (*extzv_1_r_inv_h8300): Likewise.
- (*extzv_1_r_inv_h8300hs): Likewise.
-
-2003-01-09 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
-
- * Makefile.in (optabs.o): Add dependency on basic-block.h.
- * basic-block.h (control_flow_insn_p): Fuction was exported.
- * cfgbuild.c (control_flow_insn_p): Fuction was made non-static.
- * optabs.c (emit_libcall_block): Emit REG_LIBCALL and REG_RETVAL
- notes only when the region is contained in a single basic block.
-
-2003-01-09 Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
-
- * Makefile.in (PARTITION_H): New.
- (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
- * basic-block.h: Include hard-reg-set.h.
-
-2003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR inline-asm/8832
- * tree.h (expand_asm): New prototype.
- * stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed
- to do so.
- * c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier
- down to expand_asm.
- * c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier.
- * rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag.
- (volatile_refs_p) [ASM_INPUT]: Likewise.
- (side_effects_p) [ASM_INPUT]: Likewise.
-
-2003-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/8032
- * c-typeck.c (process_init_element) [RECORD_TYPE]: For
- an empty element, do not advance the pointer to unfilled
- fields if there are pending initializers.
-
-2003-01-09 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.h (CASE_VECTOR_MODE): Use SImode for a
- non-optimizing compile.
- (ASM_OUTPUT_ADDR_VEC_ELT): Use .long for a non-optimizing
- compile.
-
-2003-01-09 Andreas Jaeger <aj@suse.de>
-
- * unwind-dw2-fde.h (last_fde): Revert last patch.
-
-2003-01-08 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR optimization/8750
- * config/i386/i386.c (ix86_expand_prologue): Don't allow
- scheduling pass to move insns across __alloca call.
-
-2003-01-08 Jeff Sturm <jsturm@one-point.com>
-
- PR target/9210
- * config/rs6000/rs6000.c (rs6000_elf_encode_section_info):
- Set SYMBOL_REF_FLAG on local data sym_ref.
-
-2003-01-08 Jan Hubicka <jh@suse.cz>
-
- PR target/8322
- * i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads.
- * xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
-
- PR target/7782
- * reload1.c (delete_output_reload): Avoid repeated attempts
- to delete insn.
-
- * cselib.c (cselib_current_insn_in_libcall): New static variable.
- (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
- we are inside libcall.
- * cselib.h (elt_loc_list): Add in_libcall.
- * gcse.c (do_local_cprop): Do not copy propagate using insns
- in libcalls.
-
-2003-01-07 Janis Johnson <janis187@us.ibm.com>
-
- PR other/8947
- * doc/invoke.texi (-malign-double): Explain that the option breaks
- binary compatibility.
-
-2003-01-07 Richard Henderson <rth@redhat.com>
-
- * alias.c (find_base_value): Only use new_reg_base_value shortcut
- if the register is set once.
-
-2003-01-07 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
+ * config/sparc/sparc.c (function_arg_slotno): Use
+ FLOAT_TYPE_P to detect FP fields in structures.
+ (function_arg_record_value_1): Likewise.
+ (function_arg_record_value_2): Likewise.
- * config/i386/i386.c (ix86_init_mmx_sse_builtins):
- __builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX.
- * config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX.
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
- Sunil Davasam <sunil.k.davasam@intel.com>
+ PR target/13559
+ * config/sparc/sparc.c (function_arg_record_value_3): Revert
+ to 'word_mode' once the first slot has been filled.
- PR libstdc++/9076
- * unwind-dw2.c (execute_cfa_program): DW_CFA_undefined,
- DW_CFA_same_value, read next and ignore.
+2004-01-22 Olivier Hainque <hainque@act-europe.fr>
-2003-01-07 Richard Henderson <rth@redhat.com>
+ * config/sparc/sparc.c (function_arg_record_value_1): Fix
+ computation of the number of integer registers required.
- * cfganal.c (flow_call_edges_add): Don't crash on noreturn call.
+2004-01-22 Hartmut Penner <hpenner@de.ibm.com>
-2003-01-06 Aldy Hernandez <aldyh@redhat.com>
+ * gcc/config/rs6000/rs6000.c (function_arg) Handle
+ vector register special in function without prototype.
+ (function_arg_advance): Vector parameters get always
+ GPRs allocated for the linux64 target.
- Segher Boessenkool <segher@koffie.nl>
+2004-01-21 Andrew Pinski <apinski@apple.com>
- * config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers.
- (alt_reg_names): Ditto, fix formatting.
- * config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting.
+ PR target/13785
+ * config/rs6000/rs6000.md (call_value): Force operand
+ 1 not operand 0 into a register.
-2003-01-06 Bruce Korb <bkorb@gnu.org>
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
- * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
- of *both* the file name and the fix name.
+ * pa-protos.h: Update copyright.
+ * pa.h: Likewise.
+ * pa.md: Likewise.
-2003-01-06 Richard Henderson <rth@redhat.com>
+ * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3,
+ ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time,
+ ultrix_unistd): New hacks.
+ * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK,
+ ULTRIX_CONST2_CHECK): Add checks.
+ * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise.
+ * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise.
+ * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise.
+ * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise.
+ * fixinc/tests/base/locale.h: New file.
+ * fixincl.x: Rebuilt.
- * config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
- properly when changing "local-ness".
- * config/alpha/alpha.md (movdi_er_high_g): Allow all symbols.
+2004-01-21 Andreas Jaeger <aj@suse.de>
+ Michael Matz <matz@suse.de>
-2003-01-05 Andreas Jaeger <aj@suse.de>
+ * doc/extend.texi (Extended Asm): Clarify memory clobber.
- * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
+2004-01-21 Zack Weinberg <zack@codesourcery.com>
-2003-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
+ * c-decl.c (merge_decls): Kill different_binding_level and
+ different_tu arguments; simplify throughout.
+ (duplicate_decls): Likewise.
+ (pushdecl, merge_translation_unit_decls): Update calls to
+ duplicate_decls.
- * pa64-hpux.h (JCR_SECTION_NAME): Define.
- (PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of
- USE_EH_FRAME_REGISTRY when defining.
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
-2003-01-04 John David Anglin <dave.anglin@nrc.ca>
+ PR bootstrap/12730
+ * configure.ac: Delete definition and subsitution of docdir.
+ Add info, man, srcman and srcinfo to target hooks. Create doc/
+ directory.
+ * configure: Regenerate.
+ * Makefile.in: Don't substitute docdir and delete all references
+ throughout.
+ (MAKEINFOFLAGS): Define.
+ (stmp-docobjdir): Delete.
+ (INFOFILES, MANFILES): Define.
+ (info): Call lang.info, srcinfo and lang.srcinfo.
+ (generated-manpages): Call lang.man, srcman and lang.srcman.
+ (srcinfo, srcman): New rules to copy back files to source directory.
+ (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule.
+ (install-man): Revamp rule.
+ (clean): Update dvi directory.
+ (distclean): Delete TAGS from front end directorys.
+ (maintainer-clean): Delete all document files in source directory.
+
+ objc/Make-lang.in (objc.man, objc.info): Dummy entries.
+ (objc.srcman, objc.srcinfo): Likewise.
+
+2004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and
+ $(SYSTEM_H).
+ (print-rtl1.o): Depend on $(SYSTEM_H).
+
+2004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes.
+ * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d):
+ Likewise. Handle frames larger than 0x7fffffff on 64-bit ports.
+ (emit_move_sequence): Check scratch_reg first in various if statements.
+ Extend source simplification to handle all 64-bit CONST_INTs.
+ (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing
+ frame size.
+ (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for
+ frame offset calculations.
+ * pa.h (NEW_HP_ASSEMBLER): Add comment.
+ (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT,
+ LEGITIMATE_64BIT_CONST_INT_P): Define.
+ (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat
+ any CONST_INT as legitimate during and after reload.
+ (VAL_32_BITS_P, INT_32_BITS): Define.
+ (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets.
+
+2004-01-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define.
+ * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT.
+ * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document.
+
+2004-01-20 Geoffrey Keating <geoffk@apple.com>
+
+ * alias.c (new_alias_set): Mark last_alias_set for PCH.
+ (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it
+ for PCH.
+ (get_frame_alias_set): Likewise, except rename it to 'frame_set'.
+ * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH.
+ (get_TOC_alias_set): Mark 'set' for PCH.
+
+2004-01-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_load_call_address): Make the call insn
+ use $gp if it could be calling a lazy binding stub.
+
+2004-01-20 Denis Chertykov <denisc@overta.ru>
+
+ PR bootstrap/13735
+ * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X
+ register as pointer after reload.
+
+2004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13557
+ * config/sparc/sparc.c (function_arg): Reorder the cases.
+
+2004-01-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (target_noncanonical, program_transform_name): Use
+ immediate define instead of deferred.
+ (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
+ PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
+ GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of
+ deferred backquote.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
+ don't check memory mode.
+ (unaligned_memory_operand): Likewise.
+ (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
+ abort for op0 not MEM.
+
+ * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
+ is not a reg, copy to a scratch first.
+ (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
+ unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
+ unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
+ (reload_inqi, reload_inhi): Fix mode of op0.
+ (reload_inqi_help, reload_inhi_help, reload_outqi_help,
+ reload_outhi_help): Likewise. Use define_insn_and_split.
+
+ * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
+ as well as $29 dead.
+
+2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit
+ "tls_object" for thread-local objects.
+ * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit
+ "#tls" for thread-local sections.
+ * configure.ac (thread-local checks): Specify --fatal-warnings in
+ every binutils-specific checks. For sparc*-*-*, test whether the
+ OS is Solaris and the tools are native and act accordingly.
+ * configure: Rebuild.
+
+2004-01-19 Jeff Law <law@redhat.com>
+
+ * contrib.texi: Update Paolo Carlini's entry. New entries for
+ Jerry Quinn and Petur Runolfsson.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (HARD_REGNO_MODE_OK): Disallow SImode in FP regs.
+ * alpha.md (UNSPEC_NT_LDA): Remove.
+ (UNSPEC_CVTLQ, cvtlq): New.
+ (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f.
+ (extendsidi2_fix): Remove.
+ (extendsidi2 splitter): Use cvtlq.
+ (extendsidi2 fp peepholes): Remove.
+ (cvtql): Use SFmode instead of SImode.
+ (fix_trunc?fsi): Update to match.
+ (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New.
+ (movsi): Rename from movsi_nofix, remove f alternatives.
+ (movsi_nt_vms): Similarly.
+ (movsi_fix, movsi_nt_vms_fix): Remove.
+ (nt_lda): Remove.
+ * alpha.c (alpha_expand_prologue): Use adddi3, not nt_lda.
+
+2004-01-19 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_remove_node): Fix removal from linked list.
+ * cgraphunit.c (cgraph_finalize_compilation_unit): Clear next_needed
+ list.
+ (cgraph_remove_unreachable_nodes): New function
+ (cgraph_decide_inlining_of_small_function): Fix pasto.
+ (cgraph_decide_inlining_incrementally): Fix pasto.
+ (cgrpah_decide_inlining): Likewise; remove unreachable nodes.
- * config.gcc (hppa*64*-*-hpux11*): Define extra_parts. Don't use
- collect2.
- * pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine.
- (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define.
- * pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP,
- GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP,
- GNU_FINI_ARRAY_SECTION_ASM_OP): Define.
- (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using
- elfos.h.
- (EH_FRAME_IN_DATA_SECTION): Delete define.
- (HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine.
- (STARTFILE_SPEC): Use crtbegin.o.
- (ENDFILE_SPEC): Use crtend.o.
- (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION,
- SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK,
- PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB,
- DTOR_LIST_BEGIN): Define.
- * pa.c (TARGET_ASM_CONSTRUCTOR): Define.
- (pa_asm_out_constructor, pa_asm_out_destructor): New functions.
- * som.h (SUPPORTS_INIT_PRIORITY): Delete define.
+2004-01-18 Roger Sayle <roger@eyesopen.com>
-2003-01-02 Eric Christopher <echristo@redhat.com>
+ * builtins.c (expand_builtin_expect_jump): Fix thinko of reusing
+ live "next" variable, which can lead to an infinite loop.
- * config/mips/mips.md (movdf_internal2): Fix constraints.
+2004-01-18 Daniel Jacobowitz <drow@mvista.com>
-2003-01-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+ * final.c (final_scan_insn): Make non-static again.
+ * output.h (final_scan_insn): Re-add prototype.
+ * config/arc/arc.c (arc_output_function_epilogue): Add NULL
+ to final_scan_insn call.
+ * config/cris/cris.c (cris_target_asm_function_epilogue): Likewise.
+ * config/mips/mips.c (mips_output_conditional_branch): Likewise.
+ * config/pa/pa.c (output_lbranch, output_call): Likewise.
+ * config/sh/sh.c (print_slot): Likewise.
+ * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Likewise.
+ (output_sibcall, sparc_flat_function_epilogue): Likewise.
- * doc/install.texi (Configuration): Fix markup for reference to
- gcc/config.gcc.
+2004-01-18 Jan Hubicka <jh@suse.cz>
-2003-01-02 Kazu Hirata <kazu@cs.umass.edu>
+ * basic-block.h (try_redirect_by_replacing_jump): Declare.
+ * cfgcleanup.c (try_optimize_cfg): Use it.
+ * cfgrtl.c (try_redirect_by_replacing_jump): Export.
+ (rtl_redirect_edge_and_branch, cfg_layout_redirect_edge_and_branch):
+ Kill hack.
+ (cfg_layout_merge_blocks): Use try_redirect_by_replacing_jump.
- * config/h8300/h8300.c (stack_pointer_operand): New.
- (const_int_gt_2_operand): Likewise.
- (const_int_ge_8_operand): Likewise.
- * config/h8300/h8300.md (a splitter): Likewise.
- (a peephole2): Likewise.
- * config/h8300/h8300-protos.h: Add prototypes for the new
- functions above.
+2004-01-18 Andrew Pinski <pinskia@physics.uc.edu>
-2003-01-02 Neil Booth <neil@daikokuya.co.uk>
+ * config/rs6000/altivec.h: Wrap C++ functions in extern "C++"
+ block.
- * gccbug.in: Update for new categories.
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Check for NULL in the chain and remove repeated code.
-2002-12-31 Tom Tromey <tromey@redhat.com>
+2004-01-18 Jan Hubicka <jh@suse.cz>
- * doc/install.texi (Testing): Fixed typo.
+ * coverage.c (checksum_string): Rename to ...
+ (coverage_checksum_string): ... this one, Use crc32_string; recognize
+ names containing random number and zero the number out in order to get
+ match.
-2002-12-31 Jerry Quinn <jlquinn@optonline.net>
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
- * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
- descriptions.
+ * config/mips/mips.c (mips_got_alias_set): Mark for PCH.
-2002-12-31 Jerry Quinn <jlquinn@optonline.net>
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
- * gcc/doc/invoke.texi (Optimization Options): List the options
- enabled by each -O flag.
+ * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi,
+ doc/frontends.texi, doc/gcov.texi, doc/gty.texi, doc/install.texi,
+ doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/rtl.texi,
+ doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi,
+ doc/trouble.texi: Remove trailing whitespace.
-2002-12-31 David Edelsohn <edelsohn@gnu.org>
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
- * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
+ PR target/7618
+ * config/mips/mips.c: Include cfglayout.h.
+ (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
+ (mips_unspec_offset_high): Add temporary register argument.
+ (mips_load_call_address): New function, split out from...
+ (mips_expand_call): ...here.
+ (mips_output_cplocal): New function.
+ (mips_output_function_prologue, mips_output_function_epilogue): Use it.
+ (mips_emit_loadgp): New function, split out from...
+ (mips_expand_prologue): ...here.
+ (mips_output_mi_thunk): New function.
-2002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-01-17 Roger Sayle <roger@eyesopen.com>
- * doc/install.texi (Configuration): Explicitly refer
- gcc/config.gcc for a list of cpu models.
+ * builtins.c (expand_builtin_expect_jump): Fix mistake in my
+ last patch. Use XEXP (x, 0) to get a LABEL_REF's CODE_LABEL.
-2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
- * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Return type is unsigned int not int.
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Likewise.
-2002-12-30 Tom Tromey <tromey@redhat.com>
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
- * doc/install.texi (Testing): Mention Jacks.
+ * doc/contrib.texi, doc/cppenv.texi, doc/extend.texi,
+ doc/install.texi, doc/invoke.texi, doc/tm.texi: Consistently use
+ "GNU/Linux" and "Microsoft Windows" terminology.
-2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
- * doc/service.texi: Uncomment and update FAQ link.
+ * doc/c-tree.texi, doc/compat.texi, doc/cpp.texi,
+ doc/cppopts.texi, doc/extend.texi, doc/install.texi,
+ doc/interface.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi,
+ doc/objc.texi, doc/rtl.texi, doc/tm.texi, doc/trouble.texi: Use
+ @smallexample instead of @example.
-2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-17 Ziemowit Laski <zlaski@apple.com>
- * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
- Use @copying.
+ * objc/objc-act.c (build_objc_method_call): Use target
+ hooks instead of macros to determine if ..._stret
+ dispatchers should be used (NeXT runtime only).
-2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
- * configure.in: Increase makeinfo version requirement to 4.[2-9].
- * configure: Regenerate.
- * doc/install.texi: Update Texinfo version requirement.
+ * rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc)
+ (emit_call_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New
+ macros.
+ * reload1.c (emit_reload_insns): Use them.
+ * emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check
+ for NULL PATTERN.
-2002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
- * doc/include/texinfo.tex: Update to version 2002-12-26.16.
+ * final.c (SEEN_BB, SEEN_NOTE, SEEN_EMITTED): Define.
+ (final_scan_insn): Update to take an additional SEEN argument. Emit
+ a line note after the prologue. Make static.
+ (line_note_exists): Remove.
+ (final): Don't initialize line_note_exists. Update call to
+ final_scan_insn.
+ * output.h (final_scan_insn): Remove prologue.
+ * function.c (set_insn_locators): Update comment.
+ (thread_prologue_and_epilogue_insns): Add a comment.
-2002-12-26 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-17 Joseph S. Myers <jsm@polyomino.org.uk>
- * doc/standards.texi, doc/invoke.texi: Point to 3.3 version of
+ * doc/invoke.texi, doc/standards.texi: Point to 3.4 version of
c99status.html.
-2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
-
-2002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
-
- * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
- m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
- * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
- DG/UX entries.
- * doc/md.texi: Remove AMD 29K entries.
- * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
- 1.38.1, NewsOS, RT PC, WE32K entries.
-
-2002-12-23 Aldy Hernandez <aldyh@redhat.com>
-
- PR/8763
- * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
- (altivec_vspltisw_v4sf): Name pattern.
- (altivec_vslw_v4sf): New pattern.
-
-2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/gcc-common.texi: Clear DEVELOPMENT.
-
-2002-12-23 David Edelsohn <edelsohn@gnu.org>
-
- PR middle-end/8784
- * expr.c (expand_assignment): Apply special treatment to
- ARRAY_TYPE.
-
-2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (zero_extendqisi2): Correct the
- length.
-
-2002-12-19 Devang Patel <dpatel@apple.com>
-
- * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add support for -dynamic.
- (CPP_SPEC): Define __STATIC__ and __DYNAMIC__ depending on -dynamic.
- (LINK_SPEC): Pass -dynamic to linker.
- * config/rs6000/darwin.h: Reject conflicting -static and -dynamic.
-
-2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
- pointer.
- (pushqi_h8300hs): Likewise.
- (pushhi_h8300): Likewise.
- (pushhi_h8300hs): Likewise.
-
-2002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
- PR optimization/8988
- * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
- the biv when eliminating.
-
-2002-12-19 Aldy Hernandez <aldyh@redhat.com>
-
- PR 8553
- * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
- registers.
- ("absv16qi2"): Same.
- ("absv4si2"): Same.
- ("absv4sf2"): Same.
- ("altivec_abss_v16qi"): Same.
- ("altivec_abss_v8hi"): Same.
- ("altivec_abss_v4si"): Same.
-
-2002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
- "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
+ PR target/10781
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Prototype.
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ New function.
+ * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it.
+ * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise.
+ * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise.
-2002-12-18 Aldy Hernandez <aldyh@redhat.com>
+2004-01-17 Jan Hubicka <jh@suse.cz>
- * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
- macro.
- (vec_cmplt C++ functions): Reverse arguments.
+ * toplev.c (rest_of_handle_reorder_blocks): Fix pasto in previous
+ commit.
-2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
+ * toplev.c (HAVE_conditional_execution): Provide default.
+ (rest_of_handle_reorder_blocks): For conditional_execution target
+ update liveness once after all transformations
+ (rest_of_compilation): Do crossjumping before ce3.
- * doc/c-tree.texi: Restore deliberate spelling mistakes.
+2004-01-17 J. Brobecker <brobecker@gnat.com>
-2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
+ * dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type().
+ Remove checks for is_ada() and TREE_UNSIGNED.
+ (subrange_type_die): Emit a byte_size attribute if the subrange
+ type size is different from the base type size.
+ (modified_type_die): Replace call to is_ada_subrange_type() by
+ call to is_subrange_type().
- * doc/c-tree.texi: Fix typos and follow spelling conventions.
- * doc/cpp.texi: Likewise.
- * doc/extend.texi: Likewise.
- * doc/gty.texi: Likewise.
- * doc/install.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
- * doc/passes.texi: Likewise.
- * doc/rtl.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
- * doc/tm.texi: Likewise.
+2004-01-16 Mark Mitchell <mark@codesourcery.com>
-2002-12-17 Jerry Quinn <jlquinn@optonline.net>
-
- * doc/invoke.texi: Minor spelling and grammar fixes.
-
-2002-12-16 Mark Mitchell <mark@codesourcery.com>
+ * configure.ac: Do not do internal checking or -Werror by default.
+ * configure: Regenerated.
+ * doc/include/gcc-common.texi (DEVELOPMENT): @clear it.
* version.c (version_string): Mark as prerelease.
-2002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (output_millicode_call): Correct typo.
- (output_call): Likewise.
-
-2002-12-13 Alexandre Oliva <aoliva@redhat.com>
+2004-01-16 Andrew Pinski <pinskia@physics.uc.edu>
- * config/mn10300/mn10300.c (print_operand) <case N>: Check
- operand's range. Print value directly, without aid from
- output_address.
- <case U>: New.
- <case S>: Make sure argument to fprintf has the right type.
- * config/mn10300/mn10300.h (OK_FOR_T): New macro.
- (EXTRA_CONSTRAINT): Adjust.
- * config/mn10300/mn10300.md: Add new all-QImode pattern for
- bclr. Use %U for immediate operands of bset and bclr.
- (iorqi3): New expand, with insns for AM33 and mn10300.
+ * config/sh/sh.c: Include ggc.h.
-2002-12-13 J"orn Rennecke <joern.rennecke@superh.com>
+2004-01-17 Jan Hubicka <jh@suse.cz>
- * sh.c (sh_register_operand): New function.
- (prepare_move_operands): Use it.
- * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
- * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
- (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
- (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
- (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
- (movv2si_i): Likewise.
+ * c-common.c (c_estimate_num_insns_1): Handle builtin_constant_p and
+ builtin_expect specially.
+ * params.def (PARAM_MAX_INLINE_INSNS_AUTO): Set to 100.
+ (PARAM_LARGE_FUNCTION_INSNS): Set to 3000.
+ * invoke.texi (max-inline-insns-single): Set to 100.
+ (large-function-insns): Set to 3000.
-2002-12-13 Jim Wilson <wilson@redhat.com>
+2004-01-16 Jan Hubicka <jh@suse.cz>
- * doc/extend.texi (Complex Numbers): Update info on debug info.
+ * i386.md (load_tp_di): Fix pasto.
-2002-12-13 Kazu Hirata <kazu@cs.umass.edu>
+ PR opt/13608
+ * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
- * config/h8300/h8300.md (addhi3_h8300): Remove the last
- alternative.
+ * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
+ pp_c_character_constant, pp_c_floating_constant,
+ pp_c_additive_expression, pp_c_shift_expression,
+ pp_c_equality_expression, pp_c_and_expression,
+ pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
+ pp_c_logical_and_expression): Remove inline modifier.
+ * dwarf2out.c (get_AT): Likewise.
+ * et-forest.c (et_splay): Likewise.
+ * ra.h (ra_alloc, ra_calloc): Likewise
-2002-12-12 Devang Patel <dpatel@apple.com>
+2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
- * doc/invoke.texi: Document Darwin linker options, -bundle
- -bind_at_load, -all_load and -arch_errors_fatal
-
-2002-12-12 Jim Wilson <wilson@redhat.com>
-
- * dbxout.c (dbxout_fptype_value): New.
- (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c: Fix a comment typo.
- * cfg.c: Likewise.
- * cfgcleanup.c: Likewise.
- * cfglayout.c: Likewise.
- * cfgrtl.c: Likewise.
- * c-typeck.c: Likewise.
- * dominance.c: Likewise.
- * dwarf2asm.c: Likewise.
- * dwarfout.c: Likewise.
- * expmed.c: Likewise.
- * expr.c: Likewise.
- * final.c: Likewise.
- * flow.c: Likewise.
- * function.c: Likewise.
- * gcc.c: Likewise.
+ * config/frv/frv-protos.h: Fix comment formatting.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/frv/frv.md: Likewise.
+ * config/frv/frvbegin.c: Likewise.
+ * config/frv/frvend.c: Likewise.
+
+2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (LINKER_DOES_NOT_WORK_WITH_DWARF2): Poison.
+ * doc/tm.texi (PREFERRED_DEBUGGING_TYPE): Don't mention
+ LINKER_DOES_NOT_WORK_WITH_DWARF2.
+ (LINKER_DOES_NOT_WORK_WITH_DWARF2): Remove.
+
+2004-01-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR 11864
+ * postreload.c (reload_cse_simplify_operands): Don't remove
+ implicit extension from LOAD_EXTEND_OP.
+
+2004-01-16 Jan Hubicka <jh@suse.cz>
+
+ PR opt/11350
+ * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
+ after reload.
+ * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
+ rtl_try_redirect_by_replacing_branch): Likewise.
+
+2004-01-15 Geoffrey Keating <geoffk@apple.com>
+
+ PR pch/13689
+ * alias.c (struct alias_set_entry): Mark for GC.
+ (alias_sets): Make static, mark for GC.
+ (record_alias_subset): Use GC to allocate alias structures.
+ * varray.c (element): Make generic varrays GCed.
+
+ PR pch/13361
+ * c-typeck.c (constructor_asmspec): Delete.
+ (struct initializer_stack): Delete field 'asmspec'.
+ (start_init): Delete saving of asmspec.
+ (finish_init): Don't update constructor_asmspec.
+ * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
+ * stmt.c (expand_asm): Duplicate strings from tree.
+ (expand_asm_operands): Likewise.
+ * tree.c (tree_size): Update computation of size of STRING_CST.
+ (make_node): Don't make STRING_CST nodes.
+ (build_string): Allocate string with tree node.
+ * tree.def (STRING_CST): Update comment.
+ * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
+ (tree_string): Place contents of string in tree node.
+ * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
+ from tree.
+
+ * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case
+ altivec operands.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.h: Fix comment formatting.
+ * c-cppbuiltin.c: Likewise.
+ * c-pragma.c: Likewise.
+ * calls.c: Likewise.
+ * collect2.c: Likewise.
+ * cppcharset.c: Likewise.
+ * cpptrad.c: Likewise.
+ * dbxout.c: Likewise.
+ * defaults.h: Likewise.
+ * dwarf2out.c: Likewise.
+ * fold-const.c: Likewise.
* genautomata.c: Likewise.
+ * genconditions.c: Likewise.
+ * genflags.c: Likewise.
+ * gengtype.c: Likewise.
* integrate.c: Likewise.
* loop.c: Likewise.
- * loop.h: Likewise.
- * output.h: Likewise.
- * profile.c: Likewise.
- * ra.h: Likewise.
- * reload1.c: Likewise.
- * reload.c: Likewise.
- * sched-rgn.c: Likewise.
- * stmt.c: Likewise.
- * tree.h: Likewise.
- * vmsdbgout.c: Likewise.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add a new peephole2.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (a peephole2): Accept a constant
- that's accepted by CONST_OK_FOR_J.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (CONST_OK_FOR_J): New.
- (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
- * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
- (*addhi_h8300hs): Likewise.
-
-2002-12-12 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
- (sh_register_move_cost): Add clause for SImode fp-fp moves.
- Increase cost for moves involving multiple general purpose registers.
- * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
- TARGET_FMOVD.
- (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
- registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
- (enum reg_class reg_class_from_letter): No longer const.
- (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
- REGCLASS_HAS_GENERAL_REG.
- Handle SImode moves from/to fp registers.
- ! TARGET_SHMEDIA && TARGET_FMOVD.
- (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
- * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
-
-2002-12-12 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
- change and some warnings.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/md.texi (pushm): Fix a typo.
-
-2002-12-12 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.c (mips_output_conditional_branch): Support
- PIC-safe out-of-range branch and branch-likely.
- * config/mips/mips.md (attr length): PIC-safe out-of-range
- branches are longer.
- ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
- unused code to support indirect jumps.
-
-2002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
- (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
- BIGGEST_ALIGNMENT.
- (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
- (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Correct dump file names.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
- name to globalize_label or assemble_name.
-
-2002-12-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
- if not TARGET_SHMEDIA.
-
-2002-12-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_FP_REG): New.
- (REGISTER_MOVE_COST) Use it. Put body into a function and
- move it into:
- * sh.c (sh_register_move_cost).
- * sh-protos.h (sh_register_move_cost): Declare.
-
- * sh.c (sh_expand_builtin): Abort for unexpected nop values.
- (sh_adjust_cost): Always return a value.
-
-2002-12-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
- (REGISTER_MOVE_COST): Use it.
-
-2002-12-11 Richard Henderson <rth@redhat.com>
-
- * tree.h (MODULE_LOCAL_P): Kill.
- * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two define_peephole2): New.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
- (CONST_OK_FOR_K): Likewise.
- (CONST_OK_FOR_M): Likewise.
- (CONST_OK_FOR_LETTER_P): Do not use the above macros.
-
-2002-12-11 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (builtin_define_type_max): Handle unsigned
- types too.
-
-2002-12-10 Janis Johnson <janis187@us.ibm.com>
-
- PR other/8882
- * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
-
-2002-12-10 Devang Patel <dpatel@appple.com>
-
- * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
- * doc/invoke.texi: Add new "Darwin Options" section.
-
-2002-12-10 Jim Wilson <wilson@redhat.com>
-
- * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
- memory.
-
-2002-12-10 Andrew Haley <aph@redhat.com>
-
- * cse.c (cse_insn): Don't cse past a basic block boundary.
-
-2002-12-10 Jakub Jelinek <jakub@redhat.com>
-
- * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
- -shared.
- * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
- * config/alpha/linux.h (LIB_SPEC): Likewise.
- * config/arm/linux-elf.h (LIB_SPEC): Likewise.
- * config/pa/pa-linux.h (LIB_SPEC): Likewise.
- * config/sparc/linux.h (LIB_SPEC): Likewise.
- * config/sparc/linux64.h (LIB_SPEC): Likewise.
-
-2002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
-
- * doc/invoke.texi: Document UltraSparc III option.
-
-2002-12-09 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
- __tune_pentium2__ and __tune_pentium3__ as necessary.
-
-2002-12-09 Richard Henderson <rth@redhat.com>
-
- * target.h (gcc_target): Add cannot_force_const_mem.
- * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
- (TARGET_INITIALIZER): Add it.
- * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
- * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
- * reload1.c (reload): Likewise.
- * hooks.c (hook_bool_rtx_false): New.
- * hooks.h: Declare it.
-
- * config/i386/i386.c (ix86_cannot_force_const_mem): New.
- (TARGET_CANNOT_FORCE_CONST_MEM): New.
- (ix86_expand_move): Remove de-const-pooling hack.
-
-2002-12-09 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (dump_file): Fix order to match reality.
-
-2002-12-08 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
- (store_multiple): Likewise.
-
-2002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
- function pointers in page 0.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
- definition
- (MEMBER_TYPE_FORCES_BLK): Move.
- * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
- aggregate arguments.
- (ia64_function_value): Use PARALLEL to return aggregate values.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
- * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
- * calls.c (store_unaligned_arguments_into_pseudos) Remove
- FUNCTION_ARG_REG_LITTLE_ENDIAN.
- * stmt.c (expand_return): Ditto.
- * expr.c (move_block_from_reg): Ditto.
- (copy_blkmode_from_reg): Ditto.
- * expmed.c (store_bit_field): Ditto.
-
-2002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
-
- * config.gcc: Added tic4x-* target as an alias to c4x-*
-
-2002-12-08 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Use force_operand instead of
- constructing insn directly.
-
-2002-12-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*iorhi_shift_8): New.
-
-2002-12-06 Bernd Schmidt <bernds@redhat.com>
-
- * doc/invoke.texi: Document FRV port options.
- * doc/md.texi: Document FRV register classes.
-
-2002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Configuration): Improve description of cases
- where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
-
-2002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
-
- * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
- FPU.
- (push): Generate push_fpscr.
- (pop): Generate pop_fpscr.
- * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
- (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
-
-2002-12-06 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
- DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
-
-2002-12-06 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (movdi_i): Name. Remove inappropriate comment.
-
-2002-12-06 J"orn Rennecke <joern.rennecke@superh.com>
- Merged from basic improvements branch (excerpt):
-
- 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
- * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
-
-2002-12-06 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
-
-2002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
- * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
-
-2002-12-05 Dale Johannesen <dalej@apple.com>
-
- * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
-
-2002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
- PROFILE_HOOK.
- * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
-
-2002-12-05 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h (__ev_mwlufi): Remove.
- (__ev_mwlufia): Remove.
- (__ev_mwlumfaaw): Remove.
- (__ev_mwlusfaaw): Remove.
- (__ev_mwlumfanw): Remove.
- (__ev_mwlusfanw): Remove.
-
-2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*andorsi3_shift_8): New.
-
-2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
- lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
- (get_shift_alg): Return optimal assembly instructions for the
- shifts mentioned above.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_init_once): Do not use loop to
- implement ashiftrt:HI by 13 bits on H8S.
-
-2002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
- * pa.md (canonicalize_funcptr_for_compare): Output library call to
- canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
- * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
- CTOR_LIST_BEGIN): New defines.
- * pa/t-linux (LIB2FUNCS_EXTRA): New define.
- (fptr.c): Add make rules.
-
-2002-12-04 Geoffrey Keating <geoffk@apple.com>
-
- * combine.c (combine_simplify_rtx): Add new canonicalizations.
- * doc/md.texi (Insn Canonicalizations): Document new
- canonicalizations for multiply/add combinations.
- * config/rs6000/rs6000.md: Add and modify floating add/multiply
- patterns to ensure they're used whenever they can be.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Update the comments related to shifts.
-
-2002-12-04 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (get_fnaddr): Correct length attribute.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*extzv_8_8): New.
- (*extzv_8_16): Likewise.
-
-2002-12-04 Jason Merrill <jason@redhat.com>
-
- PR c++/8461, c++/8625
- * integrate.c (copy_decl_for_inlining): Handle explicit invisible
- references.
- * tree-inline.c (initialize_inlined_parameters): Likewise.
-
- * tree.c (variably_modified_type_p): Just return an error_mark_node.
-
-2002-12-04 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
- macro instruction in a branch delay slot, to avoid assembler
- warnings.
-
-2002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/7622
- * c-semantics (genrtl_scope_stmt): Do not output inlined
- nested functions that contain no code.
-
-2002-12-04 Jan Hubicka <jh@suse.cz>
-
- * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
- to be forced into nonfallthru.
-
-2002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
-
-2002-12-03 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md (*movv1di_const0): New pattern.
-
-2002-12-03 Richard Henderson <rth@redhat.com>
-
- * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
-
-2002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
-
- * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
- Initialize tmp.using_obstack to 0.
-
-2002-12-03 Andreas Schwab <schwab@suse.de>
-
- * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
- (EH_RETURN_STACKADJ_RTX): Define.
- (EH_RETURN_HANDLER_RTX): Define.
- (ASM_PREFERRED_EH_DATA_FORMAT): Define.
- * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
- registers and don't save fixed registers.
- (m68k_output_function_prologue): Use it.
- (use_return_insn): Likewise.
- (m68k_output_function_epilogue): Likewise.
-
-2002-12-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (single_one_operand): Fix a warning.
- (single_zero_operand): Likewise.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Replace argument op with
- sign.
- (h8300_output_function_prologue): Update the call to dosize.
- (h8300_output_function_epilogue): Likewise.
-
-2002-12-02 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
-
-2002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
-
- * configure.in: Use "missing" script to generate warning if
- flex or bison programs not found, instead of invoking "false".
- * configure: Rebuilt.
-
-2002-12-02 Jan Hubicka <jh@suse.cz>
-
- * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
-
-2002-12-02 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Avoid overflow.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
- (push): Likewise.
- (pop): Likewise.
- (h8300_output_function_prologue): Likewise.
- (h8300_output_function_epilogue): Likewise.
-
-2002-12-02 J"orn Rennecke <joern.rennecke@superh.com>
-
- * expmed.c (store_bit_field): Use int_mode_for_mode to find
- corresponding mode of non-integer mode, unless it is VOIDmode.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (stm_h8300s_2): New.
- (stm_h8300s_3): Likewise.
- (stm_h8300s_4): Likewise.
- (five define_peephole2): Likewise.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * ra-build.c: Fix a comment typo.
-
-2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_output_function_prologue):
- Remove variable idx.
- (h8300_output_function_epilogue): Likewise.
-
-2002-12-01 Zack Weinberg <zack@codesourcery.com>
-
- * config/frv/xm-frv.h: Delete, unnecessary.
-
-2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add comments for define_peephole2.
-
-2002-12-01 Mark Mitchell <mark@codesourcery.com>
-
- * builtin-types.def (BT_SIZE): Use size_type_node.
- * builtins.c (fold_builtin): Make the builtin strlen returns a
- size_t, not a sizetype.
- * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
- c_size_type_node.
- (c_alignof_expr): Likewise.
- (c_common_nodes_and_builtins): Likewise.
- * c-common.h (CTI_C_SIZE_TYPE): Remove.
- (c_size_type_node): Likewise.
- * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
- * tree.h (TI_SIZE_TYPE): New enumeral.
- (size_type_node): Likewise.
-
-2002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
- pseudo register number plus 1.
-
-2002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
-
- * cpplib.c (_cpp_test_assertion): Default *value to 0.
-
- * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
-
-2002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/t-crtstuff: New target makefile fragment.
- * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
-
-2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (movsi_h8300hs): Change the order of
- alternatives to correct the length when the memory operand is
- either pre_dec or post_inc.
-
-2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): Give an
- internal name *tst_extzv_bitqi_1_n.
- Accept bit_operand instead of bit_memory_operand.
- Do not accept bit tests with the MSB.
- (*tst_extzv_memqi_1_n): New.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
- Fix a comment typo.
- (h8300_tiny_constant_address_p): Likewise.
-
-2002-11-28 Michael Matz <matz@suse.de>
-
- * doc/passes.texi: Mention the other register allocator.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (6 new peephole2 patterns): New.
-
-2002-11-28 Jakub Jelinek <jakub@redhat.com>
-
- * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
- * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
- * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_and_costs): New.
- * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_and_costs.
-
-2002-11-27 Zack Weinberg <zack@codesourcery.com>
-
- * config/rs6000/rs6000.c (altivec_init_builtins): Make the
- pointer argument in the prototypes of the following builtins
- be (const TYPE *) rather than (TYPE *):
- + __builtin_altivec_ld_internal_4sf
- + __builtin_altivec_ld_internal_4si
- + __builtin_altivec_ld_internal_8hi
- + __builtin_altivec_ld_internal_16qi
- + __builtin_altivec_lvsl
- + __builtin_altivec_lvsr
- + __builtin_altivec_lvebx
- + __builtin_altivec_lvehx
- + __builtin_altivec_lvewx
- + __builtin_altivec_lvxl
- + __builtin_altivec_lvx
- + __builtin_altivec_dst
- + __builtin_altivec_dstt
- + __builtin_altivec_dstst
- + __builtin_altivec_dststt
-
-2002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * except.c (default_exception_section): Move variable into the
- scope where it is used.
-
-2002-11-27 Krister Walfridsson <cato@df.lth.se>
-
- * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
- correct version.
-
-2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
-
-2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_shift_costs): New.
- * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_shift_costs.
-
-2002-11-27 Jim Wilson <wilson@redhat.com>
-
- * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
- in output template.
-
-2002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
-
- * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
- * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
- DLL_IMPORT_EXPORT_PREFIX, not '@'.
- (i386_pe_dllimport_name_p): Likewise.
- (i386_pe_mark_dllexport): Likewise.
- (i386_pe_mark_dllimport): Likewise.
- (i386_pe_encode_section_info): Likewise.
- (i386_pe_strip_name_encoding): Likewise.
-
-2002-11-27 Richard Henderson <rth@redhat.com>
-
- * mkmap-symver.awk (BEGIN): Set sawsymbol false.
- (nm && NF == 3): Set sawsymbol true.
- (END): Exit if no symbols seen.
- (output): Fix map syntax error if no globals for the version.
-
-2002-11-27 Jan Hubicka <jh@suse.cz>
-
- * builtins.def (DEF_C99_BUILTIN): Fix.
-
-2002-11-26 Andrew Haley <aph@redhat.com>
-
- * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
- from_Unwind_Find_Enclosing_Function.
- * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
- * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
- * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
- _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
- * unwind.h (_Unwind_FindEnclosingFunction): Add.
-
-2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/s390/s390.c (390_output_constant_pool): Set alignment
- before label in 64 bit mode, behind otherwise.
-
-2002-11-26 Richard Henderson <rth@redhat.com>
-
- * c-common.c (handle_visibility_attribute): Accept "default".
- * tree.h (enum symbol_visibility): New.
- (decl_visibility): Declare.
- * target.h (gcc_target.visibility): Take visibility arg as integer.
- * varasm.c (default_assemble_visibility): Likewise.
- (decl_visibility): New.
- (maybe_assemble_visibility): Use it.
- * output.h (default_assemble_visibility): Update prototype.
- * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
- visibility arg as integer.
- * doc/extend.texi: Document default visibility.
-
-2002-11-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Adjust spacing.
+ * predict.c: Likewise.
+ * sdbout.c: Likewise.
+
+2004-01-15 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.md (*movti_internal): C output template
+ extracted to ia64.c.
+ (*movti_internal_reg): Delete.
+ (reload_inti, reload_outti): Use the correct mode on operand 2
+ in the first place, don't fix it up in the output template.
+ (movtf, reload_ointf, reload_outtf): New expanders.
+ (*movtf_internal): New define_insn_and_split.
+ * config/ia64/ia64.c (ia64_split_timode): Rename to ia64_split_tmode;
+ make static; do not hand TFmode CONST_DOUBLEs to split_double.
+ (ia64_split_tmode_move): New function, body mostly pulled
+ from ia64.md:*movti_internal.
+ (ia64_function_arg_words): New function, extracted common
+ logic from ia64_function_arg et seq.
+ (ia64_function_arg_offset): Likewise. Handle correctly the
+ case of a scalar quantity 16 bytes wide with only 8-byte alignment.
+ (ia64_function_arg, ia64_function_arg_partial_nregs)
+ (ia64_function_arg_advance): Use ia64_function_arg_words and
+ ia64_function_arg_offset.
+ (ia64_function_value): TCmode does not go in float regs.
+ (ia64_secondary_reload_class): Also handle TFmode.
+ * config/ia64/ia64-protos.h: Remove prototype for
+ ia64_split_timode; add prototype for ia64_split_tmode_move.
+
+2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (MAINT): Make it an immediate assignment.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Remove useless calls to gen_lowpart.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/coff.h: Replace Hitachi with Renesas.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
* config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+ * config/h8300/lib1funcs.asm: Likewise.
-2002-11-26 Richard Henderson <rth@redhat.com>
-
- * hooks.c (hook_bool_void_false, hook_void_tree_int,
- hook_void_FILEptr_constcharptr): Rename so that the return
- type is first.
- (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
- hook_bool_tree_false): New.
- * hooks.h: Update.
- * langhooks-def.h: Update for renames.
- * target-def.h: Likewise.
- * tree.c (default_comp_type_attributes,
- default_set_default_type_attributes, default_insert_attributes,
- default_function_attribute_inlinable_p,
- default_ms_bitfield_layout_p): Remove.
- * tree.h: Update.
-
-2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-protos.h (function_value): New prototype.
- * pa.c (function_value): Use a PARALLEL to return small aggregates on
- TARGET_64BIT.
- * pa.h (FUNCTION_VALUE): Use function_value.
- * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
- call_value_internal_reg, sibcall_value_internal_symref,
- sibcall_value_internal_symref_64bit): Remove =rf constraint on return
- value.
-
-2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * expr.c (gen_group_rtx, emit_group_move): New functions.
- * expr.h (gen_group_rtx, emit_group_move): Prototype.
- * function.c (expand_function_start): Use gen_group_rtx to create a
- PARALLEL rtx to hold the return value when the real return rtx is a
- PARALLEL.
- (expand_function_end): Use emit_group_move to move the return value
- from a PARALLEL to the real return registers.
- * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
- in PARALLELs.
-
-2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/t-libc-ok: Fix typo.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
- before AC_PROG_CC.
- * configure: Rebuilt.
-
-2002-11-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-decl.c: (start_struct): Commonize flag setting.
-
-2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
- RS6000_CPU_CPP_ENDIAN_BUILTINS.
- * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
-
-2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
- insns.
- * config/s390/s390.c (struct machine_function): Introduction of
- struct machine_function.
- (s390_output_symbolic_const): Use of cfun.
- (s390_optimize_prolog): Likewise.
- (s390_fixup_clobbered_return_reg): Likewise.
- (s390_frame_info): Likewise.
- (s390_emit_prologue, s390_emit_epilogue): Likewise.
- (s390_init_machine_status): New function.
- (override_options): call s390_init_machine_status.
- * config/s390/s390-protos.h (s390_output_constant_pool): Changed
- prototype.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (output_constant_pool): For pool constants in mergeable
- section ensure each constant is padded to multiple of entity size.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (default_exception_section): Move to...
- * except.c (default_exception_section): ... here. Make
- .gcc_except_table read-only if it is not expected to have any
- dynamic relocations and linker handles it.
- * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
- if it is not expected to have any dynamic relocations and linker
- handles it.
- * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
- when linking read-only and read-write sections together.
- * configure, config.in: Rebuilt.
- * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
- (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
-
-2002-11-25 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
- new function.
- (__ev_create_ufix32_fs): Same.
- (__ev_get_sfix32_fs_internal): New.
- (__ev_get_sfix32_fs): Define to use function.
- (__ev_get_ufix32_fs_internal): New.
- (__ev_get_ufix32_fs): Define to use function.
- (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
- (__ev_get_lower_ufix32_fs): Same.
- (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
- (__ev_get_lower_sfix32_fs): Same.
- (__ev_set_sfix32_fs_internal): New.
- (__ev_set_ufix32_fs_internal): New.
- (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
- (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
- (__ev_set_upper_sfix32_fs): Call function.
- (__ev_set_lower_sfix32_fs): Same.
- (__ev_set_upper_ufix32_fs): Same.
- (__ev_set_lower_ufix32_fs): Same.
-
-2002-11-25 Douglas B Rupp <rupp@gnat.com>
-
- * gcc.c (do_spec_1): Reset delete_this_arg to zero.
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
- * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
- * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
- defining.
- * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
-
-2002-11-25 Dave Pitts <dpitts@cozx.com>
-
- * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
-
-2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): New.
-
-2002-11-25 Richard Henderson <rth@redhat.com>
-
- * alias.c (find_base_value): Use new_reg_base_value if it's live.
- (copying_arguments): Make boolean.
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * gcc.c (static_spec_functions): Add if-exists-else spec
- function.
- (if_exists_else_spec_function): New function.
- * doc/invoke.texi: Document the if-exists-else spec function.
-
- * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
- "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
- "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
- "${tmake_file} rs6000/t-netbsd".
- * config/rs6000/netbsd.h: Rewrite.
- * config/rs6000/t-netbsd: New file.
-
-2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): Relax the
- condition for the pattern.
+2004-01-15 Andrew Pinski <apinski@apple.com>
-2002-11-25 Aldy Hernandez <aldyh@redhat.com>
+ * config/rs6000/rs6000.c (uses_TOC): Wrap #if TARGET_ELF
+ around it.
- * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
- evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
- evmwlssfanw, evmwlsmfanw.
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
- * config/rs6000/rs6000.c (bdesc_2arg): Same.
+ * config/h8300/h8300.c (h8300_return_in_memory): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ * config/h8300/h8300.h (STRUCT_VALUE): Remove.
+ (RETURN_IN_MEMORY): Likewise.
- * config/rs6000/spe.md: Same for patterns.
+2004-01-15 Richard Earnshaw <rearnsha@arm.com>
-2002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
+ PR optimization/13375
+ * gcse.c (handle_avail_expr): Just return if the source is not a
+ single set.
- PR c/8639
- * fold-const.c (extract_muldiv): Don't propagate division unless
- both arguments are multiples of C.
+2004-01-15 Richard Earnshaw <rearnsha@arm.com>
+ Daniel Jacobowitz <drow@mvista.com>
-2002-11-25 Andrew Haley <aph@redhat.com>
+ * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case.
+ (EQUIV): Define.
+ (ARM_FUNC_ALIAS): New macro.
+ * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it.
+ * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it.
- * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
- * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
- * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
- * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
+2004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-2002-11-24 Kazu Hirata <kazu@cs.umass.edu>
+ PR optimization/12372
+ * calls.c (expand_call): Add call_fusage data for stack arguments in
+ constant calls.
- * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
- target help message.
+2004-01-15 Alan Modra <amodra@bigpond.net.au>
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+ * config/rs6000/rs6000.c (uses_TOC): Correct comment. Make static.
+ (rs6000_elf_declare_function_name): Formatting.
+ * config/rs6000/rs6000-protos.h (uses_TOC): Remove declaration.
- * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
- extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
- crtbeginT.o".
- (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
- (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
- to "" for a.out configurations.
- * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
+2004-01-15 Jan Hubicka <jh@suse.cz>
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+ PR bootstrap/13692
+ * sched-deps.c (sched_analyze_1, sched_analyze_2): Fix thinko in
+ previous patch.
- * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
- NETBSD_CPP_SPEC directly.
- (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
- netbsd_endfile_spec.
- (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
+2004-01-15 Richard Henderson <rth@redhat.com>
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+ * config/alpha/alpha.h (REG_ALLOC_ORDER): Reorder fp regs after
+ integer regs of the same call-savedness.
- * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
- NETBSD_STARTFILE_SPEC.
- (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
- (ENDFILE_SPEC): Likewise.
- * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
+2004-01-15 Andreas Schwab <schwab@suse.de>
-2002-11-24 Andreas Schwab <schwab@suse.de>
+ PR bootstrap/13562
+ * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc
+ status for NOTB/NOTW/NEGW methods.
- * Makefile.in (install-driver): Remove versioned link before
- trying to create it.
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
- * config/m68k/m68k.c: Fix typo in last change defining
- TARGET_ASM_CAN_OUTPUT_MI_THUNK.
+ * doc/invoke.texi: Update dump file names. Fix a typo.
-2002-11-23 Kazu Hirata <kazu@cs.u