decompiler  1.0.0
Classes | Public Types | Public Member Functions | Private Attributes | Friends | List of all members
ghidra::LanedRegister Class Reference

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
 

Detailed Description

Describes a (register) storage location and the ways it might be split into lanes.

Member Function Documentation

◆ decode()

bool ghidra::LanedRegister::decode ( Decoder decoder)

The documentation for this class was generated from the following files: