NAME=MAIN_ABI : arm-linux_android_abi  sections
FILE=bins/abi_bins/elf/platforms/arm-linux-androideabi-echo
CMDS=<<EOF
iS~gold,plt
EOF
EXPECT=<<EOF
0x00000378  0x48 0x00008378  0x48   0x0 -r-- .rel.plt               REL               alloc
0x000003c0  0x80 0x000083c0  0x80   0x0 -r-x .plt                   PROGBITS          alloc,execute
0x00000bac  0x1c ----------  0x1c   0x0 ---- .note.gnu.gold-version NOTE              
EOF
RUN

NAME=MAIN_ABI : arm-linux_gnu_guneabi  sections
FILE=bins/abi_bins/elf/platforms/arm-linux-gnueabi-echo
CMDS=<<EOF
iS~gold,plt
EOF
EXPECT=<<EOF
0x00000350  0x50 0x00008350  0x50   0x0 -r-- .rel.plt           REL               alloc
0x000003ac  0x8c 0x000083ac  0x8c   0x0 -r-x .plt               PROGBITS          alloc,execute
EOF
RUN

NAME=MAIN_ABI : mips-linux-gnu-echo  sections
FILE=bins/abi_bins/elf/platforms/mips-linux-gnu-echo
CMDS=<<EOF
iS~MIPS
EOF
EXPECT=<<EOF
0x000001c8  0x18 0x004001c8  0x18   0x0 -r-- .MIPS.abiflags     LOPROC+0x0000002a alloc
0x00000df0  0x90 0x00400df0  0x90   0x0 -r-x .MIPS.stubs        PROGBITS          alloc,execute
EOF
RUN

NAME=MAIN_ABI : mips64-linux-gnueabi  sections
FILE=bins/abi_bins/elf/platforms/mips64-linux-gnueabi-echo
CMDS=<<EOF
iS~MIPS
EOF
EXPECT=<<EOF
0x00000270  0x18 0x120000270  0x18   0x0 -r-- .MIPS.abiflags     LOPROC+0x0000002a alloc
0x00000288 0x168 0x120000288 0x168   0x0 -r-- .MIPS.options      LOPROC+0x0000000d alloc
0x000012a0  0x90 0x1200012a0  0x90   0x0 -r-x .MIPS.stubs        PROGBITS          alloc,execute
EOF
RUN

NAME=MAIN_ABI : powerpc-linux-gnu  sections
FILE=bins/abi_bins/elf/platforms/powerpc-linux-gnu-symexec-guess
CMDS=<<EOF
iS~plt
EOF
EXPECT=<<EOF
0x00000294  0x30 0x10000294  0x30   0x0 -r-- .rela.plt          RELA     alloc,info
0x00010000  0x10 0x10020000  0x10   0x0 -rw- .plt               PROGBITS write,alloc
EOF
RUN

NAME=MAIN_ABI : powerpc32-linux-gnu  sections
FILE=bins/abi_bins/elf/platforms/powerpc32-linux-gnu-echo
CMDS=<<EOF
iS~gold,plt
EOF
EXPECT=<<EOF
0x00000350  0x78 0x10000350  0x78   0x0 -r-- .rela.plt          RELA     alloc,info
0x00010000  0x28 0x10020000  0x28   0x0 -rw- .plt               PROGBITS write,alloc
EOF
RUN

NAME=MAIN_ABI : x86_64-linux-gnu  sections
FILE=bins/abi_bins/elf/platforms/x86_64-linux-gnu-echo
CMDS=<<EOF
iS~gold,plt
EOF
EXPECT=<<EOF
0x00000460  0xd8 0x00400460  0xd8   0x0 -r-- .rela.plt          RELA       alloc
0x00000560  0xa0 0x00400560  0xa0   0x0 -r-x .plt               PROGBITS   alloc,execute
0x00001000  0x60 0x00601000  0x60   0x0 -rw- .got.plt           PROGBITS   write,alloc
EOF
RUN

NAME=MAIN_ABI : x86_64-macho  sections
FILE=bins/abi_bins/elf/platforms/x86_64-macho-echo
CMDS=<<EOF
iS~stub
EOF
EXPECT=<<EOF
0x00000f4e  0x1e 0x100000f4e  0x1e   0x2 -r-x 1.__TEXT.__stubs         SYMBOL_STUBS             PURE_INSTRUCTIONS,SOME_INSTRUCTIONS
0x00000f6c  0x42 0x100000f6c  0x42   0x4 -r-x 2.__TEXT.__stub_helper   REGULAR                  PURE_INSTRUCTIONS,SOME_INSTRUCTIONS
EOF
RUN

NAME=MAIN_ABI : x86-linux-gnu  sections
FILE=bins/abi_bins/elf/platforms/x86-linux-gnu-echo
CMDS=<<EOF
iS~gold,plt
EOF
EXPECT=<<EOF
0x00000330  0x48 0x08048330  0x48   0x0 -r-- .rel.plt           REL        alloc
0x000003a0  0xa0 0x080483a0  0xa0   0x0 -r-x .plt               PROGBITS   alloc,execute
0x00001000  0x30 0x0804a000  0x30   0x0 -rw- .got.plt           PROGBITS   write,alloc
EOF
RUN

NAME=MAIN_ABI : i686-w64-mingw32  sections
FILE=bins/abi_bins/pe/platforms/i686-w64-mingw32-echo
CMDS=<<EOF
iS~tls
EOF
EXPECT=<<EOF
0x00002e00  0x200 0x00408000 0x1000   0x0 -rw- .tls                CNT_INITIALIZED_DATA,ALIGN_4BYTES
EOF
RUN

NAME=MAIN_ABI : x86_64-w64-mingw32  sections
FILE=bins/abi_bins/pe/platforms/x86_64-w64-mingw32-echo
CMDS=<<EOF
iS~tls
EOF
EXPECT=<<EOF
0x00004400  0x200 0x0040a000 0x1000   0x0 -rw- .tls                CNT_INITIALIZED_DATA,ALIGN_32BYTES
EOF
RUN