GTPin: gtpin::GtRegRegion Class Reference

GTPin

- Main Page
- Related Pages
- Modules
- Data Structures

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions
gtpin::GtRegRegion Class Reference
GTPin: GEN Architecture

Register operand of the GEN instruction. Defines the register region accessed by the instruction. More...

`#include <gt_ins_fields.h>`

## Public Member Functions
| GtRegRegion ()
| Default constructor.
| GtRegRegion (const GtReg &reg, const GtStride &stride=ScalarStride())
| Construct an integer register region with the direct addressing mode, specified origin and the striding scheme.
| GtRegRegion (const GtReg &reg, const GtStride &stride, GtDataType dataType)
| Construct a register region with the direct addressing mode, specified origin, striding scheme and element type.
| GtRegRegion (const GtReg &reg, const GtStride &stride, GtDataType dataType, GtAddrMode addrMode, int32_t addrImm=0)
| Construct a register region with the specified addressing mode, origin, striding scheme and element type.
bool | IsValid () const
| Return true for a valid register region.
GtRegFileType | Type () const
| Return type of the register region.
const GtReg & | Reg () const
| Return origin of the register region.
const GtStride & | Stride () const
| Return striding scheme of the register region.
GtDataType | DataType () const
| Return type of the element in the register region.
GtAddrMode | AddrMode () const
| Return addressing mode of the register region.
int32_t | AddrImm () const
| Return address immediate offset.

## Detailed Description

Register operand of the GEN instruction. Defines the register region accessed by the instruction.

## Constructor & Destructor Documentation

gtpin::GtRegRegion::GtRegRegion | ( | const GtReg & | reg,
|  | const GtStride & | stride = `ScalarStride()`
| ) |  | `[inline]`

Construct an integer register region with the direct addressing mode, specified origin and the striding scheme.

The region gets an unsigned integer type whose size is reg.ElementSize().

Parameters:

  [in] | reg | The origin element of the register region
  [in] | stride | The striding scheme of the register region

gtpin::GtRegRegion::GtRegRegion | ( | const GtReg & | reg,
|  | const GtStride & | stride,
|  | GtDataType | dataType
| ) |  | `[inline]`

Construct a register region with the direct addressing mode, specified origin, striding scheme and element type.

Parameters:

  [in] | reg | The origin element of the register region
  [in] | stride | The striding scheme of the register region
  [in] | dataType | The type of the region's data element

Postcondition:
  Reg().ElementSize() == dataType.Size()

gtpin::GtRegRegion::GtRegRegion | ( | const GtReg & | reg,
|  | const GtStride & | stride,
|  | GtDataType | dataType,
|  | GtAddrMode | addrMode,
|  | int32_t | addrImm = `0`
| ) |  | `[inline]`

Construct a register region with the specified addressing mode, origin, striding scheme and element type.

Parameters:

  [in] | reg | In the direct addressing mode, the origin element of the register region. In the indirect addressing mode, an ARF register that addresses the origin of the register region in GRF
  [in] | stride | The striding scheme of the register region
  [in] | dataType | The type of the region's data element
  [in] | addrMode | The addresing mode of the register region, either direct or indirect
  [in] | addrImm | Address immediate offset - a signed integer, added to subregister of the indirectly addressed GRF register. Ignored in the direct addressing mode.

Precondition:
  !addrMode.IsIndirect() || reg.IsAddrReg()

Postcondition:
  addrMode.IsIndirect() || (Reg().ElementSize() == dataType.Size())

All Data Structures Functions Variables Typedefs Enumerations Enumerator

      Copyright (C) 2013-2025 Intel Corporation

      SPDX-License-Identifier: MIT