LLVM  7.0.0svn
NativeRawSymbol.cpp
Go to the documentation of this file.
1 //===- NativeRawSymbol.cpp - Native implementation of IPDBRawSymbol -------===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
13 
14 using namespace llvm;
15 using namespace llvm::pdb;
16 
18  : Session(PDBSession), SymbolId(SymbolId) {}
19 
20 void NativeRawSymbol::dump(raw_ostream &OS, int Indent) const {}
21 
22 std::unique_ptr<IPDBEnumSymbols>
24  return nullptr;
25 }
26 
27 std::unique_ptr<IPDBEnumSymbols>
29  PDB_NameSearchFlags Flags) const {
30  return nullptr;
31 }
32 
33 std::unique_ptr<IPDBEnumSymbols>
36  return nullptr;
37 }
38 
39 std::unique_ptr<IPDBEnumSymbols>
41  PDB_NameSearchFlags Flags, uint64_t VA) const {
42  return nullptr;
43 }
44 
45 std::unique_ptr<IPDBEnumSymbols>
47  PDB_NameSearchFlags Flags, uint32_t RVA) const {
48  return nullptr;
49 }
50 
51 std::unique_ptr<IPDBEnumSymbols>
53  uint32_t Offset) const {
54  return nullptr;
55 }
56 
57 std::unique_ptr<IPDBEnumSymbols>
59  return nullptr;
60 }
61 
62 std::unique_ptr<IPDBEnumSymbols>
64  return nullptr;
65 }
66 
67 std::unique_ptr<IPDBEnumLineNumbers>
69  return nullptr;
70 }
71 
72 std::unique_ptr<IPDBEnumLineNumbers>
74  uint32_t Length) const {
75  return nullptr;
76 }
77 
78 std::unique_ptr<IPDBEnumLineNumbers>
80  return nullptr;
81 }
82 
83 std::unique_ptr<IPDBEnumLineNumbers>
84 NativeRawSymbol::findInlineeLinesByVA(uint64_t VA, uint32_t Length) const {
85  return nullptr;
86 }
87 
89  bytes.clear();
90 }
91 
94 }
95 
97  return 0;
98 }
99 
101  return 0;
102 }
103 
105  return 0;
106 }
107 
109  return 0;
110 }
111 
113  Version.Major = 0;
114  Version.Minor = 0;
115  Version.Build = 0;
116  Version.QFE = 0;
117 }
118 
120  return 0;
121 }
122 
124  return 0;
125 }
126 
128  return 0;
129 }
130 
132  return PDB_BuiltinType::None;
133 }
134 
136  return 0;
137 }
138 
140  return PDB_CallingConv::FarStdCall;
141 }
142 
144  return 0;
145 }
146 
147 std::string NativeRawSymbol::getCompilerName() const {
148  return {};
149 }
150 
152  return 0;
153 }
154 
156  return 0;
157 }
158 
160  Version.Major = 0;
161  Version.Minor = 0;
162  Version.Build = 0;
163  Version.QFE = 0;
164 }
165 
167  return PDB_Lang::Cobol;
168 }
169 
171  return 0;
172 }
173 
174 std::string NativeRawSymbol::getLibraryName() const {
175  return {};
176 }
177 
179  return 0;
180 }
181 
183  return 0;
184 }
185 
187  return 0;
188 }
189 
192 }
193 
195  return 0;
196 }
197 
199  return 0;
200 }
201 
202 std::string NativeRawSymbol::getName() const {
203  return {};
204 }
205 
207  return 0;
208 }
209 
211  return 0;
212 }
213 
215  return 0;
216 }
217 
219  return 0;
220 }
221 
223  return 0;
224 }
225 
227  return {};
228 }
229 
231  return 0;
232 }
233 
235  return 0;
236 }
237 
239  return 0;
240 }
241 
243  return PDB_Cpu::Intel8080;
244 }
245 
247  return 0;
248 }
249 
252 }
253 
255  return 0;
256 }
257 
259  return 0;
260 }
261 
263  return 0;
264 }
265 
267  return 0;
268 }
269 
271  return 0;
272 }
273 
275  return 0;
276 }
277 
279  return {};
280 }
281 
282 std::unique_ptr<IPDBLineNumber>
284  return nullptr;
285 }
286 
288  return 0;
289 }
290 
292  return 0;
293 }
294 
295 std::string NativeRawSymbol::getSymbolsFileName() const { return {}; }
296 
298 
300  return 0;
301 }
302 
304  return 0;
305 }
306 
308  return 0;
309 }
310 
312  return 0;
313 }
314 
316  return 0;
317 }
318 
320  return 0;
321 }
322 
324  return 0;
325 }
326 
328  return 0;
329 }
330 
332  return 0;
333 }
334 
336  return {};
337 }
338 
340  PDB_UndnameFlags Flags) const {
341  return {};
342 }
343 
345  return 0;
346 }
347 
349  return 0;
350 }
351 
353  return Variant();
354 }
355 
357  return 0;
358 }
359 
361  return 0;
362 }
363 
365  return 0;
366 }
367 
368 std::unique_ptr<PDBSymbolTypeBuiltin>
370  return nullptr;
371 }
372 
374  return PDB_DataKind::Unknown;
375 }
376 
378  return PDB_SymType::None;
379 }
380 
382 
383 int32_t NativeRawSymbol::getOffset() const {
384  return 0;
385 }
386 
388  return 0;
389 }
390 
392  return 0;
393 }
394 
396  return PDB_LocType::Null;
397 }
398 
400  return PDB_Machine::Invalid;
401 }
402 
405 }
406 
407 uint64_t NativeRawSymbol::getLength() const {
408  return 0;
409 }
410 
412  return 0;
413 }
414 
416  return 0;
417 }
418 
420  return PDB_UdtType::Struct;
421 }
422 
424  return false;
425 }
426 
428  return false;
429 }
430 
432  return false;
433 }
434 
436  return false;
437 }
438 
440  return false;
441 }
442 
444  return false;
445 }
446 
448  return false;
449 }
450 
452  return false;
453 }
454 
456  return false;
457 }
458 
460  return false;
461 }
462 
464  return false;
465 }
466 
468  return false;
469 }
470 
472  return false;
473 }
474 
476  return false;
477 }
478 
480  return false;
481 }
482 
484  return false;
485 }
486 
488  return false;
489 }
490 
492  return false;
493 }
494 
496  return false;
497 }
498 
500  return false;
501 }
502 
504  return false;
505 }
506 
508  return false;
509 }
510 
512  return false;
513 }
514 
516  return false;
517 }
518 
520  return false;
521 }
522 
524  return false;
525 }
526 
528  return false;
529 }
530 
532  return false;
533 }
534 
536  return false;
537 }
538 
540  return false;
541 }
542 
544  return false;
545 }
546 
548  return false;
549 }
550 
552  return false;
553 }
554 
556  return false;
557 }
558 
560  return false;
561 }
562 
564  return false;
565 }
566 
568  return false;
569 }
570 
572  return false;
573 }
574 
576  return false;
577 }
578 
580  return false;
581 }
582 
584  return false;
585 }
586 
588  return false;
589 }
590 
592  return false;
593 }
594 
596  return false;
597 }
598 
600  return false;
601 }
602 
604  return false;
605 }
606 
608  return false;
609 }
610 
612  return false;
613 }
614 
616  return false;
617 }
618 
620  return false;
621 }
622 
624  return false;
625 }
626 
628  return false;
629 }
630 
632  return false;
633 }
634 
636  return false;
637 }
638 
640  return false;
641 }
642 
644  return false;
645 }
646 
648  return false;
649 }
650 
652  return false;
653 }
654 
656  return false;
657 }
658 
660  return false;
661 }
662 
664  return false;
665 }
666 
668  return false;
669 }
670 
672  return false;
673 }
674 
676  return false;
677 }
678 
680  return false;
681 }
682 
684  return false;
685 }
686 
688  return false;
689 }
690 
692  return false;
693 }
694 
696  return false;
697 }
698 
700  return false;
701 }
702 
704  return false;
705 }
706 
708  return false;
709 }
710 
712  return false;
713 }
714 
716  return false;
717 }
718 
720  return false;
721 }
722 
724  return false;
725 }
726 
728  return false;
729 }
730 
732  return false;
733 }
734 
736  return false;
737 }
738 
740  return false;
741 }
742 
744  return false;
745 }
746 
747 std::string NativeRawSymbol::getUnused() const {
748  return {};
749 }
uint32_t getAddressSection() const override
uint32_t getTypeId() const override
uint32_t getLiveRangeStartRelativeVirtualAddress() const override
bool hasManagedCode() const override
uint32_t getRegisterType() const override
bool wasInlined() const override
void getBackEndVersion(VersionInfo &Version) const override
uint32_t getBitPosition() const override
std::string getSymbolsFileName() const override
bool hasSetJump() const override
Compute iterated dominance frontiers using a linear time algorithm.
Definition: AllocatorList.h:24
uint32_t getSlot() const override
int32_t getVirtualBasePointerOffset() const override
bool isReference() const override
uint32_t getNumberOfRegisterIndices() const override
bool hasFarReturn() const override
std::unique_ptr< IPDBEnumLineNumbers > findInlineeLinesByVA(uint64_t VA, uint32_t Length) const override
bool isIntrinsic() const override
PDB_UdtType
These values correspond to the UdtKind enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/wcstk66t.aspx.
Definition: PDBTypes.h:234
uint32_t getNumberOfRows() const override
uint32_t getRank() const override
PDB_BuiltinType getBuiltinType() const override
bool isHLSLData() const override
uint32_t getSubTypeId() const override
PDB_NameSearchFlags
Defines flags used for enumerating child symbols.
Definition: PDBTypes.h:97
uint32_t getVirtualTableShapeId() const override
bool hasStrictGSCheck() const override
bool isConstType() const override
PDB_CallingConv getCallingConvention() const override
std::unique_ptr< IPDBEnumLineNumbers > findInlineeLines() const override
uint64_t getLiveRangeLength() const override
std::string getUndecoratedNameEx(PDB_UndnameFlags Flags) const override
uint32_t getBaseSymbolId() const override
uint32_t getUpperBoundId() const override
bool hasEHa() const override
bool isMatrixRowMajor() const override
bool isPureVirtual() const override
bool hasPrivateSymbols() const override
bool isInterfaceUdt() const override
bool hasSecurityChecks() const override
bool hasInlineAttribute() const override
uint32_t getVirtualBaseOffset() const override
bool isRValueReference() const override
uint32_t getTextureSlot() const override
uint32_t getSamplerSlot() const override
uint32_t getNumberOfModifiers() const override
bool isRestrictedType() const override
bool isRefUdt() const override
uint32_t getSymIndexId() const override
uint32_t getStride() const override
bool isIndirectVirtualBaseClass() const override
PDB_UdtType getUdtKind() const override
PDB_Machine getMachineType() const override
uint32_t getVirtualBaseDispIndex() const override
bool isLTCG() const override
bool isOptimizedAway() const override
codeview::RegisterId getLocalBasePointerRegisterId() const override
void getDataBytes(SmallVector< uint8_t, 32 > &Bytes) const override
bool isCxxReturnUdt() const override
uint32_t getOemId() const override
bool getAddressTaken() const override
uint32_t getOemSymbolId() const override
bool hasCastOperator() const override
bool isUnreached() const override
This represents the &#39;GUID&#39; type from windows.h.
Definition: GUID.h:22
std::unique_ptr< IPDBEnumSymbols > findInlineFramesByRVA(uint32_t RVA) const override
std::unique_ptr< IPDBEnumSymbols > findChildrenByRVA(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, uint32_t RVA) const override
std::string getUndecoratedName() const override
std::unique_ptr< IPDBEnumSymbols > findChildrenByVA(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, uint64_t VA) const override
bool isSplitted() const override
bool isFunction() const override
PDB_DataKind getDataKind() const override
uint32_t getOffsetInUdt() const override
void dump(raw_ostream &OS, int Indent) const override
bool isLocationControlFlowDependent() const override
std::unique_ptr< IPDBLineNumber > getSrcLineOnTypeDefn() const override
std::unique_ptr< IPDBEnumSymbols > findInlineFramesByAddr(uint32_t Section, uint32_t Offset) const override
uint32_t getRelativeVirtualAddress() const override
uint32_t getSizeInUdt() const override
uint64_t getVirtualAddress() const override
int32_t getThisAdjust() const override
uint32_t getClassParentId() const override
bool hasInterruptReturn() const override
PDB_Lang getLanguage() const override
bool isConstructorVirtualBase() const override
PDB_UndnameFlags
These values correspond to the flags that can be combined to control the return of an undecorated nam...
Definition: PDBTypes.h:285
uint32_t getSignature() const override
uint32_t getTimeStamp() const override
bool isSafeBuffers() const override
PDB_SymType
These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bkedss5f.aspx.
Definition: PDBTypes.h:179
bool isEditAndContinueEnabled() const override
uint32_t getArrayIndexTypeId() const override
std::string getLibraryName() const override
std::string getUnused() const override
bool getNoStackOrdering() const override
The instances of the Type class are immutable: once they are created, they are never changed...
Definition: Type.h:46
PDB_LocType getLocationType() const override
uint32_t getBaseDataOffset() const override
int32_t getOffset() const override
PDB_DataKind
These values correspond to the DataKind enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/b2x2t313.aspx.
Definition: PDBTypes.h:164
PDB_Cpu getPlatform() const override
Variant getValue() const override
bool isReturnValue() const override
uint32_t getTargetOffset() const override
std::unique_ptr< IPDBEnumSymbols > findChildren(PDB_SymType Type) const override
PDB_MemberAccess getAccess() const override
bool hasConstructor() const override
uint64_t getTargetVirtualAddress() const override
codeview::RegisterId getRegisterId() const override
bool isAcceleratorStubFunction() const override
uint32_t getCount() const override
uint32_t getLexicalParentId() const override
codeview::ThunkOrdinal getThunkOrdinal() const override
PDB_LocType
These values correspond to the LocationType enumeration, and are documented here: https://msdn...
Definition: PDBTypes.h:216
bool isUnalignedType() const override
bool hasInlAsm() const override
bool hasOverloadedOperator() const override
NativeRawSymbol(NativeSession &PDBSession, SymIndexId SymbolId)
uint32_t getNumberOfAcceleratorPointerTags() const override
std::unique_ptr< IPDBEnumLineNumbers > findInlineeLinesByRVA(uint32_t RVA, uint32_t Length) const override
std::string getSourceFileName() const override
std::unique_ptr< PDBSymbolTypeBuiltin > getVirtualBaseTableType() const override
SourceLanguage
These values correspond to the CV_CFL_LANG enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bw3aekw6.aspx.
Definition: CodeView.h:144
bool isDataAligned() const override
bool isPointerToMemberFunction() const override
bool isValueUdt() const override
std::unique_ptr< IPDBEnumLineNumbers > findInlineeLinesByAddr(uint32_t Section, uint32_t Offset, uint32_t Length) const override
bool isMSILNetmodule() const override
CPUType
These values correspond to the CV_CPU_TYPE_e enumeration, and are documented here: https://msdn...
Definition: CodeView.h:79
uint32_t getMemorySpaceKind() const override
bool isPacked() const override
bool hasNoReturnAttribute() const override
bool isSdl() const override
bool isNaked() const override
bool hasCustomCallingConvention() const override
std::unique_ptr< IPDBEnumSymbols > findChildrenByAddr(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, uint32_t Section, uint32_t Offset) const override
bool isCode() const override
bool isAcceleratorGroupSharedLocal() const override
bool isMultipleInheritance() const override
uint32_t getUnmodifiedTypeId() const override
bool isManagedCode() const override
uint32_t getLiveRangeStartAddressOffset() const override
bool hasAlloca() const override
bool isPointerBasedOnSymbolValue() const override
uint32_t getBaseDataSlot() const override
bool isCVTCIL() const override
PDB_SymType getSymTag() const override
bool isAcceleratorPointerTagLiveRange() const override
uint32_t getCountLiveRanges() const override
uint32_t getTargetSection() const override
bool hasEH() const override
bool hasAssignmentOperator() const override
bool hasNoInlineAttribute() const override
uint32_t getUavSlot() const override
std::unique_ptr< IPDBEnumSymbols > findInlineFramesByVA(uint64_t VA) const override
uint32_t getLowerBoundId() const override
bool isIntroVirtualFunction() const override
uint32_t getTargetRelativeVirtualAddress() const override
std::string getName() const override
bool hasFramePointer() const override
std::string getCompilerName() const override
bool hasCTypes() const override
uint32_t getNumberOfColumns() const override
uint32_t getToken() const override
bool hasNestedTypes() const override
ThunkOrdinal
These values correspond to the THUNK_ORDINAL enumeration.
Definition: CodeView.h:514
bool hasOptimizedCodeDebugInfo() const override
PDB_BuiltinType
These values correspond to the Basictype enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/4szdtzc3.aspx.
Definition: PDBTypes.h:259
std::string getObjectFileName() const override
bool hasDebugInfo() const override
bool isMSILCode() const override
bool isAggregated() const override
bool isScoped() const override
bool isVirtualInheritance() const override
bool isVolatileType() const override
void getFrontEndVersion(VersionInfo &Version) const override
uint64_t getLength() const override
bool hasSEH() const override
CallingConvention
These values correspond to the CV_call_e enumeration, and are documented at the following locations: ...
Definition: CodeView.h:173
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:44
codeview::GUID getGuid() const override
bool isVirtual() const override
bool isHotpatchable() const override
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:49
bool isCompilerGenerated() const override
uint32_t getLiveRangeStartAddressSection() const override
bool isSingleInheritance() const override
uint32_t getAge() const override
const uint64_t Version
Definition: InstrProf.h:895
bool isPointerToDataMember() const override
bool isStatic() const override
bool hasLongJump() const override
bool isVirtualBaseClass() const override
uint32_t getAddressOffset() const override
bool isNested() const override
PDB_MemberAccess
Definition: PDBTypes.h:308