parse linux system calls definitions

fixes #222
This commit is contained in:
Costa Shulyupin 2022-11-15 10:24:34 +02:00 committed by Michael Opdenacker
parent a8581e5fd4
commit 47a6001385
3 changed files with 11 additions and 0 deletions

View file

@ -171,6 +171,7 @@ parse_defs_C()
# Parse function macros, e.g., in .S files
perl -ne '/^\s*ENTRY\((\w+)\)/ and print "$1 function $.\n"' "$full_path"
perl -ne '/^SYSCALL_DEFINE[0-9]\(\s*(\w+)\W/ and print "sys_$1 function $.\n"' "$full_path"
rm "$full_path"
rmdir $tmp

View file

@ -122,6 +122,13 @@ run_produces_ok('ident query (ENTRY that should not be detected, #150)',
],
MUST_SUCCEED);
run_produces_ok('ident query (existent, #228)',
[$query_py, qw(v5.4 ident sys_init_module C)],
[qr{^Symbol Definitions:}, qr{^Symbol References:},
{ def => qr{syscall_define\.c.+\b1\b.+\bfunction\b} }
],
MUST_SUCCEED);
# Spot-check some files
run_produces_ok('file query (nonexistent)',

3
t/tree/syscall_define.c Normal file
View file

@ -0,0 +1,3 @@
SYSCALL_DEFINE3(init_module)
{
}