NAME=tifdir imports and sections
FILE=../bins/coff/tif_dir.obj
EXPECT=<<EOF
[Imports]
nth vaddr      bind type lib name
---------------------------------
0   0x00000000 NONE FUNC     __TIFFmalloc
1   0x00000000 NONE FUNC     __TIFFrealloc
2   0x00000000 NONE FUNC     __TIFFmemset
3   0x00000000 NONE FUNC     __TIFFmemcpy
4   0x00000000 NONE FUNC     __TIFFfree
5   0x00000000 NONE FUNC     _TIFFFindField
6   0x00000000 NONE FUNC     _TIFFFieldWithTag
7   0x00000000 NONE FUNC     _TIFFGetField
8   0x00000000 NONE FUNC     _TIFFVGetField
9   0x00000000 NONE FUNC     _TIFFReadDirectory
10  0x00000000 NONE FUNC     _TIFFNumberOfDirectories
11  0x00000000 NONE FUNC     _TIFFCurrentDirOffset
12  0x00000000 NONE FUNC     _TIFFFreeDirectory
13  0x00000000 NONE FUNC     _TIFFCreateDirectory
14  0x00000000 NONE FUNC     _TIFFCreateCustomDirectory
15  0x00000000 NONE FUNC     _TIFFCreateEXIFDirectory
16  0x00000000 NONE FUNC     _TIFFLastDirectory
17  0x00000000 NONE FUNC     _TIFFSetDirectory
18  0x00000000 NONE FUNC     _TIFFSetSubDirectory
19  0x00000000 NONE FUNC     _TIFFUnlinkDirectory
20  0x00000000 NONE FUNC     _TIFFSetField
21  0x00000000 NONE FUNC     _TIFFVSetField
22  0x00000000 NONE FUNC     _TIFFUnsetField
23  0x00000000 NONE FUNC     _TIFFErrorExt
24  0x00000000 NONE FUNC     _TIFFWarningExt
25  0x00000000 NONE FUNC     _TIFFSetTagExtender
26  0x00000000 NONE FUNC     _TIFFSwabShort
27  0x00000000 NONE FUNC     _TIFFSwabLong
28  0x00000000 NONE FUNC     _TIFFSwabLong8
29  0x00000000 NONE FUNC     __TIFFGetFields
30  0x00000000 NONE FUNC     __TIFFGetExifFields
31  0x00000000 NONE FUNC     __TIFFSetupFields
32  0x00000000 NONE FUNC     __TIFFFillStriles
33  0x00000000 NONE FUNC     __TIFFNoPostDecode
34  0x00000000 NONE FUNC     sym.imp.BitData
35  0x00000000 NONE FUNC     sym.imp.BitData
36  0x00000000 NONE FUNC     sym.imp.BitData
37  0x00000000 NONE FUNC     sym.imp.BitData
38  0x00000000 NONE FUNC     _TIFFDefaultDirectory
39  0x00000000 NONE FUNC     _TIFFSetCompressionScheme
40  0x00000000 NONE FUNC     __TIFFDataSize
41  0x00000000 NONE FUNC     __TIFFsetByteArray
42  0x00000000 NONE FUNC     __TIFFsetString
43  0x00000000 NONE FUNC     __TIFFsetShortArray
44  0x00000000 NONE FUNC     __TIFFsetLongArray
45  0x00000000 NONE FUNC     __TIFFsetFloatArray
46  0x00000000 NONE FUNC     __TIFFsetDoubleArray
47  0x00000000 NONE FUNC     __TIFFCheckMalloc
48  0x00000000 NONE FUNC     __fltused
49  0x00000000 NONE FUNC     __real@47efffffe0000000
50  0x00000000 NONE FUNC     __real@7f7fffff
51  0x00000000 NONE FUNC     __real@c7efffffe0000000
52  0x00000000 NONE FUNC     __real@ff7fffff

[Sections]

