2008-05-07 16:50:35 +04:00
|
|
|
# $NetBSD: HACKS,v 1.102 2008/05/07 12:50:35 tsutsui Exp $
|
2002-09-21 12:17:32 +04:00
|
|
|
#
|
|
|
|
# This file is intended to document workarounds for currently unsolved
|
|
|
|
# (mostly) compiler bugs.
|
|
|
|
#
|
|
|
|
# Format:
|
|
|
|
# hack title
|
|
|
|
# cdate creation date
|
|
|
|
# mdate mod date
|
|
|
|
# who responsible developer
|
|
|
|
# port ...
|
|
|
|
# affected ports, space separated, if not "all"
|
|
|
|
# file affected file : revision : line from : line to
|
|
|
|
# affected files and revision and line numbers describing hack
|
|
|
|
# multiple lines if necessary.
|
|
|
|
# pr NNNN ...
|
|
|
|
# problem reports this hack works around, if known. Space
|
|
|
|
# separated.
|
|
|
|
# regress src/regress/directory/where/test/found
|
|
|
|
# regression test directories, if available.
|
|
|
|
# descr
|
|
|
|
# insert short informal description (multi-line). (Longer ones
|
|
|
|
# should be in the PR database. More formal descriptions might
|
|
|
|
# be in the regress tree. See above).
|
|
|
|
# kcah
|
|
|
|
# closing bracket.
|
|
|
|
#
|
|
|
|
# this is a comment.
|
|
|
|
|
|
|
|
hack netstat ieee1394 address printing.
|
|
|
|
mdate 14 Nov 2000
|
|
|
|
who matt
|
|
|
|
file lib/libc/net/getnameinfo.c : 1.32 : 497 : 503
|
|
|
|
descr
|
|
|
|
Because the current implementation of IP over IEEE1394, the
|
|
|
|
fw device address contains more than just the IEEE1394 EUI-64.
|
|
|
|
So when printing out IEEE1394 addresses, ignore the extra stuff.
|
|
|
|
kcah
|
|
|
|
|
|
|
|
hack xterm vs. libterm
|
|
|
|
mdate 01 Aug 2000
|
|
|
|
who jdc
|
|
|
|
file xsrc/xc/programs/xterm/main.c : 1.2 : 3609 : 3614
|
|
|
|
pr 10383
|
|
|
|
descr
|
|
|
|
In order to extend the termcap string over 1023 bytes, a ZZ entry was
|
|
|
|
introduced to point to a memory location containing the full entry.
|
|
|
|
Without this hack, xterm will export a termcap containing the ZZ
|
|
|
|
entry, which will then be ignored by libterm. As xterm modifies the
|
|
|
|
exported termcap, this would cause those modifications to be ignored.
|
|
|
|
kcah
|
|
|
|
|
|
|
|
hack wi-at-big-endian-bus
|
|
|
|
cdate 15 Mar 2002
|
|
|
|
who martin
|
|
|
|
file dev/ic/wireg.h
|
|
|
|
descr Add an option to access the underlying bus in big endian byte order
|
|
|
|
to work around deficiencies in bus_space_{read,write}_* macros.
|
|
|
|
Those don't allow the implementation of a proper pcmcia bus space
|
|
|
|
tag.
|
|
|
|
kcah
|
|
|
|
|
2003-04-06 14:12:20 +04:00
|
|
|
hack specific knowledge of colours in curses code
|
|
|
|
cdate Sun Apr 6 11:05:24 BST 2003
|
|
|
|
who jdc
|
|
|
|
file lib/libcurses/color.c : r1.24
|
|
|
|
descr
|
|
|
|
Swap red/blue and yellow/cyan colours for COLOR_OTHER.
|
|
|
|
Fix is to enhance libtermcap to understand terminfo-style % sequences.
|
|
|
|
See also:
|
2003-07-26 21:24:44 +04:00
|
|
|
http://mail-index.NetBSD.org/tech-userlevel/2003/04/06/0000.html
|
2003-04-06 14:12:20 +04:00
|
|
|
kcah
|
2003-05-17 03:43:29 +04:00
|
|
|
|
2003-09-09 17:40:59 +04:00
|
|
|
hack Compensation for differing types of LINUX_USRSTACK and USRSTACK
|
|
|
|
cdate 21 Aug 2003
|
|
|
|
who he
|
|
|
|
file sys/miscfs/procfs/procfs_linux.c : 1.14
|
|
|
|
descr
|
|
|
|
Not all ports have LINUX_USRSTACK and/or USRSTACK defined as
|
|
|
|
literals/constants, but refer to variables of a type which is
|
|
|
|
not "unsigned long", causing compilation of procfs_linux.c to
|
|
|
|
fail with "makes integer from pointer without a cast". This
|
|
|
|
is observed on e.g. the sun3 port. Ideally the "types" for
|
|
|
|
symbols should be consistent across all ports.
|
|
|
|
kcah
|
2003-10-26 04:56:54 +03:00
|
|
|
|
2004-08-06 07:37:55 +04:00
|
|
|
hack gcc-strict-aliasing
|
|
|
|
cdate 6 August 2004
|
|
|
|
who junyoung
|
|
|
|
pr 26516
|
|
|
|
file src/usr.sbin/racoon/racoon/Makefile : 1.21
|
|
|
|
descr
|
|
|
|
GCC issues a warning "dereferencing type-punned pointer will break
|
|
|
|
strict-aliasing rules" when compiling
|
|
|
|
crypto/dist/kame/racoon/crypto/openssl.c with -O[23s]. Note that this
|
2004-08-09 08:30:31 +04:00
|
|
|
is due to use of type casting in a non-standard way in the code and
|
|
|
|
not a compiler bug. Once a new release of KAME with a proper fix
|
|
|
|
applied is imported this should be backed out.
|
2004-08-06 07:37:55 +04:00
|
|
|
kcah
|
|
|
|
|
2006-06-25 18:24:45 +04:00
|
|
|
hack gcc4 wrong uninitialized variable
|
2006-05-11 05:10:13 +04:00
|
|
|
mdate 10 May 2006
|
|
|
|
who mrg
|
|
|
|
file bin/ksh/eval.c : 1.6
|
|
|
|
file bin/sh/histedit.c : 1.39
|
|
|
|
file bin/sh/parser.c : 1.60
|
|
|
|
file crypto/dist/heimdal/kdc/524.c : 1.10
|
|
|
|
file crypto/dist/ssh/sftp.c : 1.20
|
|
|
|
file crypto/dist/ssh/ssh-keysign.c : 1.11
|
|
|
|
file dist/ipf/lib/hostname.c : 1.2
|
|
|
|
file dist/ipf/tools/ipmon.c : 1.8
|
2006-05-21 04:44:53 +04:00
|
|
|
file dist/ntp/ntpd/ntp_request.c : 1.4
|
2006-05-11 05:10:13 +04:00
|
|
|
file dist/ntp/ntpd/refclock_shm.c : 1.4
|
|
|
|
file dist/ntp/sntp/timing.c : 1.3
|
|
|
|
file dist/pppd/pppstats/pppstats.c : 1.3
|
|
|
|
file dist/smbfs/lib/smb/rap.c : 1.6
|
|
|
|
file dist/tcpdump/print-zephyr.c : 1.5
|
2006-05-18 22:48:42 +04:00
|
|
|
file distrib/utils/sysinst/aout2elf.c : 1.12
|
2006-05-11 05:10:13 +04:00
|
|
|
file gnu/libexec/uucp/uucico/uucico.c : 1.6
|
|
|
|
file lib/libc/citrus/citrus_csmapper.c : 1.6
|
|
|
|
file lib/libc/citrus/citrus_pivot_factory.c : 1.5
|
|
|
|
file lib/libc/inet/inet_cidr_ntop.c : 1.3
|
|
|
|
file lib/libc/inet/inet_ntop.c : 1.3
|
|
|
|
file lib/libc/stdio/vfwprintf.c : 1.8
|
2006-05-20 15:17:55 +04:00
|
|
|
file libexec/ld.elf_so/arch/m68k/mdreloc.c : 1.20
|
2006-05-25 13:05:40 +04:00
|
|
|
file libexec/ld.elf_so/arch/powerpc/ppc_reloc.c : 1.40
|
2006-05-21 08:19:12 +04:00
|
|
|
file libexec/ld.elf_so/arch/sh3/mdreloc.c : 1.22
|
2006-05-20 15:17:55 +04:00
|
|
|
file libexec/ld.elf_so/arch/sparc/mdreloc.c : 1.39
|
2006-05-11 05:10:13 +04:00
|
|
|
file libexec/ld.elf_so/arch/sparc64/mdreloc.c : 1.39
|
2006-05-21 08:19:12 +04:00
|
|
|
file libexec/ld.elf_so/arch/vax/mdreloc.c : 1.21
|
2006-05-21 03:41:16 +04:00
|
|
|
file libexec/ld.elf_so/arch/x86_64/mdreloc.c : 1.27
|
2006-05-11 05:10:13 +04:00
|
|
|
file sbin/fsck_ext2fs/dir.c : 1.19
|
|
|
|
file sbin/routed/rtquery/rtquery.c : 1.18
|
2006-05-21 05:24:41 +04:00
|
|
|
file sys/arch/amd64/amd64/pmap.c : 1.26
|
2006-06-24 09:21:11 +04:00
|
|
|
file sys/arch/i386/pci/piixpcib.c : 1.4
|
2006-06-25 18:24:45 +04:00
|
|
|
file sys/arch/m68k/m68k/pmap_motorola.c : 1.4
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/crypto/cast128/cast128.c : 1.9
|
|
|
|
file sys/ddb/db_command.c : 1.86
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/dev/cardbus/cardbus_map.c : 1.21
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/dev/fss.c : 1.25
|
2006-05-20 15:17:55 +04:00
|
|
|
file sys/dev/ic/igsfb.c : 1.39
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/dev/ic/mb86950.c : 1.5
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/dev/ic/midway.c : 1.71
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/dev/kttcp.c : 1.18
|
|
|
|
file sys/dev/rasops/rasops_bitops.h : 1.9
|
|
|
|
file sys/dev/pci/cmpci.c : 1.31
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/dev/pci/machfb.c : 1.45
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/dev/usb/ohci.c : 1.174
|
|
|
|
file sys/dev/usb/uhci.c : 1.196
|
|
|
|
file sys/dev/rasops/rasops_bitops.h : 1.9
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/dist/ipf/netinet/ip_nat.c : 1.10
|
|
|
|
file sys/dist/ipf/netinet/ip_rpcb_pxy.c : 1.8
|
|
|
|
file sys/dist/pf/net/pf.c : 1.22
|
2006-05-11 13:39:58 +04:00
|
|
|
file sys/fs/udf/udf_vnops.c : 1.4
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/kern/kern_sig.c : 1.219
|
|
|
|
file sys/kern/tty.c : 1.181
|
|
|
|
file sys/net/bpf.c : 1.116
|
|
|
|
file sys/net/zlib.c : 1.26
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/netccitt/if_x25subr.c : 1.37
|
2006-05-11 05:10:13 +04:00
|
|
|
file sys/netinet/in.c : 1.107
|
|
|
|
file sys/netsmb/smb_smb.c : 1.27
|
|
|
|
file sys/netsmb/smb_trantcp.c : 1.22
|
|
|
|
file sys/nfs/nfs_serv.c : 1.108
|
|
|
|
file sys/nfs/nfs_socket.c : 1.129
|
|
|
|
file sys/nfs/nfs_syscalls.c : 1.91
|
|
|
|
file sys/ufs/lfs/lfs_vfsops.c : 1.207 [also (char *)]
|
|
|
|
file usr.bin/ftp/ftp.c : 1.140
|
|
|
|
file usr.bin/find/function.c : 1.54
|
|
|
|
file usr.bin/mail/tty.c : 1.20
|
2008-04-27 07:33:06 +04:00
|
|
|
file usr.bin/msgc/msg_sys.def : 1.33-1.34
|
2006-05-11 05:10:13 +04:00
|
|
|
file usr.bin/nl/nl.c : 1.7
|
|
|
|
file usr.bin/systat/keyboard.c : 1.23
|
|
|
|
file usr.bin/usbhidctl/usbhid.c : 1.29
|
|
|
|
file usr.bin/vi/cl/cl_read.c : 1.5
|
|
|
|
file usr.bin/vi/ex/ex_cscope.c : 1.12
|
|
|
|
file usr.bin/vi/ex/ex_tag.c : 1.19
|
|
|
|
file usr.bin/vi/vi/v_txt.c : 1.15
|
|
|
|
file usr.sbin/altq/altqstat/qdisc_rio.c : 1.4
|
|
|
|
file usr.sbin/cron/do_command.c : 1.19
|
|
|
|
file usr.sbin/timed/timed/slave.c : 1.15
|
|
|
|
descr
|
|
|
|
GCC 4.1 gets many uninitialised variable warnings wrong. We should
|
|
|
|
really audit all the old hacks like this when older compilers are
|
|
|
|
removed from the tree, as many are probably no longer required.
|
2006-05-15 08:55:13 +04:00
|
|
|
The problem is that it does not recognize initialization via function
|
|
|
|
call pointer. I.e.
|
|
|
|
int p;
|
|
|
|
foo(&p);
|
|
|
|
does not mark p as initialized.
|
2006-05-11 05:10:13 +04:00
|
|
|
kcah
|
|
|
|
|
2006-05-11 13:39:58 +04:00
|
|
|
hack gcc4 pointer sign and strict aliasing problems
|
|
|
|
mdate 10 May 2006
|
|
|
|
who mrg
|
|
|
|
file bin/ed/Makefile : 1.33
|
2006-05-18 22:48:42 +04:00
|
|
|
file distrib/utils/sysinst/Makefile.inc : 1.44
|
2006-11-23 16:24:28 +03:00
|
|
|
file distrib/utils/x_dhclient/Makefile : 1.15
|
2006-05-12 03:51:06 +04:00
|
|
|
file games/bcd/Makefile : 1.5
|
|
|
|
file games/dab/Makefile : 1.5
|
|
|
|
file games/larn/Makefile : 1.17
|
|
|
|
file games/pom/Makefile : 1.5
|
|
|
|
file lib/libasn1/Makefile : 1.26
|
|
|
|
file lib/libcrypt/Makefile : 1.17
|
|
|
|
file lib/libgssapi/Makefile : 1.16
|
|
|
|
file lib/libhdb/Makefile : 1.20
|
|
|
|
file lib/libkadm5clnt/Makefile : 1.21
|
|
|
|
file lib/libkadm5srv/Makefile : 1.25
|
|
|
|
file lib/libkrb5/Makefile : 1.35
|
|
|
|
file lib/libssh/Makefile : 1.6
|
|
|
|
file lib/libtelnet/Makefile : 1.26
|
|
|
|
file libexec/getty/Makefile : 1.14
|
|
|
|
file libexec/kadmind/Makefile : 1.19
|
|
|
|
file libexec/kpasswdd/Makefile : 1.14
|
|
|
|
file sbin/atactl/Makefile : 1.3
|
|
|
|
file sbin/cgdconfig/Makefile : 1.7
|
|
|
|
file sbin/clri/Makefile : 1.13
|
|
|
|
file sbin/dkctl/Makefile : 1.4
|
|
|
|
file sbin/dump/Makefile : 1.33
|
|
|
|
file sbin/fdisk/Makefile : 1.35
|
|
|
|
file sbin/fsck_ext2fs/Makefile : 1.11
|
|
|
|
file sbin/fsck_ffs/Makefile : 1.29
|
|
|
|
file sbin/fsdb/Makefile : 1.18
|
|
|
|
file sbin/mount_smbfs/Makefile : 1.4
|
|
|
|
file sbin/newfs/Makefile : 1.30
|
|
|
|
file sbin/newfs_sysvbfs/Makefile : 1.2
|
|
|
|
file sbin/restore/Makefile : 1.23
|
|
|
|
file sbin/veriexecctl/Makefile : 1.11
|
2006-05-12 22:06:29 +04:00
|
|
|
file sys/lib/libsa/Makefile : 1.59
|
2006-05-18 22:48:42 +04:00
|
|
|
file sys/arch/evbarm/adi_brh/brh_machdep.c : 1.24
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.bin/awk/Makefile : 1.9
|
2006-05-12 22:06:29 +04:00
|
|
|
file usr.bin/crontab/Makefile : 1.24
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.bin/ctags/Makefile : 1.8
|
2006-05-12 07:26:54 +04:00
|
|
|
file usr.bin/gzip/Makefile : 1.10
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.bin/ssh/sftp/Makefile : 1.10
|
|
|
|
file usr.bin/ssh/ssh/Makefile : 1.25
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.bin/vi/build/Makefile : 1.26
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.bin/telnet/Makefile : 1.40
|
|
|
|
file usr.bin/tn3270/tn3270/Makefile : 1.36
|
|
|
|
file usr.bin/tr/Makefile : 1.4
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/amd/amd/Makefile : 1.27
|
|
|
|
file usr.sbin/amd/amq/Makefile : 1.14
|
|
|
|
file usr.sbin/amd/libamu/Makefile : 1.20
|
|
|
|
file usr.sbin/amd/pawd/Makefile : 1.5
|
|
|
|
file usr.sbin/bind/Makefile.inc : 1.22
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/bind/libdns/Makefile : 1.3
|
|
|
|
file usr.sbin/bind/named/Makefile : 1.17
|
|
|
|
file usr.sbin/bootp/bootptest/Makefile : 1.2
|
|
|
|
file usr.sbin/chrtbl/Makefile : 1.6
|
|
|
|
file usr.sbin/cron/Makefile : 1.12
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/dhcp/Makefile.inc : 1.20
|
|
|
|
file usr.sbin/dumplfs/Makefile : 1.11
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/hprop/Makefile : 1.13
|
|
|
|
file usr.sbin/installboot/Makefile : 1.35
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/ipf/ipftest/Makefile : 1.32
|
|
|
|
file usr.sbin/isdn/isdnd/Makefile : 1.6
|
|
|
|
file usr.sbin/isdn/isdnmonitor/Makefile : 1.3
|
|
|
|
file usr.sbin/isdn/isdntel/Makefile : 1.2
|
|
|
|
file usr.sbin/isdn/isdntrace/Makefile : 126
|
2006-05-12 07:26:54 +04:00
|
|
|
file usr.sbin/mopd/common/Makefile : 1.10
|
|
|
|
file usr.sbin/mopd/mopd/Makefile : 1.9
|
|
|
|
file usr.sbin/mopd/mopprobe/Makefile : 1.7
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/makefs/Makefile : 1.17
|
|
|
|
file usr.sbin/mscdlabel/Makefile : 1.5
|
|
|
|
file usr.sbin/pkg_install/add/Makefile : 1.7
|
|
|
|
file usr.sbin/pkg_install/create/Makefile : 1.5
|
|
|
|
file usr.sbin/pkg_install/lib/Makefile : 1.28
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/ntp/ntpd/Makefile : 1.10/1.11
|
|
|
|
file usr.sbin/ntp/ntptime/Makefile : 1.4/1.5
|
|
|
|
file usr.sbin/pppd/Makefile.inc : 1.3
|
|
|
|
file usr.sbin/pppd/pppd/Makefile : 1.38
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/rarpd/Makefile : 1.10
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/rbootd/Makefile : 1.10
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/rpc.pcnfsd/Makefile : 1.17
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/rtadvd/Makefile : 1.9
|
2006-05-12 03:51:06 +04:00
|
|
|
file usr.sbin/tcpdump/Makefile : 1.42
|
2006-05-11 13:39:58 +04:00
|
|
|
file usr.sbin/wiconfig/Makefile : 1.3
|
|
|
|
descr
|
|
|
|
GCC 4.1 warns on pointer sign comparision/assignments and lots of
|
|
|
|
code does not conform. For now we use -Wno-pointer-sign and
|
|
|
|
-fno-strict-aliasing.
|
|
|
|
kcah
|
|
|
|
|
2003-10-30 00:31:33 +03:00
|
|
|
port vax
|
|
|
|
|
2008-05-07 16:50:35 +04:00
|
|
|
hack gcc4/vax ICE
|
|
|
|
cdate
|
|
|
|
who tsutsui
|
|
|
|
file sys/arch/vax/conf/Makefile.vax
|
|
|
|
descr
|
|
|
|
GCC4 on vax gets ICE on compiling sys/ddb/db_command.c.
|
|
|
|
-fno-tree-ter prevents it so add it to COPTS.
|
|
|
|
kcah
|
|
|
|
|
2006-07-01 10:00:41 +04:00
|
|
|
hack gcc4/vax compiler crash
|
|
|
|
cdate Fri Jun 30 22:39:12 PDT 2006
|
|
|
|
who mrg
|
|
|
|
file bin/csh/Makefile : 1.27
|
|
|
|
file lib/i18n_module/UTF7/Makefile : 1.2
|
|
|
|
descr
|
|
|
|
GCC4 on vax crashes. -O0 stops it happening so far...
|
|
|
|
kcah
|
|
|
|
|
2005-12-13 08:56:23 +03:00
|
|
|
hack gcc 2.95/vax doesn't like abort being used as function pointer
|
|
|
|
cdate Tue Dec 13 05:54:50 GMT 2005
|
|
|
|
who jmc
|
|
|
|
file lib/libc/rpc/svc_vc.c 1.15
|
|
|
|
descr
|
|
|
|
Provide a local definition for abort which doesn't include
|
|
|
|
the noreturn attribute which trips up gcc 2.95 on vax.
|
2006-07-01 10:00:41 +04:00
|
|
|
kcah
|
2005-12-13 08:56:23 +03:00
|
|
|
|
2005-05-09 21:19:06 +04:00
|
|
|
hack gcc 2.95/vax doesn't have stdbool.h and gettext needs it
|
|
|
|
cdate Mon May 9 12:16:22 CDT 2005
|
|
|
|
who jmc
|
|
|
|
file gnu/usr.bin/gettext/Makefile.inc.prog 1.5
|
|
|
|
gnu/usr.bin/gettext/libgrep/Makefile 1.3
|
|
|
|
gnu/usr.bin/gettext/libnlspr/Makefile 1.5
|
|
|
|
gnu/usr.bin/gettext/libnlsut/Makefile 1.3
|
|
|
|
descr
|
|
|
|
The latest gettext assumes a C99 environment or at least
|
|
|
|
configure checks to work around this. As we don't use configure
|
|
|
|
provide a stdbool.h for vax builds locally in directories from
|
|
|
|
the template provided by the gettext code.
|
2006-07-01 10:00:41 +04:00
|
|
|
kcah
|
2005-05-09 21:19:06 +04:00
|
|
|
|
2003-10-30 00:31:33 +03:00
|
|
|
hack gcc 2.95/vax cannot handle __builtin_ffs()
|
|
|
|
cdate Fri Aug 23 21:31:15 CEST 2002
|
|
|
|
who ragge
|
|
|
|
file sys/lib/libkern/libkern.h : 1.42
|
|
|
|
descr
|
|
|
|
__builtin_ffs() is ifdef'd away if __vax__. Matt Thomas has
|
|
|
|
added this feature to GCC 3 so it can be removed when switching.
|
2006-07-01 10:00:41 +04:00
|
|
|
kcah
|
2003-10-30 00:31:33 +03:00
|
|
|
|
2008-05-07 16:50:35 +04:00
|
|
|
hack gcc 2.95/vax libbz2
|
2003-10-30 00:31:33 +03:00
|
|
|
mdate 27 Jun 2002
|
|
|
|
who thorpej
|
|
|
|
file lib/libbz2/Makefile
|
|
|
|
descr
|
|
|
|
libbz2 is mis-compiled with optimization with GCC 2.95.3
|
|
|
|
on VAX. -O0 works around this problem.
|
|
|
|
kcah
|
|
|
|
|
|
|
|
hack vax Toolchain bug
|
|
|
|
cdate 28 Mar 2003
|
|
|
|
who he
|
|
|
|
file sys/arch/vax/vax/intvec.S : 1.5
|
|
|
|
descr
|
|
|
|
Workaround for PR toolchain/20924. The assembler apparently
|
|
|
|
tries to range-check byte offsets when it doesn't have
|
|
|
|
sufficient information to make that decision.
|
|
|
|
Workaround uses `brw' instead of `brb' instruction.
|
|
|
|
kcah
|
|
|
|
|
2003-11-06 03:37:14 +03:00
|
|
|
hack vax gcc 2.95.3 -Wuninitialized workarounds
|
|
|
|
cdate 6 Nov 2003
|
|
|
|
who he
|
|
|
|
file sys/dev/bi/if_ni.c : 1.22
|
|
|
|
file sys/arch/vax/vax/ctu.c : 1.20
|
|
|
|
descr
|
|
|
|
Workaround for gcc 2.95.3 failing to detect that certain
|
|
|
|
variables will be initialized; so that this code compiles
|
|
|
|
with -Wuninitialized. Should be reviewed and possibly
|
|
|
|
reverted when gcc 3.3.2 is ready for vax.
|
|
|
|
kcah
|
|
|
|
|
2004-05-13 19:44:04 +04:00
|
|
|
hack vax gcc 2.95.3 structure initialization
|
|
|
|
cdat 13 May 2004
|
|
|
|
who cl
|
|
|
|
file sys/miscfs/kernfs/kernfs_vnops.c : 1.104
|
|
|
|
descr
|
|
|
|
Workaround for gcc 2.95.3 failing to initialize structures
|
|
|
|
and/or unions inside structures using nested designators.
|
|
|
|
Should be reverted when gcc >=3.3.3 is ready for vax.
|
|
|
|
kcah
|
2003-10-30 00:31:33 +03:00
|
|
|
|
2004-06-06 17:29:23 +04:00
|
|
|
hack vax gcc 2.95.3 needs -I. to build nslexer.c
|
|
|
|
cdat 6 Jun 2004
|
2004-06-06 21:11:33 +04:00
|
|
|
who mhitch
|
|
|
|
file lib/libc/arch/vax/Makefile.inc : 1.6
|
2004-06-06 17:29:23 +04:00
|
|
|
descr
|
|
|
|
It appears necessary to add -I. to CPPFLAGS when building
|
|
|
|
nslesxer.c. This may be caused by gcc 2.95.3 being used.
|
|
|
|
Should be reverted when a newer gcc is ready for vax.
|
|
|
|
kcah
|
|
|
|
|
2005-04-05 15:56:09 +04:00
|
|
|
hack vax gcc 2.95.3 doesn't understand "-std=c99"
|
|
|
|
cdat 5 April 2005
|
|
|
|
who tron
|
|
|
|
file src/share/mk/bsd.sys.mk
|
|
|
|
descr
|
|
|
|
We cannot use "-std=c99" for compiler warning level 4 and above
|
|
|
|
because gcc 2.95.3 doesn't support that option.
|
|
|
|
kcah
|
|
|
|
|
2006-03-07 21:24:13 +03:00
|
|
|
hack declare boolean_t in two IPF user-mode programs
|
|
|
|
cdate Tue Mar 7 19:19:20 CET 2006
|
|
|
|
who he
|
|
|
|
file dist/ipf/ipsend/iptests.c : 1.8
|
|
|
|
dist/ipf/ipsend/sock.c : 1.7
|
|
|
|
descr
|
|
|
|
The IPF user-mode programs ipsend and iptest first
|
|
|
|
include <sys/types.h> without _KERNEL defined, and
|
|
|
|
later include <sys/file.h> with _KERNEL defined.
|
|
|
|
This causes a build failure when building for vax,
|
|
|
|
since <sys/device.h> ends up being included without
|
|
|
|
bollean_t being defined by <sys/types.h>.
|
|
|
|
Build failure and further details documented in
|
|
|
|
PR#32907.
|
|
|
|
kcah
|
|
|
|
|
2003-10-30 00:31:33 +03:00
|
|
|
port arm
|
|
|
|
|
|
|
|
hack gcc-unsigned-compare
|
|
|
|
cdate 09 Mar 2002
|
|
|
|
mdate 18 Mar 2002
|
|
|
|
who bjh21
|
|
|
|
file dist/bind/lib/nameser/ns_parse.c : 1.3
|
|
|
|
file dist/dhcp/minires/ns_parse.c : 1.3
|
|
|
|
file dist/dhcp/omapip/result.c : 1.2
|
|
|
|
file dist/dhcp/server/failover.c : 1.3
|
|
|
|
file gnu/dist/toolchain/bfd/bfd.c : 1.2
|
|
|
|
file gnu/dist/toolchain/bfd/format.c : 1.2
|
|
|
|
file gnu/dist/toolchain/gdb/target.c : 1.2
|
|
|
|
file sys/kern/vfs_subr.c : 1.172
|
|
|
|
descr When checking that a potentially-unsigned enum is >= 0, assign
|
|
|
|
it to an int first. This is necessary to avoid "comparison is
|
|
|
|
always true" warnings with -fshort-enums. Casting to an int
|
|
|
|
really should be enough, but turns out not to be.
|
|
|
|
kcah
|
|
|
|
|
|
|
|
|
|
|
|
port sh3
|
|
|
|
|
2006-05-21 08:19:12 +04:00
|
|
|
hack gcc4-sh3-bz2
|
|
|
|
mdate 20 May 2006
|
|
|
|
who mrg
|
|
|
|
file lib/libbz2/Makefile : 1.10
|
|
|
|
descr
|
|
|
|
The in-tree GCC 4.1-based compiler generated too-far
|
|
|
|
pc-relative addresses. Hack is to build with -O0.
|
|
|
|
kcah
|
|
|
|
|
2003-10-30 00:31:33 +03:00
|
|
|
|
2006-05-08 18:48:59 +04:00
|
|
|
port m68000
|
2003-11-05 03:50:05 +03:00
|
|
|
|
2008-02-09 05:37:21 +03:00
|
|
|
hack gcc4-m68000
|
2008-05-07 16:50:35 +04:00
|
|
|
cdate Fri Feb 8 10:29:37 PST 2008
|
|
|
|
mdate Sun May 4 15:37:19 UTC 2008
|
2008-04-27 07:10:36 +04:00
|
|
|
who mrg, tsutsui
|
2008-02-09 05:37:21 +03:00
|
|
|
file rescue/Makefile : 1.21
|
2008-04-27 07:10:36 +04:00
|
|
|
file sbin/dump_lfs/Makefile : 1.9
|
2008-05-04 19:42:12 +04:00
|
|
|
file sbin/fsck_ffs/Makefile : 1.35
|
|
|
|
file sbin/fsdb/Makefile : 1.22
|
|
|
|
file share/mk/sys.mk : 1.96
|
2008-04-27 07:10:36 +04:00
|
|
|
file usr.sbin/ndbootd/Makefile : 1.5
|
2003-11-05 03:50:05 +03:00
|
|
|
descr
|
2008-05-04 19:42:12 +04:00
|
|
|
Several internal compiler errors with gcc -O1
|
|
|
|
around 64bit integer arithmetic.
|
2008-04-27 07:10:36 +04:00
|
|
|
This hack uses -O1 and adds some -fno-tree-foo options
|
|
|
|
to avoid the problem.
|
2008-05-04 19:42:12 +04:00
|
|
|
This might be related with GCC Bugzilla Bug 32424.
|
2003-11-05 03:50:05 +03:00
|
|
|
kcah
|
2004-03-21 16:17:14 +03:00
|
|
|
|
2008-02-09 05:37:21 +03:00
|
|
|
|
2004-03-21 16:17:14 +03:00
|
|
|
port sparc64
|
|
|
|
|
|
|
|
hack disable optimzations for uvm_bio.c on 32 bit kernels
|
|
|
|
cdate Sun Mar 21 14:14:04 MET 2004
|
|
|
|
who martin
|
2004-03-22 03:46:06 +03:00
|
|
|
file sys/arch/sparc64/conf/Makefile.sparc64 : 1.53-1.54
|
|
|
|
file sys/arch/sparc64/conf/files.sparc64 : 1.93
|
2004-03-21 16:17:14 +03:00
|
|
|
descr
|
|
|
|
The sparc compiler miscompiles uvm_bio.c when using
|
|
|
|
any optimization. This results in ubc_release panics.
|
|
|
|
kcah
|
2005-02-22 21:47:09 +03:00
|
|
|
|
2005-10-07 12:42:24 +04:00
|
|
|
port mips
|
|
|
|
|
|
|
|
hack mips-shared-linker-load-address
|
|
|
|
cdate Fri Oct 7 08:33:10 UTC 2005
|
|
|
|
who simonb
|
|
|
|
file src/sys/kern/exec_elf32.c : 1.107
|
|
|
|
descr
|
|
|
|
With COMPAT_16 or previous enabled (which enables
|
|
|
|
ELF_INTERP_NON_RELOCATABLE) a recent ld.elf_so will
|
|
|
|
load and run at address 0. The check to fix this in
|
|
|
|
rev 1.107 only checks the first psection of the ELF
|
|
|
|
executable, which may not be loadable. A more correct
|
|
|
|
fix is to check the first loadable psection instead of
|
|
|
|
just the first psection.
|
|
|
|
kcah
|
2006-03-07 21:24:13 +03:00
|
|
|
|
2006-09-03 01:32:13 +04:00
|
|
|
hack mips-duplicate-ras-end-label
|
|
|
|
cdate Sat Sep 2 23:29:42 2006
|
|
|
|
who martin
|
2007-01-08 20:41:21 +03:00
|
|
|
file src/regress/sys/kern/ras/ras3/Makefile : 1.3
|
2006-09-03 01:32:13 +04:00
|
|
|
descr
|
|
|
|
Add -fno-reorder-blocks to CFLAGS to avoid duplicate
|
|
|
|
labels by duplicated __asm output from RAS_END()
|
|
|
|
macro.
|
|
|
|
kcah
|
|
|
|
|
2006-07-31 21:10:57 +04:00
|
|
|
port i386
|
|
|
|
|
2006-08-02 00:21:55 +04:00
|
|
|
hack use volatile intermediate variable to enforce rounding
|
|
|
|
cdate Tue Aug 1 22:15:55 MEST 2006
|
|
|
|
who drochner
|
|
|
|
file src/lib/libm/src/lrintf.c : 1.4
|
|
|
|
file src/lib/libm/src/s_rintf.c : 1.8
|
|
|
|
descr
|
|
|
|
gcc-4 does subsequent operations on "float" values within
|
|
|
|
the i387 FPU without rounding the intermediate results
|
|
|
|
kcah
|