aboutsummaryrefslogtreecommitdiff
path: root/sys/tools
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2021-11-22 22:36:56 +0000
committerBrooks Davis <brooks@FreeBSD.org>2021-11-22 22:36:56 +0000
commited8a4423fba42f0aca5cfa3ce4aa1c763fdf578d (patch)
treee936c00037e2765f1191d6bab53bd52730f344cc /sys/tools
parent818aa9543de8c403f222d3174742186a36539fd4 (diff)
downloadsrc-ed8a4423fba42f0aca5cfa3ce4aa1c763fdf578d.tar.gz
src-ed8a4423fba42f0aca5cfa3ce4aa1c763fdf578d.zip
makesyscalls: allow multiple expressions for each abi change
Limitations in lua patterns means we need to be able to match more than one possible expression. Reviewed by: kevans
Diffstat (limited to 'sys/tools')
-rw-r--r--sys/tools/makesyscalls.lua22
1 files changed, 16 insertions, 6 deletions
diff --git a/sys/tools/makesyscalls.lua b/sys/tools/makesyscalls.lua
index 1f646d64e2e4..622a6ad4b1dd 100644
--- a/sys/tools/makesyscalls.lua
+++ b/sys/tools/makesyscalls.lua
@@ -130,18 +130,24 @@ end
local known_abi_flags = {
long_size = {
value = 0x00000001,
- expr = "_Contains[a-z_]*_long_",
+ exprs = {
+ "_Contains[a-z_]*_long_",
+ },
},
time_t_size = {
value = 0x00000002,
- expr = "_Contains[a-z_]*_timet_",
+ exprs = {
+ "_Contains[a-z_]*_timet_",
+ },
},
pointer_args = {
value = 0x00000004,
},
pointer_size = {
value = 0x00000008,
- expr = "_Contains[a-z_]*_ptr_",
+ exprs = {
+ "_Contains[a-z_]*_ptr_",
+ },
},
}
@@ -552,9 +558,13 @@ end
local function check_abi_changes(arg)
for k, v in pairs(known_abi_flags) do
- local expr = v["expr"]
- if abi_changes(k) and expr ~= nil and arg:find(expr) then
- return true
+ local exprs = v["exprs"]
+ if abi_changes(k) and exprs ~= nil then
+ for _, e in pairs(exprs) do
+ if arg:find(e) then
+ return true
+ end
+ end
end
end