freebsd-dev/contrib/one-true-awk/testdir/ctimes
Warner Losh 23f24377b1 awk: Merge 20210729 from One True Awk upstream (0592de4a)
July 27, 2021:
	As per IEEE Std 1003.1-2008, -F "str" is now consistent with
	-v FS="str" when str is null. Thanks to Warner Losh.

July 24, 2021:
	Fix readrec's definition of a record. This fixes an issue
	with NetBSD's RS regular expression support that can cause
	an infinite read loop. Thanks to Miguel Pineiro Jr.

	Fix regular expression RS ^-anchoring. RS ^-anchoring needs to
	know if it is reading the first record of a file. This change
	restores a missing line that was overlooked when porting NetBSD's
	RS regex functionality. Thanks to Miguel Pineiro Jr.

	Fix size computation in replace_repeat() for special case
	REPEAT_WITH_Q. Thanks to Todd C. Miller.

Also, included the tests from upstream, though they aren't yet connected
to the tree.

Sponsored by:		Netflix
2021-08-01 10:22:39 -06:00

41 lines
678 B
Plaintext
Executable File

awk '
BEGIN {
OFS = "\t"
print " new old new/old"
print ""
}
/differ/
/:$/ { name = $1; cnt = 0; next }
$1 ~ /user|sys/ {
n = split($2, x, "m") # 0m0.23s
if (n == 1)
time[cnt] += x[1]
else
time[cnt] += 60 * x[1] + x[2]
}
$1 ~ /sys/ {
cnt++
if (cnt == 2)
dump()
}
function dump() {
old = time[1]
new = time[0]
if (old > 0) {
printf "%8.2f %8.2f %8.3f %s\n", new, old, new/old, name
rat += new/old
}
nrat++
totnew += new
totold += old
time[0] = time[1] = cnt = 0
}
END {
print ""
printf "%8.2f %8.2f\n\n", totnew, totold
printf "avg new/old = %.3f\n", rat/nrat
printf "total new/old = %.3f\n", totnew/totold
print nrat " tests"
}
' $*