2 // RUN
: split-file
%s
%t.dir
3 // RUN
: llvm-mc
-filetype
=obj
-triple
=i686-win32-gnu
%t.dir
/main.s
-o
%t.main.obj
4 // RUN
: llvm-mc
-filetype
=obj
-triple
=i686-win32-gnu
%t.dir
/other.s
-o
%t.other.obj
6 // RUN
: lld-link
-out
:%t.exe
%t.main.obj
%t.other.obj
-entry
:entry
-subsystem
:console
-debug
:symtab
-safeseh
:no
-wrap
:foo
-wrap
:nosuchsym
7 // RUN
: llvm-objdump
-d
--print-imm-hex
%t.exe | FileCheck
%s
10 // CHECK-NEXT
: movl $
0x11010, %edx
11 // CHECK-NEXT
: movl $
0x11010, %edx
12 // CHECK-NEXT
: movl $
0x11000, %edx
14 // RUN
: llvm-readobj
--symbols
%t.exe
> %t.dump
15 // RUN
: FileCheck
--check-prefix
=SYM1
%s
< %t.dump
16 // RUN
: FileCheck
--check-prefix
=SYM2
%s
< %t.dump
17 // RUN
: FileCheck
--check-prefix
=SYM3
%s
< %t.dump
19 // _foo
= 0x00011000 = 69632
20 // ___wrap_foo
= 0x00011010 = 69648
22 // SYM1-NEXT
: Value
: 69632
23 // SYM1-NEXT
: Section
: IMAGE_SYM_ABSOLUTE
24 // SYM1-NEXT
: BaseType
: Null
25 // SYM1-NEXT
: ComplexType
: Null
26 // SYM1-NEXT
: StorageClass
: External
27 // SYM2
: Name
: ___wrap_foo
28 // SYM2-NEXT
: Value
: 69648
29 // SYM2-NEXT
: Section
: IMAGE_SYM_ABSOLUTE
30 // SYM2-NEXT
: BaseType
: Null
31 // SYM2-NEXT
: ComplexType
: Null
32 // SYM2-NEXT
: StorageClass
: External
33 // SYM3-
NOT: Name
: ___real_foo
39 movl $___wrap_foo
, %edx
40 movl $___real_foo
, %edx