LLVM 20.0.0git
Classes | Namespaces | Macros | Enumerations | Functions
FormatUtil.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/STLForwardCompat.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/DebugInfo/CodeView/CodeView.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/FormatAdapters.h"
#include "llvm/Support/FormatVariadic.h"
#include <string>
#include <type_traits>

Go to the source code of this file.

Classes

struct  llvm::pdb::detail::EndianAdapter< T >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::pdb
 
namespace  llvm::pdb::detail
 

Macros

#define PUSH_MASKED_FLAG(Enum, Mask, TheOpt, Value, Text)
 
#define PUSH_FLAG(Enum, TheOpt, Value, Text)    PUSH_MASKED_FLAG(Enum, Enum::TheOpt, TheOpt, Value, Text)
 
#define RETURN_CASE(Enum, X, Ret)
 

Enumerations

enum class  llvm::pdb::CharacteristicStyle { llvm::pdb::HeaderDefinition , llvm::pdb::Descriptive }
 

Functions

template<typename T >
std::string llvm::pdb::formatUnknownEnum (T Value)
 
std::string llvm::pdb::formatSegmentOffset (uint16_t Segment, uint32_t Offset)
 
std::string llvm::pdb::formatSectionCharacteristics (uint32_t IndentLevel, uint32_t C, uint32_t FlagsPerLine, StringRef Separator, CharacteristicStyle Style=CharacteristicStyle::HeaderDefinition)
 
std::string llvm::pdb::typesetItemList (ArrayRef< std::string > Opts, uint32_t IndentLevel, uint32_t GroupSize, StringRef Sep)
 
std::string llvm::pdb::typesetStringList (uint32_t IndentLevel, ArrayRef< StringRef > Strings)
 
std::string llvm::pdb::formatChunkKind (codeview::DebugSubsectionKind Kind, bool Friendly=true)
 
std::string llvm::pdb::formatSymbolKind (codeview::SymbolKind K)
 
std::string llvm::pdb::formatTypeLeafKind (codeview::TypeLeafKind K)
 
int llvm::pdb::NumDigits (uint64_t N)
 Returns the number of digits in the given integer.
 
template<typename T >
detail::EndianAdapter< Tllvm::pdb::fmtle (support::detail::packed_endian_specific_integral< T, llvm::endianness::little, support::unaligned > Value)
 

Macro Definition Documentation

◆ PUSH_FLAG

#define PUSH_FLAG (   Enum,
  TheOpt,
  Value,
  Text 
)     PUSH_MASKED_FLAG(Enum, Enum::TheOpt, TheOpt, Value, Text)

Definition at line 30 of file FormatUtil.h.

◆ PUSH_MASKED_FLAG

#define PUSH_MASKED_FLAG (   Enum,
  Mask,
  TheOpt,
  Value,
  Text 
)
Value:
if (Enum::TheOpt == (Value & Mask)) \
Opts.push_back(Text);

Definition at line 26 of file FormatUtil.h.

◆ RETURN_CASE

#define RETURN_CASE (   Enum,
  X,
  Ret 
)
Value:
case Enum::X: \
return Ret;

Definition at line 33 of file FormatUtil.h.