annotate lld/test/COFF/pdb-globals.test @ 192:d7606dcf6fce

Added tag llvm10 for changeset 0572611fdcc8
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 14 Dec 2020 18:01:34 +0900
parents 0572611fdcc8
children 2e18cbf3894f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 RUN: yaml2obj %S/Inputs/pdb-globals.yaml > %t.obj
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
2 RUN: lld-link /debug /nodefaultlib /entry:main /force /out:%t.exe /pdb:%t.pdb %t.obj
150
anatofuz
parents:
diff changeset
3 RUN: llvm-pdbutil dump -symbols -globals %t.pdb | FileCheck %s
anatofuz
parents:
diff changeset
4
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
5 RUN: lld-link /debug /nodefaultlib /entry:main /force /out:%t.exe /pdb:%t.pdb %t.obj /threads:1
150
anatofuz
parents:
diff changeset
6 RUN: llvm-pdbutil dump -symbols -globals %t.pdb | FileCheck %s
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
7 RUN: lld-link /debug /nodefaultlib /entry:main /force /out:%t.exe /pdb:%t.pdb %t.obj /threads:2
150
anatofuz
parents:
diff changeset
8 RUN: llvm-pdbutil dump -symbols -globals %t.pdb | FileCheck %s
anatofuz
parents:
diff changeset
9
anatofuz
parents:
diff changeset
10 # Test that we correctly distribute symbols between the globals and module
anatofuz
parents:
diff changeset
11 # symbol streams. Specifically:
anatofuz
parents:
diff changeset
12 # * S_UDT, S_GDATA32, and S_CONSTANT end up in the globals stream, and are
anatofuz
parents:
diff changeset
13 # omitted from the module stream.
anatofuz
parents:
diff changeset
14 # * S_GPROC32 and S_LPROC32 end up in the symbols stream, but S_PROCREF and
anatofuz
parents:
diff changeset
15 # S_LPROCREF are added to the globals stream that refer to the module
anatofuz
parents:
diff changeset
16 # stream.
anatofuz
parents:
diff changeset
17 # * S_LDATA32 is copied byte for byte into both streams.
anatofuz
parents:
diff changeset
18
anatofuz
parents:
diff changeset
19
anatofuz
parents:
diff changeset
20 CHECK-LABEL: Global Symbols
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
21 CHECK-NEXT: ============================================================
150
anatofuz
parents:
diff changeset
22 CHECK-NEXT: Records
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
23 CHECK-NEXT: 444 | S_UDT [size = 20] `HelloPoint`
150
anatofuz
parents:
diff changeset
24 CHECK-NEXT: original type = 0x1007
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
25 CHECK-NEXT: 240 | S_LPROCREF [size = 24] `LocalFunc`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
26 CHECK-NEXT: module = 1, sum name = 0, offset = 424
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
27 CHECK-NEXT: 192 | S_PROCREF [size = 28] `GlobalFunc`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
28 CHECK-NEXT: module = 1, sum name = 0, offset = 136
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
29 CHECK-NEXT: 220 | S_PROCREF [size = 20] `main`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
30 CHECK-NEXT: module = 1, sum name = 0, offset = 224
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
31 CHECK-NEXT: 340 | S_CONSTANT [size = 24] `ConstexprVar`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
32 CHECK-NEXT: type = 0x100B (const int), value = 18
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
33 CHECK-NEXT: 264 | S_GDATA32 [size = 28] `__purecall`
150
anatofuz
parents:
diff changeset
34 CHECK-NEXT: type = 0x0403 (void*), addr = 0003:0004
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
35 CHECK-NEXT: 292 | S_GDATA32 [size = 24] `GlobalVar`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
36 CHECK-NEXT: type = 0x100C (const int*), addr = 0003:0000
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
37 CHECK-NEXT: 316 | S_GTHREAD32 [size = 24] `GlobalTLS`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
38 CHECK-NEXT: type = 0x0074 (int), addr = 0004:0000
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
39 CHECK-NEXT: 392 | S_LTHREAD32 [size = 24] `StaticTLS`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
40 CHECK-NEXT: type = 0x0074 (int), addr = 0004:0004
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
41 CHECK-NEXT: 416 | S_UDT [size = 28] `HelloPointTypedef`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
42 CHECK-NEXT: original type = 0x1007
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
43 CHECK-NEXT: 364 | S_LDATA32 [size = 28] `ConstantVar`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
44 CHECK-NEXT: type = 0x100B (const int), addr = 0002:0000
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
45 CHECK-NEXT: 464 | S_PROCREF [size = 40] `HelloPoint::HelloPoint`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
46 CHECK-NEXT: module = 1, sum name = 0, offset = 572
150
anatofuz
parents:
diff changeset
47
anatofuz
parents:
diff changeset
48 CHECK-LABEL: Symbols
anatofuz
parents:
diff changeset
49 CHECK-NEXT: ============================================================
anatofuz
parents:
diff changeset
50 CHECK-NEXT: Mod 0000
anatofuz
parents:
diff changeset
51 CHECK-NOT: | S_GDATA32
anatofuz
parents:
diff changeset
52 CHECK-NOT: | S_UDT
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
53 CHECK-NOT: | S_GTHREAD32
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
54 CHECK: 136 | S_GPROC32 [size = 52] `GlobalFunc`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
55 CHECK: 224 | S_GPROC32 [size = 44] `main`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
56 CHECK: 424 | S_LPROC32 [size = 52] `LocalFunc`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
57 CHECK: 512 | S_LDATA32 [size = 28] `ConstantVar`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
58 CHECK: 540 | S_LTHREAD32 [size = 24] `StaticTLS`
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
59 CHECK: 572 | S_GPROC32 [size = 64] `HelloPoint::HelloPoint`