|
decompiler
1.0.0
|
Describes a (register) storage location and the ways it might be split into lanes. More...
#include <transform.hh>
Classes | |
| class | LanedIterator |
| Class for iterating over possible lane sizes. More... | |
Public Types | |
| typedef LanedIterator | const_iterator |
| Iterator over possible lane sizes for this register. | |
Public Member Functions | |
| LanedRegister (void) | |
| Constructor for use with decode. | |
| LanedRegister (int4 sz, uint4 mask) | |
| Constructor. | |
| bool | decode (Decoder &decoder) |
| Parse <register> elements for lane sizes. More... | |
| int4 | getWholeSize (void) const |
| Get the size in bytes of the whole laned register. | |
| uint4 | getSizeBitMask (void) const |
| Get the bit mask of possible lane sizes. | |
| void | addLaneSize (int4 size) |
| Add a new size to the allowed list. | |
| bool | allowedLane (int4 size) const |
| Is size among the allowed lane sizes. | |
| const_iterator | begin (void) const |
| Starting iterator over possible lane sizes. | |
| const_iterator | end (void) const |
| Ending iterator over possible lane sizes. | |
Private Attributes | |
| int4 | wholeSize |
| Size of the whole register. | |
| uint4 | sizeBitMask |
| A 1-bit for every permissible lane size. | |
Friends | |
| class | LanedIterator |
Describes a (register) storage location and the ways it might be split into lanes.
| bool ghidra::LanedRegister::decode | ( | Decoder & | decoder | ) |
Parse <register> elements for lane sizes.
Parse any vector lane sizes.
| decoder | is the stream decoder |
References ghidra::Decoder::closeElement(), ghidra::VarnodeData::decodeFromAttributes(), ghidra::Decoder::getNextAttributeId(), ghidra::Decoder::openElement(), ghidra::Decoder::readString(), ghidra::Decoder::rewindAttributes(), ghidra::VarnodeData::size, ghidra::VarnodeData::space, and ghidra::LaneDescription::wholeSize.
Referenced by ghidra::Architecture::decodeLaneSizes().
1.8.13