| REQUIRES: diasdk |
| |
| Input object file reconstruction: |
| |
| ; // main.cpp |
| ; struct S { |
| ; // Function names are chosen specifically to generate hash collisions in the |
| ; // GSI hash table. |
| ; virtual int A132() { return 102; } |
| ; virtual int A1001() { return 300; } |
| ; }; |
| ; |
| ; int main(int argc, char **argv) { |
| ; S s; |
| ; return s.A132(); |
| ; } |
| |
| clang-cl /Z7 /GS- /GR- /c main.cpp /Foglobals-dia-vfunc-collision2.obj |
| |
| RUN: lld-link /debug /nodefaultlib /entry:main /out:%t.exe %S/Inputs/globals-dia-vfunc-collision2.obj |
| RUN: llvm-pdbutil pretty -classes %t.pdb | FileCheck %s |
| |
| CHECK: struct S |
| CHECK: func [0x00001060+ 0 - 0x0000106c-12 | sizeof= 12] (FPO) virtual {{.*}}A132() |
| CHECK: func [0x00001070+ 0 - 0x0000107c-12 | sizeof= 12] (FPO) virtual {{.*}}A1001() |