86 lines · plain
1# REQUIRES: x862# RUN: yaml2obj %p/Inputs/hello32.yaml -o %t.obj3# RUN: lld-link -safeseh:no %t.obj %p/Inputs/std32.lib /subsystem:console \4# RUN: /entry:main@0 /alternatename:___delayLoadHelper2@8=_main@0 \5# RUN: /delayload:std32.dll /out:%t.exe6# RUN: llvm-readobj --coff-imports %t.exe | FileCheck -check-prefix=IMPORT %s7# RUN: llvm-readobj --coff-basereloc %t.exe | FileCheck -check-prefix=BASEREL %s8# RUN: llvm-objdump --no-print-imm-hex -d %t.exe | FileCheck --check-prefix=DISASM %s9 10IMPORT: Format: COFF-i38611IMPORT-NEXT: Arch: i38612IMPORT-NEXT: AddressSize: 32bit13IMPORT-NEXT: DelayImport {14IMPORT-NEXT: Name: std32.dll15IMPORT-NEXT: Attributes: 0x116IMPORT-NEXT: ModuleHandle: 0x301817IMPORT-NEXT: ImportAddressTable: 0x302018IMPORT-NEXT: ImportNameTable: 0x204019IMPORT-NEXT: BoundDelayImportTable: 0x020IMPORT-NEXT: UnloadDelayImportTable: 0x021IMPORT-NEXT: Import {22IMPORT-NEXT: Symbol: ExitProcess (0)23IMPORT-NEXT: Address: 0x40102924IMPORT-NEXT: }25IMPORT-NEXT: Import {26IMPORT-NEXT: Symbol: MessageBoxA (0)27IMPORT-NEXT: Address: 0x40103328IMPORT-NEXT: }29IMPORT-NEXT: }30 31BASEREL: BaseReloc [32BASEREL-NEXT: Entry {33BASEREL-NEXT: Type: HIGHLOW34BASEREL-NEXT: Address: 0x100535BASEREL-NEXT: }36BASEREL-NEXT: Entry {37BASEREL-NEXT: Type: HIGHLOW38BASEREL-NEXT: Address: 0x100C39BASEREL-NEXT: }40BASEREL-NEXT: Entry {41BASEREL-NEXT: Type: HIGHLOW42BASEREL-NEXT: Address: 0x101F43BASEREL-NEXT: }44BASEREL-NEXT: Entry {45BASEREL-NEXT: Type: HIGHLOW46BASEREL-NEXT: Address: 0x102547BASEREL-NEXT: }48BASEREL-NEXT: Entry {49BASEREL-NEXT: Type: HIGHLOW50BASEREL-NEXT: Address: 0x102A51BASEREL-NEXT: }52BASEREL-NEXT: Entry {53BASEREL-NEXT: Type: HIGHLOW54BASEREL-NEXT: Address: 0x103455BASEREL-NEXT: }56BASEREL-NEXT: Entry {57BASEREL-NEXT: Type: HIGHLOW58BASEREL-NEXT: Address: 0x104159BASEREL-NEXT: }60BASEREL-NEXT: Entry {61BASEREL-NEXT: Type: ABSOLUTE62BASEREL-NEXT: Address: 0x100063BASEREL-NEXT: }64BASEREL-NEXT: Entry {65BASEREL-NEXT: Type: HIGHLOW66BASEREL-NEXT: Address: 0x302067BASEREL-NEXT: }68BASEREL-NEXT: Entry {69BASEREL-NEXT: Type: HIGHLOW70BASEREL-NEXT: Address: 0x302471BASEREL-NEXT: }72BASEREL-NEXT: ]73 74DISASM: 1029: b8 20 30 40 00 movl $4206624, %eax75DISASM-NEXT: 102e: e9 0a 00 00 00 jmp 0x40103d <.text+0x3d>76DISASM-NEXT: 1033: b8 24 30 40 00 movl $4206628, %eax77DISASM-NEXT: 1038: e9 00 00 00 00 jmp 0x40103d <.text+0x3d>78DISASM-NEXT: 103d: 51 pushl %ecx79DISASM-NEXT: 103e: 52 pushl %edx80DISASM-NEXT: 103f: 50 pushl %eax81DISASM-NEXT: 1040: 68 00 20 40 00 pushl $420249682DISASM-NEXT: 1045: e8 b6 ff ff ff calll 0x401000 <.text>83DISASM-NEXT: 104a: 5a popl %edx84DISASM-NEXT: 104b: 59 popl %ecx85DISASM-NEXT: 104c: ff e0 jmpl *%eax86