musl/tools/add-cfi.common.awk
Alex Dowad 0650a05947 factor common awk functions for CFI generation scripts into new file
There is a lot which could be common between i386 and x86_64, but none
of it will be useful for any other arch. These should be useful for
all archs, however.
2015-10-08 21:03:10 +00:00

27 lines
482 B
Awk

function hex2int(str, i) {
str = tolower(str)
for (i = 1; i <= 16; i++) {
char = substr("0123456789abcdef", i, 1)
lookup[char] = i-1
}
result = 0
for (i = 1; i <= length(str); i++) {
result = result * 16
char = substr(str, i, 1)
result = result + lookup[char]
}
return result
}
function parse_const(str) {
sign = sub(/^-/, "", str)
hex = sub(/^0x/, "", str)
if (hex)
n = hex2int(str)
else
n = str+0
return sign ? -n : n
}