Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. //==- IPDBSectionContrib.h - Interfaces for PDB SectionContribs --*- C++ -*-==//
  2. //
  3. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  4. // See https://llvm.org/LICENSE.txt for license information.
  5. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  6. //
  7. //===----------------------------------------------------------------------===//
  8.  
  9. #ifndef LLVM_DEBUGINFO_PDB_IPDBSECTIONCONTRIB_H
  10. #define LLVM_DEBUGINFO_PDB_IPDBSECTIONCONTRIB_H
  11.  
  12. #include "PDBTypes.h"
  13.  
  14. namespace llvm {
  15. namespace pdb {
  16.  
  17. /// IPDBSectionContrib defines an interface used to represent section
  18. /// contributions whose information are stored in the PDB.
  19. class IPDBSectionContrib {
  20. public:
  21.   virtual ~IPDBSectionContrib();
  22.  
  23.   virtual std::unique_ptr<PDBSymbolCompiland> getCompiland() const = 0;
  24.   virtual uint32_t getAddressSection() const = 0;
  25.   virtual uint32_t getAddressOffset() const = 0;
  26.   virtual uint32_t getRelativeVirtualAddress() const = 0;
  27.   virtual uint64_t getVirtualAddress() const  = 0;
  28.   virtual uint32_t getLength() const = 0;
  29.   virtual bool isNotPaged() const = 0;
  30.   virtual bool hasCode() const = 0;
  31.   virtual bool hasCode16Bit() const = 0;
  32.   virtual bool hasInitializedData() const = 0;
  33.   virtual bool hasUninitializedData() const = 0;
  34.   virtual bool isRemoved() const = 0;
  35.   virtual bool hasComdat() const = 0;
  36.   virtual bool isDiscardable() const = 0;
  37.   virtual bool isNotCached() const = 0;
  38.   virtual bool isShared() const = 0;
  39.   virtual bool isExecutable() const = 0;
  40.   virtual bool isReadable() const = 0;
  41.   virtual bool isWritable() const = 0;
  42.   virtual uint32_t getDataCrc32() const = 0;
  43.   virtual uint32_t getRelocationsCrc32() const = 0;
  44.   virtual uint32_t getCompilandId() const = 0;
  45. };
  46. }
  47. }
  48.  
  49. #endif // LLVM_DEBUGINFO_PDB_IPDBSECTIONCONTRIB_H
  50.