mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-01-04 01:21:45 +00:00
expose TypePrinting as a public API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65729 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -25,6 +25,24 @@ class Type;
|
||||
class Module;
|
||||
class Value;
|
||||
class raw_ostream;
|
||||
template <typename T> class SmallVectorImpl;
|
||||
|
||||
/// TypePrinting - Type printing machinery.
|
||||
class TypePrinting {
|
||||
void *TypeNames;
|
||||
public:
|
||||
TypePrinting(const Module *M);
|
||||
~TypePrinting();
|
||||
|
||||
void clear();
|
||||
|
||||
void print(const Type *Ty, raw_ostream &OS);
|
||||
void printAtLeastOneLevel(const Type *Ty, raw_ostream &OS);
|
||||
|
||||
private:
|
||||
void CalcTypeName(const Type *Ty, SmallVectorImpl<const Type *> &TypeStack,
|
||||
raw_ostream &OS);
|
||||
};
|
||||
|
||||
// WriteTypeSymbolic - This attempts to write the specified type as a symbolic
|
||||
// type, if there is an entry in the Module's symbol table for the specified
|
||||
|
||||
Reference in New Issue
Block a user