blob: a4b029596314510307a093ebc36cd67ab7f798cd [file] [log] [blame]
Eugene Zelenko4fcfc192017-06-30 23:06:03 +00001//===- NativeRawSymbol.cpp - Native implementation of IPDBRawSymbol -------===//
Adrian McCarthy0beb3322017-02-09 21:51:19 +00002//
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
Aaron Smith25409dd2018-03-07 00:33:09 +000010#include "llvm/DebugInfo/PDB/IPDBLineNumber.h"
Adrian McCarthy0beb3322017-02-09 21:51:19 +000011#include "llvm/DebugInfo/PDB/Native/NativeRawSymbol.h"
Zachary Turner16901642017-04-24 17:47:24 +000012#include "llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h"
Adrian McCarthy0beb3322017-02-09 21:51:19 +000013
14using namespace llvm;
15using namespace llvm::pdb;
16
Adrian McCarthy8d090fc2017-07-12 19:38:11 +000017NativeRawSymbol::NativeRawSymbol(NativeSession &PDBSession, SymIndexId SymbolId)
Adrian McCarthy31bcb6f2017-06-22 18:43:18 +000018 : Session(PDBSession), SymbolId(SymbolId) {}
Adrian McCarthy0beb3322017-02-09 21:51:19 +000019
20void NativeRawSymbol::dump(raw_ostream &OS, int Indent) const {}
21
22std::unique_ptr<IPDBEnumSymbols>
23NativeRawSymbol::findChildren(PDB_SymType Type) const {
24 return nullptr;
25}
26
27std::unique_ptr<IPDBEnumSymbols>
28NativeRawSymbol::findChildren(PDB_SymType Type, StringRef Name,
29 PDB_NameSearchFlags Flags) const {
30 return nullptr;
31}
32
33std::unique_ptr<IPDBEnumSymbols>
Aaron Smithfbe65402018-02-22 19:47:43 +000034NativeRawSymbol::findChildrenByAddr(PDB_SymType Type, StringRef Name,
35 PDB_NameSearchFlags Flags, uint32_t Section, uint32_t Offset) const {
36 return nullptr;
37}
38
39std::unique_ptr<IPDBEnumSymbols>
40NativeRawSymbol::findChildrenByVA(PDB_SymType Type, StringRef Name,
41 PDB_NameSearchFlags Flags, uint64_t VA) const {
42 return nullptr;
43}
44
45std::unique_ptr<IPDBEnumSymbols>
Adrian McCarthy0beb3322017-02-09 21:51:19 +000046NativeRawSymbol::findChildrenByRVA(PDB_SymType Type, StringRef Name,
47 PDB_NameSearchFlags Flags, uint32_t RVA) const {
48 return nullptr;
49}
50
51std::unique_ptr<IPDBEnumSymbols>
Aaron Smithfbe65402018-02-22 19:47:43 +000052NativeRawSymbol::findInlineFramesByAddr(uint32_t Section,
53 uint32_t Offset) const {
54 return nullptr;
55}
56
57std::unique_ptr<IPDBEnumSymbols>
Adrian McCarthy0beb3322017-02-09 21:51:19 +000058NativeRawSymbol::findInlineFramesByRVA(uint32_t RVA) const {
59 return nullptr;
60}
61
Aaron Smithfbe65402018-02-22 19:47:43 +000062std::unique_ptr<IPDBEnumSymbols>
63NativeRawSymbol::findInlineFramesByVA(uint64_t VA) const {
64 return nullptr;
65}
66
67std::unique_ptr<IPDBEnumLineNumbers>
68NativeRawSymbol::findInlineeLines() const {
69 return nullptr;
70}
71
72std::unique_ptr<IPDBEnumLineNumbers>
73NativeRawSymbol::findInlineeLinesByAddr(uint32_t Section, uint32_t Offset,
74 uint32_t Length) const {
75 return nullptr;
76}
77
78std::unique_ptr<IPDBEnumLineNumbers>
79NativeRawSymbol::findInlineeLinesByRVA(uint32_t RVA, uint32_t Length) const {
80 return nullptr;
81}
82
83std::unique_ptr<IPDBEnumLineNumbers>
84NativeRawSymbol::findInlineeLinesByVA(uint64_t VA, uint32_t Length) const {
85 return nullptr;
86}
87
Eugene Zelenko4fcfc192017-06-30 23:06:03 +000088void NativeRawSymbol::getDataBytes(SmallVector<uint8_t, 32> &bytes) const {
Adrian McCarthy0beb3322017-02-09 21:51:19 +000089 bytes.clear();
90}
91
92PDB_MemberAccess NativeRawSymbol::getAccess() const {
93 return PDB_MemberAccess::Private;
94}
95
96uint32_t NativeRawSymbol::getAddressOffset() const {
97 return 0;
98}
99
100uint32_t NativeRawSymbol::getAddressSection() const {
101 return 0;
102}
103
104uint32_t NativeRawSymbol::getAge() const {
105 return 0;
106}
107
108uint32_t NativeRawSymbol::getArrayIndexTypeId() const {
109 return 0;
110}
111
112void NativeRawSymbol::getBackEndVersion(VersionInfo &Version) const {
113 Version.Major = 0;
114 Version.Minor = 0;
115 Version.Build = 0;
116 Version.QFE = 0;
117}
118
119uint32_t NativeRawSymbol::getBaseDataOffset() const {
120 return 0;
121}
122
123uint32_t NativeRawSymbol::getBaseDataSlot() const {
124 return 0;
125}
126
127uint32_t NativeRawSymbol::getBaseSymbolId() const {
128 return 0;
129}
130
131PDB_BuiltinType NativeRawSymbol::getBuiltinType() const {
132 return PDB_BuiltinType::None;
133}
134
135uint32_t NativeRawSymbol::getBitPosition() const {
136 return 0;
137}
138
139PDB_CallingConv NativeRawSymbol::getCallingConvention() const {
140 return PDB_CallingConv::FarStdCall;
141}
142
143uint32_t NativeRawSymbol::getClassParentId() const {
144 return 0;
145}
146
147std::string NativeRawSymbol::getCompilerName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000148 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000149}
150
151uint32_t NativeRawSymbol::getCount() const {
152 return 0;
153}
154
155uint32_t NativeRawSymbol::getCountLiveRanges() const {
156 return 0;
157}
158
159void NativeRawSymbol::getFrontEndVersion(VersionInfo &Version) const {
160 Version.Major = 0;
161 Version.Minor = 0;
162 Version.Build = 0;
163 Version.QFE = 0;
164}
165
166PDB_Lang NativeRawSymbol::getLanguage() const {
167 return PDB_Lang::Cobol;
168}
169
170uint32_t NativeRawSymbol::getLexicalParentId() const {
171 return 0;
172}
173
174std::string NativeRawSymbol::getLibraryName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000175 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000176}
177
178uint32_t NativeRawSymbol::getLiveRangeStartAddressOffset() const {
179 return 0;
180}
181
182uint32_t NativeRawSymbol::getLiveRangeStartAddressSection() const {
183 return 0;
184}
185
186uint32_t NativeRawSymbol::getLiveRangeStartRelativeVirtualAddress() const {
187 return 0;
188}
189
190codeview::RegisterId NativeRawSymbol::getLocalBasePointerRegisterId() const {
Jonas Devlieghere43dce3e2018-05-29 14:35:34 +0000191 return codeview::RegisterId::CVRegEAX;
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000192}
193
194uint32_t NativeRawSymbol::getLowerBoundId() const {
195 return 0;
196}
197
198uint32_t NativeRawSymbol::getMemorySpaceKind() const {
199 return 0;
200}
201
202std::string NativeRawSymbol::getName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000203 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000204}
205
206uint32_t NativeRawSymbol::getNumberOfAcceleratorPointerTags() const {
207 return 0;
208}
209
210uint32_t NativeRawSymbol::getNumberOfColumns() const {
211 return 0;
212}
213
214uint32_t NativeRawSymbol::getNumberOfModifiers() const {
215 return 0;
216}
217
218uint32_t NativeRawSymbol::getNumberOfRegisterIndices() const {
219 return 0;
220}
221
222uint32_t NativeRawSymbol::getNumberOfRows() const {
223 return 0;
224}
225
226std::string NativeRawSymbol::getObjectFileName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000227 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000228}
229
230uint32_t NativeRawSymbol::getOemId() const {
231 return 0;
232}
233
234uint32_t NativeRawSymbol::getOemSymbolId() const {
235 return 0;
236}
237
238uint32_t NativeRawSymbol::getOffsetInUdt() const {
239 return 0;
240}
241
242PDB_Cpu NativeRawSymbol::getPlatform() const {
243 return PDB_Cpu::Intel8080;
244}
245
246uint32_t NativeRawSymbol::getRank() const {
247 return 0;
248}
249
250codeview::RegisterId NativeRawSymbol::getRegisterId() const {
Jonas Devlieghere43dce3e2018-05-29 14:35:34 +0000251 return codeview::RegisterId::CVRegEAX;
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000252}
253
254uint32_t NativeRawSymbol::getRegisterType() const {
255 return 0;
256}
257
258uint32_t NativeRawSymbol::getRelativeVirtualAddress() const {
259 return 0;
260}
261
262uint32_t NativeRawSymbol::getSamplerSlot() const {
263 return 0;
264}
265
266uint32_t NativeRawSymbol::getSignature() const {
267 return 0;
268}
269
270uint32_t NativeRawSymbol::getSizeInUdt() const {
271 return 0;
272}
273
274uint32_t NativeRawSymbol::getSlot() const {
275 return 0;
276}
277
278std::string NativeRawSymbol::getSourceFileName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000279 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000280}
281
Aaron Smith25409dd2018-03-07 00:33:09 +0000282std::unique_ptr<IPDBLineNumber>
283NativeRawSymbol::getSrcLineOnTypeDefn() const {
284 return nullptr;
285}
286
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000287uint32_t NativeRawSymbol::getStride() const {
288 return 0;
289}
290
291uint32_t NativeRawSymbol::getSubTypeId() const {
292 return 0;
293}
294
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000295std::string NativeRawSymbol::getSymbolsFileName() const { return {}; }
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000296
Adrian McCarthy31bcb6f2017-06-22 18:43:18 +0000297uint32_t NativeRawSymbol::getSymIndexId() const { return SymbolId; }
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000298
299uint32_t NativeRawSymbol::getTargetOffset() const {
300 return 0;
301}
302
303uint32_t NativeRawSymbol::getTargetRelativeVirtualAddress() const {
304 return 0;
305}
306
307uint64_t NativeRawSymbol::getTargetVirtualAddress() const {
308 return 0;
309}
310
311uint32_t NativeRawSymbol::getTargetSection() const {
312 return 0;
313}
314
315uint32_t NativeRawSymbol::getTextureSlot() const {
316 return 0;
317}
318
319uint32_t NativeRawSymbol::getTimeStamp() const {
320 return 0;
321}
322
323uint32_t NativeRawSymbol::getToken() const {
324 return 0;
325}
326
327uint32_t NativeRawSymbol::getTypeId() const {
328 return 0;
329}
330
331uint32_t NativeRawSymbol::getUavSlot() const {
332 return 0;
333}
334
335std::string NativeRawSymbol::getUndecoratedName() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000336 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000337}
338
Aaron Smith89bca9e2017-11-16 14:33:09 +0000339std::string NativeRawSymbol::getUndecoratedNameEx(
340 PDB_UndnameFlags Flags) const {
341 return {};
342}
343
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000344uint32_t NativeRawSymbol::getUnmodifiedTypeId() const {
345 return 0;
346}
347
348uint32_t NativeRawSymbol::getUpperBoundId() const {
349 return 0;
350}
351
352Variant NativeRawSymbol::getValue() const {
353 return Variant();
354}
355
356uint32_t NativeRawSymbol::getVirtualBaseDispIndex() const {
357 return 0;
358}
359
360uint32_t NativeRawSymbol::getVirtualBaseOffset() const {
361 return 0;
362}
363
364uint32_t NativeRawSymbol::getVirtualTableShapeId() const {
365 return 0;
366}
367
Zachary Turner16901642017-04-24 17:47:24 +0000368std::unique_ptr<PDBSymbolTypeBuiltin>
Zachary Turnerc883a8c2017-04-12 23:18:21 +0000369NativeRawSymbol::getVirtualBaseTableType() const {
370 return nullptr;
371}
372
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000373PDB_DataKind NativeRawSymbol::getDataKind() const {
374 return PDB_DataKind::Unknown;
375}
376
377PDB_SymType NativeRawSymbol::getSymTag() const {
378 return PDB_SymType::None;
379}
380
Reid Kleckner67653ee2017-07-17 23:59:44 +0000381codeview::GUID NativeRawSymbol::getGuid() const { return codeview::GUID{{0}}; }
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000382
383int32_t NativeRawSymbol::getOffset() const {
384 return 0;
385}
386
387int32_t NativeRawSymbol::getThisAdjust() const {
388 return 0;
389}
390
391int32_t NativeRawSymbol::getVirtualBasePointerOffset() const {
392 return 0;
393}
394
395PDB_LocType NativeRawSymbol::getLocationType() const {
396 return PDB_LocType::Null;
397}
398
399PDB_Machine NativeRawSymbol::getMachineType() const {
400 return PDB_Machine::Invalid;
401}
402
403codeview::ThunkOrdinal NativeRawSymbol::getThunkOrdinal() const {
404 return codeview::ThunkOrdinal::Standard;
405}
406
407uint64_t NativeRawSymbol::getLength() const {
408 return 0;
409}
410
411uint64_t NativeRawSymbol::getLiveRangeLength() const {
412 return 0;
413}
414
415uint64_t NativeRawSymbol::getVirtualAddress() const {
416 return 0;
417}
418
419PDB_UdtType NativeRawSymbol::getUdtKind() const {
420 return PDB_UdtType::Struct;
421}
422
423bool NativeRawSymbol::hasConstructor() const {
424 return false;
425}
426
427bool NativeRawSymbol::hasCustomCallingConvention() const {
428 return false;
429}
430
431bool NativeRawSymbol::hasFarReturn() const {
432 return false;
433}
434
435bool NativeRawSymbol::isCode() const {
436 return false;
437}
438
439bool NativeRawSymbol::isCompilerGenerated() const {
440 return false;
441}
442
443bool NativeRawSymbol::isConstType() const {
444 return false;
445}
446
447bool NativeRawSymbol::isEditAndContinueEnabled() const {
448 return false;
449}
450
451bool NativeRawSymbol::isFunction() const {
452 return false;
453}
454
455bool NativeRawSymbol::getAddressTaken() const {
456 return false;
457}
458
459bool NativeRawSymbol::getNoStackOrdering() const {
460 return false;
461}
462
463bool NativeRawSymbol::hasAlloca() const {
464 return false;
465}
466
467bool NativeRawSymbol::hasAssignmentOperator() const {
468 return false;
469}
470
471bool NativeRawSymbol::hasCTypes() const {
472 return false;
473}
474
475bool NativeRawSymbol::hasCastOperator() const {
476 return false;
477}
478
479bool NativeRawSymbol::hasDebugInfo() const {
480 return false;
481}
482
483bool NativeRawSymbol::hasEH() const {
484 return false;
485}
486
487bool NativeRawSymbol::hasEHa() const {
488 return false;
489}
490
491bool NativeRawSymbol::hasInlAsm() const {
492 return false;
493}
494
495bool NativeRawSymbol::hasInlineAttribute() const {
496 return false;
497}
498
499bool NativeRawSymbol::hasInterruptReturn() const {
500 return false;
501}
502
503bool NativeRawSymbol::hasFramePointer() const {
504 return false;
505}
506
507bool NativeRawSymbol::hasLongJump() const {
508 return false;
509}
510
511bool NativeRawSymbol::hasManagedCode() const {
512 return false;
513}
514
515bool NativeRawSymbol::hasNestedTypes() const {
516 return false;
517}
518
519bool NativeRawSymbol::hasNoInlineAttribute() const {
520 return false;
521}
522
523bool NativeRawSymbol::hasNoReturnAttribute() const {
524 return false;
525}
526
527bool NativeRawSymbol::hasOptimizedCodeDebugInfo() const {
528 return false;
529}
530
531bool NativeRawSymbol::hasOverloadedOperator() const {
532 return false;
533}
534
535bool NativeRawSymbol::hasSEH() const {
536 return false;
537}
538
539bool NativeRawSymbol::hasSecurityChecks() const {
540 return false;
541}
542
543bool NativeRawSymbol::hasSetJump() const {
544 return false;
545}
546
547bool NativeRawSymbol::hasStrictGSCheck() const {
548 return false;
549}
550
551bool NativeRawSymbol::isAcceleratorGroupSharedLocal() const {
552 return false;
553}
554
555bool NativeRawSymbol::isAcceleratorPointerTagLiveRange() const {
556 return false;
557}
558
559bool NativeRawSymbol::isAcceleratorStubFunction() const {
560 return false;
561}
562
563bool NativeRawSymbol::isAggregated() const {
564 return false;
565}
566
567bool NativeRawSymbol::isIntroVirtualFunction() const {
568 return false;
569}
570
571bool NativeRawSymbol::isCVTCIL() const {
572 return false;
573}
574
575bool NativeRawSymbol::isConstructorVirtualBase() const {
576 return false;
577}
578
579bool NativeRawSymbol::isCxxReturnUdt() const {
580 return false;
581}
582
583bool NativeRawSymbol::isDataAligned() const {
584 return false;
585}
586
587bool NativeRawSymbol::isHLSLData() const {
588 return false;
589}
590
591bool NativeRawSymbol::isHotpatchable() const {
592 return false;
593}
594
595bool NativeRawSymbol::isIndirectVirtualBaseClass() const {
596 return false;
597}
598
599bool NativeRawSymbol::isInterfaceUdt() const {
600 return false;
601}
602
603bool NativeRawSymbol::isIntrinsic() const {
604 return false;
605}
606
607bool NativeRawSymbol::isLTCG() const {
608 return false;
609}
610
611bool NativeRawSymbol::isLocationControlFlowDependent() const {
612 return false;
613}
614
615bool NativeRawSymbol::isMSILNetmodule() const {
616 return false;
617}
618
619bool NativeRawSymbol::isMatrixRowMajor() const {
620 return false;
621}
622
623bool NativeRawSymbol::isManagedCode() const {
624 return false;
625}
626
627bool NativeRawSymbol::isMSILCode() const {
628 return false;
629}
630
631bool NativeRawSymbol::isMultipleInheritance() const {
632 return false;
633}
634
635bool NativeRawSymbol::isNaked() const {
636 return false;
637}
638
639bool NativeRawSymbol::isNested() const {
640 return false;
641}
642
643bool NativeRawSymbol::isOptimizedAway() const {
644 return false;
645}
646
647bool NativeRawSymbol::isPacked() const {
648 return false;
649}
650
651bool NativeRawSymbol::isPointerBasedOnSymbolValue() const {
652 return false;
653}
654
655bool NativeRawSymbol::isPointerToDataMember() const {
656 return false;
657}
658
659bool NativeRawSymbol::isPointerToMemberFunction() const {
660 return false;
661}
662
663bool NativeRawSymbol::isPureVirtual() const {
664 return false;
665}
666
667bool NativeRawSymbol::isRValueReference() const {
668 return false;
669}
670
671bool NativeRawSymbol::isRefUdt() const {
672 return false;
673}
674
675bool NativeRawSymbol::isReference() const {
676 return false;
677}
678
679bool NativeRawSymbol::isRestrictedType() const {
680 return false;
681}
682
683bool NativeRawSymbol::isReturnValue() const {
684 return false;
685}
686
687bool NativeRawSymbol::isSafeBuffers() const {
688 return false;
689}
690
691bool NativeRawSymbol::isScoped() const {
692 return false;
693}
694
695bool NativeRawSymbol::isSdl() const {
696 return false;
697}
698
699bool NativeRawSymbol::isSingleInheritance() const {
700 return false;
701}
702
703bool NativeRawSymbol::isSplitted() const {
704 return false;
705}
706
707bool NativeRawSymbol::isStatic() const {
708 return false;
709}
710
711bool NativeRawSymbol::hasPrivateSymbols() const {
712 return false;
713}
714
715bool NativeRawSymbol::isUnalignedType() const {
716 return false;
717}
718
719bool NativeRawSymbol::isUnreached() const {
720 return false;
721}
722
723bool NativeRawSymbol::isValueUdt() const {
724 return false;
725}
726
727bool NativeRawSymbol::isVirtual() const {
728 return false;
729}
730
731bool NativeRawSymbol::isVirtualBaseClass() const {
732 return false;
733}
734
735bool NativeRawSymbol::isVirtualInheritance() const {
736 return false;
737}
738
739bool NativeRawSymbol::isVolatileType() const {
740 return false;
741}
742
743bool NativeRawSymbol::wasInlined() const {
744 return false;
745}
746
747std::string NativeRawSymbol::getUnused() const {
Eugene Zelenko4fcfc192017-06-30 23:06:03 +0000748 return {};
Adrian McCarthy0beb3322017-02-09 21:51:19 +0000749}