| RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ | |
| RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" \ | |
| RUN: | FileCheck %s | |
| RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ | |
| RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -demangle=false \ | |
| RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE | |
| Subtract ImageBase from all the offsets and run the test again with | |
| --relative-address. | |
| RUN: grep '^ADDR:' %s | sed -s 's/ADDR: //' \ | |
| RUN: | %python -c 'import sys;print("\n".join([hex(int(x, 16) - 0x400000) for x in sys.stdin]))' \ | |
| RUN: | llvm-symbolizer -obj="%p/Inputs/test.exe" -demangle=false --relative-address \ | |
| RUN: | FileCheck %s --check-prefix=CHECK-NO-DEMANGLE | |
| ADDR: 0x401380 | |
| ADDR: 0x401390 | |
| ADDR: 0x4013A0 | |
| ADDR: 0x4013C0 | |
| ADDR: 0x4013D0 | |
| ADDR: 0x4013E0 | |
| ADDR: 0x4013F0 | |
| ADDR: 0x401420 | |
| CHECK: foo(void) | |
| CHECK-NEXT: test.cpp:10 | |
| CHECK: {{^private_symbol$}} | |
| CHECK-NEXT: test.cpp:13:0 | |
| CHECK: {{^main}} | |
| CHECK-NEXT: test.cpp:16:0 | |
| CHECK: {{^foo_cdecl$}} | |
| CHECK: {{^foo_stdcall$}} | |
| CHECK: {{^foo_fastcall$}} | |
| CHECK: {{^foo_vectorcall$}} | |
| CHECK: NS::Foo::bar(void) | |
| CHECK-NEXT: test.cpp:6:0 | |
| CHECK-NO-DEMANGLE: ?foo@@YAXXZ | |
| CHECK-NO-DEMANGLE-NEXT: test.cpp:10 | |
| CHECK-NO-DEMANGLE: private_symbol | |
| CHECK-NO-DEMANGLE-NEXT: test.cpp:13 | |
| CHECK-NO-DEMANGLE: _main | |
| CHECK-NO-DEMANGLE-NEXT: test.cpp:16 | |
| CHECK-NO-DEMANGLE: _foo_cdecl | |
| CHECK-NO-DEMANGLE: _foo_stdcall@0 | |
| CHECK-NO-DEMANGLE: @foo_fastcall@0 | |
| CHECK-NO-DEMANGLE: foo_vectorcall@@0 | |
| CHECK-NO-DEMANGLE: ?bar@Foo@NS@@QAEXXZ | |
| CHECK-NO-DEMANGLE-NEXT: test.cpp:6 |