nth paddr         size vaddr        vsize perm name
---------------------------------------------------
0   0x000001cc    0x2f 0x000001cc    0x2f ---- .drectve_0
1   0x000001fb  0x8670 0x000001fb  0x8670 -r-- .debug_S_1
2   0x0000ad73    0x70 0x0000ad73    0x70 -r-- .debug_T_2
3   0x0000ade3   0x625 0x0000ade3   0x625 -rw- .data_3
4   0x0000b408    0x54 0x0000b408    0x54 -r-- .rdata_4
5   0x00000000     0x8 0x00000000     0x8 -rw- .bss_5
6   0x0000b45c  0x2895 0x0000b45c  0x2895 -r-x .text_mn_6
7   0x0000e967     0x8 0x0000e967     0x8 -r-- .rdata_7
8   0x0000e96f     0x4 0x0000e96f     0x4 -r-- .rdata_8
9   0x0000e973     0x8 0x0000e973     0x8 -r-- .rdata_9
10  0x0000e97b     0x4 0x0000e97b     0x4 -r-- .rdata_10

EOF
CMDS=<<EOF
ii
iS
EOF
RUN

NAME=tiny coff
FILE=../bins/coff/coff.obj
EXPECT=<<EOF
 3 fd: 3 +0x00000000 0x00000000 - 0x00000144 r-x 
 2 fd: 3 +0x00000064 0x00000064 - 0x0000008a r-x fmap..text_0
 1 fd: 3 +0x0000008b 0x0000008b - 0x000000a6 r-- fmap..data_1
[Symbols]

nth paddr       vaddr      bind type     size lib name
------------------------------------------------------
0    0x00000000 0x00000000 NONE EXTERNAL 4        MessageBoxA
0    0x00000000 0x00000000 NONE EXTERNAL 4        ExitProcess
0    0x00000064 0x00000064 NONE STATIC   4        .text
0    0x00000064 0x00000064 NONE FUNC     4        main
0    0x0000008b 0x0000008b NONE STATIC   4        .data
[Relocations]

vaddr      paddr      type    name
----------------------------------
0x0000006d 0x0000006d UNKNOWN .data
0x00000074 0x00000074 UNKNOWN .data
0x00000080 0x00000080 UNKNOWN MessageBoxA
0x00000087 0x00000087 UNKNOWN ExitProcess


4 relocations
EOF
CMDS=<<EOF
om;is;ir
EOF
RUN

NAME=tiny coff2
FILE=../bins/coff/coff2.obj
EXPECT=<<EOF
10 fd: 3 +0x00000000 0x00000000 - 0x000012f7 r-x 
 9 fd: 3 +0x0000017c 0x0000017c - 0x0000026a --- fmap..drectve_0
 8 fd: 3 +0x0000026b 0x0000026b - 0x00000d1a r-- fmap..debug_S_1
 7 fd: 3 +0x00000d1b 0x00000d1b - 0x00000d8e r-- fmap..debug_T_2
 6 fd: 3 +0x00000d8f 0x00000d8f - 0x00000dbb r-x fmap..text_mn_3
 5 fd: 3 +0x00000dbc 0x00000dbc - 0x00000e8f r-- fmap..debug_S_4
 4 fd: 3 +0x00000ec2 0x00000ec2 - 0x00000eeb r-x fmap..text_mn_5
 3 fd: 3 +0x00000eec 0x00000eec - 0x00000fbf r-- fmap..debug_S_6
 2 fd: 3 +0x00000ff2 0x00000ff2 - 0x00000ff5 r-- fmap..rtc_IMZ_7
 1 fd: 3 +0x00001000 0x00001000 - 0x00001003 r-- fmap..rtc_TMZ_8
0    0x00000d8f 0x00000d8f NONE STATIC   4        .text$mn
0    0x00000ec2 0x00000ec2 NONE STATIC   4        .text$mn
            ;-- section..text_mn_5:
            ;-- .text$mn:
            ;-- ??1FooBar@@QAE@XZ:
            0x00000ec2      55             push ebp                    ; [05] -r-x section size 42 named .text_mn_5
            0x00000ec3      8bec           mov ebp, esp
EOF
CMDS=<<EOF
om
is~text
s sym.__1FooBar__QAE_XZ
pd 2
EOF
RUN
