|
GTPin
|
Factory and container of HLI function arguments and return value representations. More...
#include <igt_iarg_factory.h>
Public Member Functions | |
| virtual const IGtIarg & | MakePrime (GtHliParamTraits paramTraits, GtIargImmValue value)=0 |
| Create an argument of GtIargType::PRIME type, passed by an immediate value. | |
| virtual const IGtIarg & | MakePrime (GtHliParamTraits paramTraits, const GtReg ®)=0 |
| Create an argument of GtIargType::PRIME type, passed by a register value. | |
| virtual const IGtIarg & | MakeHostPtr (const void *hostPtr)=0 |
| Create an argument of GtIargType::HOST_PTR type. | |
| virtual const IGtIarg & | MakeDevicePtr (const GtReg &addrReg)=0 |
| Create an argument of GtIargType::DEVICE_PTR type, passed by a register value. | |
| virtual const IGtIarg & | MakeBufferOffset (uint32_t offset)=0 |
| Create an argument of GtIargType::BUFFER_OFFSET type, passed by a 32-bit immediate value. | |
| virtual const IGtIarg & | MakeBufferOffset (const GtReg &offsetReg)=0 |
| Create an argument of GtIargType::BUFFER_OFFSET type, passed by a register value. | |
| virtual const IGtIarg & | MakeTid ()=0 |
| Create an argument of GtIargType::TID type. | |
| virtual const IGtIarg & | MakeFfTid ()=0 |
| Create an argument of GtIargType::FFTID type. | |
| virtual const IGtIarg & | MakeGrfRange (uint32_t firstReg, uint32_t numRegs)=0 |
| Create an argument of GtIargType::GRF_RANGE type. | |
| virtual const IGtIarg & | MakeConstGrfRange (uint32_t firstReg, uint32_t numRegs)=0 |
| Create an argument of GtIargType::CONST_GRF_RANGE type. | |
| virtual const IGtIarg & | MakeSimdMask (bool ignoreCeMask, uint32_t execMask, const GtPredicate &predicate)=0 |
| Create an argument of GtIargType::SIMD_MASK type. | |
| virtual const IGtIarg & | MakeInsOpMask (const IGtIns &ins)=0 |
| virtual const IGtIarg & | MakeSlmPtr ()=0 |
| Create an argument of GtIargType::SLM_PTR type. | |
| virtual const IGtIret & | MakeIret (GtHliParamTraits retTraits, const GtReg ®)=0 |
| virtual const IGtIret & | MakeIret ()=0 |
Factory and container of HLI function arguments and return value representations.
Each instance of this factory is associated with a single instrumentation session. The factory methods create IGtIarg objects and store them in the internal container. All these objects are destroyed when the instrumentation session ends, so the methods for freeing individual IGtIarg instances are not provided.
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeBufferOffset | ( | uint32_t | offset | ) | [pure virtual] |
Create an argument of GtIargType::BUFFER_OFFSET type, passed by a 32-bit immediate value.
| [in] | offset | Offset in the GTPin profile buffer |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeBufferOffset | ( | const GtReg & | offsetReg | ) | [pure virtual] |
Create an argument of GtIargType::BUFFER_OFFSET type, passed by a register value.
| [in] | offsetReg | Register that holds an offset in the GTPin profile buffer |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeConstGrfRange | ( | uint32_t | firstReg, |
| uint32_t | numRegs | ||
| ) | [pure virtual] |
Create an argument of GtIargType::CONST_GRF_RANGE type.
| [in] | firstReg | Ordinal number of the first GRF register in the range |
| [in] | numRegs | Number of registers in the range |
Create an argument of GtIargType::DEVICE_PTR type, passed by a register value.
| [in] | addrReg | Register that holds an address in the device memory space |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeFfTid | ( | ) | [pure virtual] |
Create an argument of GtIargType::FFTID type.
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeGrfRange | ( | uint32_t | firstReg, |
| uint32_t | numRegs | ||
| ) | [pure virtual] |
Create an argument of GtIargType::GRF_RANGE type.
| [in] | firstReg | Ordinal number of the first GRF register in the range |
| [in] | numRegs | Number of registers in the range |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeHostPtr | ( | const void * | hostPtr | ) | [pure virtual] |
Create an argument of GtIargType::HOST_PTR type.
| [in] | hostPtr | Pointer in the host memory space |
Create an argument of GtIargType::INS_OP_MASK type
The new argument represents mask of scalar operations performed by the instruction on the vector of data elements ceMask = ins.IsWriteMaskEnabled() ? ChannelEnableReg() : 0xffffffff insOpMask = ceMask & DispatchMaskReg() & ins.ExecMask().Bits() & Mask(ins.Predicate())
| [in] | ins | Instruction, the operation mask is evaluated for |
| virtual const IGtIret& gtpin::IGtIargFactory::MakeIret | ( | ) | [pure virtual] |
| virtual const IGtIret& gtpin::IGtIargFactory::MakeIret | ( | GtHliParamTraits | retTraits, |
| const GtReg & | reg | ||
| ) | [pure virtual] |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakePrime | ( | GtHliParamTraits | paramTraits, |
| GtIargImmValue | value | ||
| ) | [pure virtual] |
Create an argument of GtIargType::PRIME type, passed by an immediate value.
| [in] | paramTraits | Parameter traits |
| [in] | value | Immediate argument value |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakePrime | ( | GtHliParamTraits | paramTraits, |
| const GtReg & | reg | ||
| ) | [pure virtual] |
Create an argument of GtIargType::PRIME type, passed by a register value.
| [in] | paramTraits | Parameter traits |
| [in] | reg | Register that holds the argument value |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeSimdMask | ( | bool | ignoreCeMask, |
| uint32_t | execMask, | ||
| const GtPredicate & | predicate | ||
| ) | [pure virtual] |
Create an argument of GtIargType::SIMD_MASK type.
The new argument evaluates the mask of effective SIMD channels at the instrumentation point ceMask = ignoreCeMask ? 0xffffffff : ChannelEnableReg() simdMask = ceMask & DispatchMaskReg() & execMask & Mask(predicate)
| [in] | ignoreCeMask | Flag that indicates whether the mask in ChannelEnableReg should be applied (false) or ignored (true) in the computation of effective SIMD channels |
| [in] | execMask | Execution mask to be used in the computation of effective SIMD channels. Normally, this mask is produced by the GtExecMask::Bits() function. |
| [in] | predicate | Predicate to be used in the computation. Invalid predicate is ignored |
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeSlmPtr | ( | ) | [pure virtual] |
Create an argument of GtIargType::SLM_PTR type.
| virtual const IGtIarg& gtpin::IGtIargFactory::MakeTid | ( | ) | [pure virtual] |
Create an argument of GtIargType::TID type.
Copyright (C) 2013-2025 Intel Corporation
SPDX-License-Identifier: MIT
1.7.4