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