1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-21 11:13:30 +00:00
freebsd/usr.bin
Ed Maste 1dffcf9f2d ar: shuffle symbol offsets during conversion for 32-bit ar archives
During processing we maintain symbol offsets in the 64-bit s_so array,
and when writing the archive convert to 32-bit if no offsets are greater
than 4GB.  However, this was somewhat inefficient as we looped over the
array twice: first, converting to big endian and second, writing each
32-bit value one at a time (and incorrectly so on big-endian platforms).

Instead, when writing a 32-bit archive shuffle convert symbol data to
big endian (as required by the ar format) and shuffle to the beginning
of the allocation at the same time.

Also correct emission of the symbol count on big endian platforms.

Further changes are planned, but this should fix powerpc64.

Reported by:	jhibbits, mlinimon
Reviewed by:	jhibbits, Gerald Aryeetey (earlier)
Tested by:	jhibbits
MFC after:	10 days
MFC with:	r346079
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D20007
2019-04-22 19:55:47 +00:00
..
addr2line
alias
apply
ar ar: shuffle symbol offsets during conversion for 32-bit ar archives 2019-04-22 19:55:47 +00:00
asa
at
atm
awk
banner
basename
bc Sync with OpenBSD. 2019-01-12 12:35:02 +00:00
biff
bluetooth
bmake Merge bmake-20181221 2018-12-23 01:05:52 +00:00
brandelf cap_fileargs: chase r346315, update fileargs_init in consumers 2019-04-17 16:18:14 +00:00
bsdcat
bsdiff bspatch: simplify capsicumization 2018-11-07 21:01:14 +00:00
bzip2
bzip2recover
c89
c99
caesar
calendar Update the spelling of my name 2019-04-22 17:52:46 +00:00
cap_mkdb
chat
chkey
chpass
cksum
clang Merge ^/head r344178 through r344512. 2019-02-25 11:59:29 +00:00
cmp Drop "All rights reserved" from the files I own 2019-03-11 22:23:56 +00:00
col
colldef
colrm
column
comm
compile_et
compress Fix descriptor/memory leak in compress(1) code 2019-01-18 00:26:25 +00:00
cpio
cpuset
csplit
ctags
ctlstat Flush stdout after each iteration. 2019-03-06 15:19:04 +00:00
cut
cxxfilt
dc Drop "All rights reserved" from the files I own 2019-03-11 22:23:56 +00:00
diff capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
diff3 capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
dirname
dpv
drill
dtc Rework CXXSTD setting via r345708 2019-04-22 18:38:54 +00:00
du Update the spelling of my name 2019-04-22 17:52:46 +00:00
ee
elf2aout
elfdump elfdump: use designated array initialization for note types 2019-01-31 16:49:06 +00:00
enigma
env
etdump
expand
factor
false
fetch
file
file2c
find Fix whiteout support in find(1) 2019-01-28 02:00:39 +00:00
finger
fmt
fold
fortune A few corrections and clarifications to r343406. 2019-01-28 19:54:58 +00:00
from
fstat Print type designator 'D' for the KF_TYPE_DEV files. 2018-12-03 23:42:04 +00:00
fsync
ftp
gcore
gencat
getaddrinfo
getconf Update the spelling of my name 2019-04-22 17:52:46 +00:00
getent
getopt
gprof
grdc
grep Fix bsdgrep manpage clobbering grep(1) with default build options 2019-01-09 02:47:07 +00:00
gzip Correct documentation year. 2019-01-07 08:29:27 +00:00
head cap_fileargs: chase r346315, update fileargs_init in consumers 2019-04-17 16:18:14 +00:00
hesinfo
hexdump hexdump(1): Exit gracefully on format strings missing conversion 2019-04-13 16:51:48 +00:00
host
iconv
id
ident
indent capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
ipcrm
ipcs ipcs(1): drop obsolete error checking 2019-02-07 14:29:45 +00:00
iscsictl iscsictl.8: Add missing flag parameters 2018-12-27 14:44:01 +00:00
join
jot Fix 'jot -r 0 start end' to work. 2019-04-16 00:41:22 +00:00
kdump kdump: expand comment on reasons for CAPFAIL_LOOKUP 2019-02-18 03:49:16 +00:00
keylogin
keylogout
killall
ktrace
ktrdump capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
lam The lam(1) man page is unclear about the uppercase versions of the flags 2019-01-04 02:48:43 +00:00
last A single comma was missing to separate the "see also" items in 2018-10-20 17:22:04 +00:00
lastcomm
ldd Add an IMPLEMENTATION NOTES section to ldd.1. 2018-10-23 13:49:53 +00:00
leave
less
lessecho
lesskey
lex
limits
locale
localedef localedef: define characters in "space" class also as "print", except 2018-10-27 23:31:42 +00:00
locate
lock
lockf lockf(1): return EX_UNAVAILABLE if -n is used and the lock file does not 2019-03-20 07:40:38 +00:00
logger
login
logins
logname
look
lorder
lsvfs
lzmainfo
m4
mail
man Teach man(1) about C.UTF-8. 2018-11-04 16:58:55 +00:00
mandoc Suppress old gcc warning about null format string 2019-04-12 18:35:14 +00:00
mesg
minigzip
ministat
mkcsmapper
mkcsmapper_static
mkdep
mkesdb
mkesdb_static
mkfifo
mkimg Don't compress and uuencode the "hexdump -C" output files. Just 2019-03-09 02:03:07 +00:00
mklocale
mkstr
mktemp
mkuzip Minor cleanup for mkuzip(8) man page. 2019-02-19 20:26:03 +00:00
morse
msgs
mt Add IBM TS1160 density codes to libmt and the mt(1) man page. 2019-03-04 14:30:37 +00:00
nc
ncal Do not reference deskutils/cal from cal.1. 2019-03-07 11:09:25 +00:00
netstat Add stat counter for ipv6 atomic fragments 2019-04-19 17:06:43 +00:00
newgrp
newkey newkey(8): fix 'tmpname' memory leak (always) and input file descriptor leak 2019-02-08 14:31:44 +00:00
nfsstat Fix printing of the line that starts with "LocalOpen...". 2019-04-13 23:26:02 +00:00
nice
nl
nm
nohup Cross-reference nohup(1) and daemon(8). 2018-11-09 13:47:06 +00:00
number
objcopy
ofed
opieinfo
opiekey
opiepasswd
pagesize
pamtest
passwd
paste
patch patch(1): Exit successfully if we're fed a 0-length patch 2019-03-01 01:20:21 +00:00
pathchk
perror
pom pom: Fix fencepost bugs. 2018-11-20 00:06:53 +00:00
pr Drop "All rights reserved" from the files I own 2019-03-11 22:23:56 +00:00
primes Remove unneeded assert.h (there is no assertion in this file). 2019-01-06 20:42:09 +00:00
printenv
printf
proccontrol proccontrol(1): Add kpti control mode. 2019-03-16 11:46:48 +00:00
procstat Update the spelling of my name 2019-04-22 17:52:46 +00:00
protect
quota
random
rctl rctl: fix sysctl kern.racct.enable use after r341182 2019-04-03 20:37:14 +00:00
readelf
renice
resizewin
rev
revoke
rpcgen
rpcinfo
rs
rup
ruptime Fix indentation in ruptime command output for hosts in the "down" state. 2019-01-12 12:57:32 +00:00
rusers
rwall
rwho capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
script
sdiff
sdiotool
sed usr.bin/sed/tests: fix one of the regression test cases by adding its 2018-10-31 15:04:41 +00:00
seq seq(1): Require user-provided format strings to contain a conversion 2019-03-07 18:24:16 +00:00
setchannel
shar Shar files may be seen as binary by grep. 2019-01-31 23:21:18 +00:00
showmount
size
smbutil
sockstat
soelim
sort sort(1): Memoize MD5 computation to reduce repeated computation 2019-04-13 04:42:17 +00:00
split
ssh-copy-id
stat
stdbuf
strings strings: disable Casper support while building native-xtools 2019-04-08 03:35:47 +00:00
su
svn svn: support building with WITH_PIE 2019-02-21 15:08:25 +00:00
systat Add stat counter for ipv6 atomic fragments 2019-04-19 17:06:43 +00:00
tabs
tail Drop "All rights reserved" from the files I own 2019-03-11 22:23:56 +00:00
talk Use a private definition of osockaddr rather then relying on type 2019-01-18 21:30:06 +00:00
tar
tcopy
tee capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
telnet
tests
tftp
time
timeout
tip
top Fix regression in top(1) after r344381, causing informational messages 2019-04-02 18:01:54 +00:00
touch
tput
tr
true
truncate
truss truss: Add support for fsync(2) and fdatasync(2). 2019-02-28 09:13:41 +00:00
tset
tsort
tty
ul
uname
unexpand
unifdef
uniq capsicum: use a new capsicum helpers in tools 2018-11-04 19:24:49 +00:00
units Correct a typo: was -> way. 2019-01-21 15:27:58 +00:00
unvis
unzip
usbhidaction
usbhidctl
users
uudecode
uuencode Make outfile constant. 2018-11-12 07:14:34 +00:00
vacation
vgrind
vi
vis
vmstat
vtfontcvt vtfontcvt: whitespace cleanup 2019-02-06 18:50:48 +00:00
w
wall
wc cap_fileargs: chase r346315, update fileargs_init in consumers 2019-04-17 16:18:14 +00:00
what
whereis Silence Clang Scan warnings regarding the use of strcp(). 2019-01-24 18:39:45 +00:00
which
who
whois
write Remove extraneous setutxent() calls in write(1). 2019-01-23 20:02:17 +00:00
xargs
xinstall install(1): Fix relative path calculation with partial common dest/src 2019-01-31 05:20:11 +00:00
xo
xohtml Import libxo-1.0.2 2019-04-03 21:55:39 +00:00
xolint
xopo
xstr
xz
xzdec
yacc
yes
ypcat
ypmatch
ypwhich
zstd Update to Zstandard 1.4.0 2019-04-19 02:54:13 +00:00
Makefile Move trim(1) from usr.bin to usr.sbin to become trim(8). 2018-11-29 16:08:16 +00:00
Makefile.amd64
Makefile.arm
Makefile.i386
Makefile.inc
Makefile.powerpc
Makefile.sparc64