1RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ 2RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" \ 3RUN: | FileCheck %s --check-prefix=CHECK 4RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ 5RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -demangle=false \ 6RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE 7 8Subtract ImageBase from all the offsets and run the test again with 9--relative-address. 10 11RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ 12RUN: | %python -c 'import sys;print "\n".join([hex(int(x, 16) - 0x400000) for x in sys.stdin])' \ 13RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -demangle=false --relative-address \ 14RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE 15 16ADDR: 0x401000 17ADDR: 0x401010 18ADDR: 0x401070 19ADDR: 0x401030 20ADDR: 0x401040 21ADDR: 0x401050 22ADDR: 0x401060 23ADDR: 0x500000 24 25CHECK: foo(void) 26CHECK-NEXT: test.cpp:10 27CHECK: main 28CHECK-NEXT: test.cpp:13:0 29CHECK: NS::Foo::bar(void) 30CHECK-NEXT: test.cpp:6:0 31CHECK: {{^foo_cdecl$}} 32CHECK: {{^foo_stdcall$}} 33CHECK: {{^foo_fastcall$}} 34CHECK: {{^foo_vectorcall$}} 35 36CHECK-NO-DEMANGLE: ?foo@@YAXXZ 37CHECK-NO-DEMANGLE-NEXT: test.cpp:10 38CHECK-NO-DEMANGLE: _main 39CHECK-NO-DEMANGLE-NEXT: test.cpp:13 40CHECK-NO-DEMANGLE: ?bar@Foo@NS@@QAEXXZ 41CHECK-NO-DEMANGLE-NEXT: test.cpp:6 42CHECK-NO-DEMANGLE: _foo_cdecl 43CHECK-NO-DEMANGLE: _foo_stdcall@0 44CHECK-NO-DEMANGLE: @foo_fastcall@0 45CHECK-NO-DEMANGLE: foo_vectorcall@@0 46