|
LLVM
8.0.1
|
#include "llvm/Object/StackMapParser.h"
Classes | |
| class | AccessorIterator |
| class | ConstantAccessor |
| Accessor for constants. More... | |
| class | FunctionAccessor |
| Accessor for function records. More... | |
| class | LiveOutAccessor |
| Accessor for stackmap live-out fields. More... | |
| class | LocationAccessor |
| Accessor for location records. More... | |
| class | RecordAccessor |
| Accessor for stackmap records. More... | |
Public Types | |
| enum | LocationKind : uint8_t { LocationKind::Register = 1, LocationKind::Direct = 2, LocationKind::Indirect = 3, LocationKind::Constant = 4, LocationKind::ConstantIndex = 5 } |
| using | function_iterator = AccessorIterator< FunctionAccessor > |
| using | constant_iterator = AccessorIterator< ConstantAccessor > |
| using | record_iterator = AccessorIterator< RecordAccessor > |
Public Member Functions | |
| StackMapV2Parser (ArrayRef< uint8_t > StackMapSection) | |
| Construct a parser for a version-2 stackmap. More... | |
| unsigned | getVersion () const |
| Get the version number of this stackmap. (Always returns 2). More... | |
| uint32_t | getNumFunctions () const |
| Get the number of functions in the stack map. More... | |
| uint32_t | getNumConstants () const |
| Get the number of large constants in the stack map. More... | |
| uint32_t | getNumRecords () const |
| Get the number of stackmap records in the stackmap. More... | |
| FunctionAccessor | getFunction (unsigned FunctionIndex) const |
| Return an FunctionAccessor for the given function index. More... | |
| function_iterator | functions_begin () const |
| Begin iterator for functions. More... | |
| function_iterator | functions_end () const |
| End iterator for functions. More... | |
| iterator_range< function_iterator > | functions () const |
| Iterator range for functions. More... | |
| ConstantAccessor | getConstant (unsigned ConstantIndex) const |
| Return the large constant at the given index. More... | |
| constant_iterator | constants_begin () const |
| Begin iterator for constants. More... | |
| constant_iterator | constants_end () const |
| End iterator for constants. More... | |
| iterator_range< constant_iterator > | constants () const |
| Iterator range for constants. More... | |
| RecordAccessor | getRecord (unsigned RecordIndex) const |
| Return a RecordAccessor for the given record index. More... | |
| record_iterator | records_begin () const |
| Begin iterator for records. More... | |
| record_iterator | records_end () const |
| End iterator for records. More... | |
| iterator_range< record_iterator > | records () const |
| Iterator range for records. More... | |
Definition at line 24 of file StackMapParser.h.
| using llvm::StackMapV2Parser< Endianness >::constant_iterator = AccessorIterator<ConstantAccessor> |
Definition at line 314 of file StackMapParser.h.
| using llvm::StackMapV2Parser< Endianness >::function_iterator = AccessorIterator<FunctionAccessor> |
Definition at line 313 of file StackMapParser.h.
| using llvm::StackMapV2Parser< Endianness >::record_iterator = AccessorIterator<RecordAccessor> |
Definition at line 315 of file StackMapParser.h.
|
strong |
| Enumerator | |
|---|---|
| Register | |
| Direct | |
| Indirect | |
| Constant | |
| ConstantIndex | |
Definition at line 103 of file StackMapParser.h.
|
inline |
Construct a parser for a version-2 stackmap.
StackMap data will be read from the given array.
Definition at line 296 of file StackMapParser.h.
References assert(), E, llvm::StackMapV2Parser< Endianness >::getNumConstants(), llvm::StackMapV2Parser< Endianness >::getNumFunctions(), llvm::StackMapV2Parser< Endianness >::getNumRecords(), and I.
|
inline |
Iterator range for constants.
Definition at line 377 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::constants_begin(), llvm::StackMapV2Parser< Endianness >::constants_end(), and llvm::make_range().
|
inline |
Begin iterator for constants.
Definition at line 365 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getConstant().
Referenced by llvm::StackMapV2Parser< Endianness >::constants().
|
inline |
End iterator for constants.
Definition at line 370 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getNumConstants().
Referenced by llvm::StackMapV2Parser< Endianness >::constants().
|
inline |
Iterator range for functions.
Definition at line 354 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::functions_begin(), llvm::StackMapV2Parser< Endianness >::functions_end(), and llvm::make_range().
|
inline |
Begin iterator for functions.
Definition at line 342 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getFunction().
Referenced by llvm::StackMapV2Parser< Endianness >::functions().
|
inline |
End iterator for functions.
Definition at line 347 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getNumFunctions().
Referenced by llvm::StackMapV2Parser< Endianness >::functions().
|
inline |
Return the large constant at the given index.
Definition at line 359 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::constants_begin().
|
inline |
Return an FunctionAccessor for the given function index.
Definition at line 336 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::functions_begin().
|
inline |
Get the number of large constants in the stack map.
Definition at line 326 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::constants_end(), and llvm::StackMapV2Parser< Endianness >::StackMapV2Parser().
|
inline |
Get the number of functions in the stack map.
Definition at line 321 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::functions_end(), and llvm::StackMapV2Parser< Endianness >::StackMapV2Parser().
|
inline |
Get the number of stackmap records in the stackmap.
Definition at line 331 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::records_begin(), llvm::StackMapV2Parser< Endianness >::records_end(), and llvm::StackMapV2Parser< Endianness >::StackMapV2Parser().
|
inline |
Return a RecordAccessor for the given record index.
Definition at line 382 of file StackMapParser.h.
Referenced by llvm::StackMapV2Parser< Endianness >::records_begin(), and llvm::StackMapV2Parser< Endianness >::records_end().
|
inline |
Get the version number of this stackmap. (Always returns 2).
Definition at line 318 of file StackMapParser.h.
|
inline |
Iterator range for records.
Definition at line 405 of file StackMapParser.h.
References llvm::make_range(), P, llvm::support::endian::read(), llvm::StackMapV2Parser< Endianness >::records_begin(), and llvm::StackMapV2Parser< Endianness >::records_end().
|
inline |
Begin iterator for records.
Definition at line 388 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getNumRecords(), and llvm::StackMapV2Parser< Endianness >::getRecord().
Referenced by llvm::StackMapV2Parser< Endianness >::records().
|
inline |
End iterator for records.
Definition at line 395 of file StackMapParser.h.
References llvm::StackMapV2Parser< Endianness >::getNumRecords(), and llvm::StackMapV2Parser< Endianness >::getRecord().
Referenced by llvm::StackMapV2Parser< Endianness >::records().
1.8.13