diff options
| author | Timur Iskhodzhanov <timurrrr@google.com> | 2014-10-23 22:25:31 +0000 |
|---|---|---|
| committer | Timur Iskhodzhanov <timurrrr@google.com> | 2014-10-23 22:25:31 +0000 |
| commit | 56af52f85286b2d75788ef447d5c46aad747ab31 (patch) | |
| tree | bfb08e20d229b4aee37962433d2d7f56cf319ca1 /llvm/test/tools/llvm-readobj | |
| parent | 5a6a2fcdeef3f51d98183cb5d737facf91718a4b (diff) | |
| download | bcm5719-llvm-56af52f85286b2d75788ef447d5c46aad747ab31.tar.gz bcm5719-llvm-56af52f85286b2d75788ef447d5c46aad747ab31.zip | |
PR21189: Teach llvm-readobj to dump bits of COFF symbol subsections required to debug using VS2012+
Reviewed at http://reviews.llvm.org/D5755
Thanks to Andrey Guskov for his help investigating this!
llvm-svn: 220526
Diffstat (limited to 'llvm/test/tools/llvm-readobj')
| -rw-r--r-- | llvm/test/tools/llvm-readobj/codeview-linetables.test | 94 |
1 files changed, 76 insertions, 18 deletions
diff --git a/llvm/test/tools/llvm-readobj/codeview-linetables.test b/llvm/test/tools/llvm-readobj/codeview-linetables.test index a1bfca02d89..7b9e743d849 100644 --- a/llvm/test/tools/llvm-readobj/codeview-linetables.test +++ b/llvm/test/tools/llvm-readobj/codeview-linetables.test @@ -40,6 +40,12 @@ MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF1 MFUN32-NEXT: PayloadSize: 0x4B +MFUN32: ProcStart { +MFUN32-NEXT: FunctionName: x +MFUN32-NEXT: Section: _x +MFUN32-NEXT: CodeSize: 0xA +MFUN32-NEXT: } +MFUN32-NEXT: ProcEnd MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF2 @@ -53,6 +59,12 @@ MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF1 MFUN32-NEXT: PayloadSize: 0x4B +MFUN32: ProcStart { +MFUN32-NEXT: FunctionName: y +MFUN32-NEXT: Section: _y +MFUN32-NEXT: CodeSize: 0xA +MFUN32-NEXT: } +MFUN32-NEXT: ProcEnd MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF2 @@ -66,6 +78,12 @@ MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF1 MFUN32-NEXT: PayloadSize: 0x4B +MFUN32: ProcStart { +MFUN32-NEXT: FunctionName: f +MFUN32-NEXT: Section: _f +MFUN32-NEXT: CodeSize: 0x14 +MFUN32-NEXT: } +MFUN32-NEXT: ProcEnd MFUN32: ] MFUN32-NEXT: Subsection [ MFUN32-NEXT: Type: 0xF2 @@ -127,6 +145,12 @@ MFUN64: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF1 MFUN64-NEXT: PayloadSize: 0x4B +MFUN64: ProcStart { +MFUN64-NEXT: FunctionName: x +MFUN64-NEXT: Section: x +MFUN64-NEXT: CodeSize: 0xE +MFUN64-NEXT: } +MFUN64-NEXT: ProcEnd MFUN64: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF2 @@ -136,6 +160,12 @@ MFUN64-NEXT: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF1 MFUN64-NEXT: PayloadSize: 0x4B +MFUN64: ProcStart { +MFUN64-NEXT: FunctionName: y +MFUN64-NEXT: Section: y +MFUN64-NEXT: CodeSize: 0xE +MFUN64-NEXT: } +MFUN64-NEXT: ProcEnd MFUN64: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF2 @@ -145,6 +175,12 @@ MFUN64-NEXT: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF1 MFUN64-NEXT: PayloadSize: 0x4B +MFUN64: ProcStart { +MFUN64-NEXT: FunctionName: f +MFUN64-NEXT: Section: f +MFUN64-NEXT: CodeSize: 0x18 +MFUN64-NEXT: } +MFUN64-NEXT: ProcEnd MFUN64: ] MFUN64-NEXT: Subsection [ MFUN64-NEXT: Type: 0xF2 @@ -234,6 +270,12 @@ MFILE32: ] MFILE32-NEXT: Subsection [ MFILE32-NEXT: Type: 0xF1 MFILE32-NEXT: PayloadSize: 0x4B +MFILE32: ProcStart { +MFILE32-NEXT: FunctionName: f +MFILE32-NEXT: Section: _f +MFILE32-NEXT: CodeSize: 0x14 +MFILE32-NEXT: } +MFILE32-NEXT: ProcEnd MFILE32: ] MFILE32-NEXT: Subsection [ MFILE32-NEXT: Type: 0xF2 @@ -284,6 +326,12 @@ MFILE64: ] MFILE64-NEXT: Subsection [ MFILE64-NEXT: Type: 0xF1 MFILE64-NEXT: PayloadSize: 0x4B +MFILE64: ProcStart { +MFILE64-NEXT: FunctionName: f +MFILE64-NEXT: Section: f +MFILE64-NEXT: CodeSize: 0x18 +MFILE64-NEXT: } +MFILE64-NEXT: ProcEnd MFILE64: ] MFILE64-NEXT: Subsection [ MFILE64-NEXT: Type: 0xF2 @@ -344,23 +392,33 @@ RUN: | FileCheck %s -check-prefix MCOMDAT RUN: llvm-readobj -s -codeview-linetables %p/Inputs/comdat-function-linetables.obj.coff-2013-i386 \ RUN: | FileCheck %s -check-prefix MCOMDAT +MCOMDAT: ProcStart { +MCOMDAT-NEXT: FunctionName: f +MCOMDAT-NEXT: Section: ?f@@YAHXZ +MCOMDAT-NEXT: CodeSize: 0x7 +MCOMDAT-NEXT: } MCOMDAT: FunctionLineTable [ -MCOMDAT-NEXT: FunctionName: ?f@@YAHXZ -MCOMDAT-NEXT: CodeSize: 0x7 -MCOMDAT-NEXT: FilenameSegment [ -MCOMDAT-NEXT: Filename: c:\src\test.cc -MCOMDAT-NEXT: +0x0: 2 -MCOMDAT-NEXT: +0x3: 3 -MCOMDAT-NEXT: +0x5: 4 -MCOMDAT-NEXT: ] -MCOMDAT-NEXT: ] +MCOMDAT-NEXT: FunctionName: ?f@@YAHXZ +MCOMDAT-NEXT: CodeSize: 0x7 +MCOMDAT-NEXT: FilenameSegment [ +MCOMDAT-NEXT: Filename: c:\src\test.cc +MCOMDAT-NEXT: +0x0: 2 +MCOMDAT-NEXT: +0x3: 3 +MCOMDAT-NEXT: +0x5: 4 +MCOMDAT-NEXT: ] +MCOMDAT-NEXT: ] +MCOMDAT: ProcStart { +MCOMDAT-NEXT: FunctionName: g +MCOMDAT-NEXT: Section: ?g@@YAHXZ +MCOMDAT-NEXT: CodeSize: 0x7 +MCOMDAT-NEXT: } MCOMDAT: FunctionLineTable [ -MCOMDAT-NEXT: FunctionName: ?g@@YAHXZ -MCOMDAT-NEXT: CodeSize: 0x7 -MCOMDAT-NEXT: FilenameSegment [ -MCOMDAT-NEXT: Filename: c:\src\test.cc -MCOMDAT-NEXT: +0x0: 7 -MCOMDAT-NEXT: +0x3: 8 -MCOMDAT-NEXT: +0x5: 9 -MCOMDAT-NEXT: ] -MCOMDAT-NEXT: ] +MCOMDAT-NEXT: FunctionName: ?g@@YAHXZ +MCOMDAT-NEXT: CodeSize: 0x7 +MCOMDAT-NEXT: FilenameSegment [ +MCOMDAT-NEXT: Filename: c:\src\test.cc +MCOMDAT-NEXT: +0x0: 7 +MCOMDAT-NEXT: +0x3: 8 +MCOMDAT-NEXT: +0x5: 9 +MCOMDAT-NEXT: ] +MCOMDAT-NEXT: ] |

