-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathapi-main.exp
64 lines (62 loc) · 2.01 KB
/
api-main.exp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
set test "api-main"
setup-logs $test
set testsuite {
"arm-linux-gnueabi" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = R0"
"main_argv :: in out u32 = R1"
"main_result :: out u32 = R0"
}
"arm-linux-androideabi" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = R0"
"main_argv :: in out u32 = R1"
"main_result :: out u32 = R0"
}
"i686-w64-mingw32" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = mem[ESP + 4, el]:u32"
"main_argv :: in out u32 = mem[ESP + 8, el]:u32"
"main_result :: out u32 = EAX"
}
"x86_64-w64-mingw32" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = low:32[RCX]"
"main_argv :: in out u64 = RDX"
"main_result :: out u32 = low:32[RAX]"
}
"x86_64-linux-gnu" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = low:32[RDI]"
"main_argv :: in out u64 = RSI"
"main_result :: out u32 = low:32[RAX]"
}
"x86-linux-gnu" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = mem[ESP + 4, el]:u32"
"main_argv :: in out u32 = mem[ESP + 8, el]:u32"
"main_result :: out u32 = EAX"
}
"mips-linux-gnu" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = R4"
"main_argv :: in out u32 = R5"
"main_result :: out u32 = R2"
}
"mips64-linux-gnueabi" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u64 = R4"
"main_argv :: in out u64 = R5"
"main_result :: out u64 = R2"
}
"powerpc32-linux-gnu" {
"sub main(main_argc, main_argv, main_result)"
"main_argc :: in u32 = R3"
"main_argv :: in out u32 = R4"
"main_result :: out u32 = R3"
}
}
foreach {target lines} $testsuite {
set file "$bindir/$target-echo"
find_all $file bir $lines $test
}