ILGPU  0.9.0
ILGPU.Backends.PTX.PTXIntrinsic Class Reference

Represents a specific handler for user defined code-generation functionality that is compatible with the PTXBackend. More...

Inheritance diagram for ILGPU.Backends.PTX.PTXIntrinsic:
ILGPU.IR.Intrinsics.IntrinsicImplementation ILGPU.IR.Intrinsics.IIntrinsicImplementation

Public Member Functions

delegate void Handler (PTXBackend backend, PTXCodeGenerator codeGenerator, Value value)
 Represents the handler delegate type of custom code-generation handlers. More...
 
 PTXIntrinsic (MethodInfo targetMethod, IntrinsicImplementationMode mode)
 Constructs a new PTX intrinsic that can handle all architectures. More...
 
 PTXIntrinsic (Type handlerType, IntrinsicImplementationMode mode)
 Constructs a new PTX intrinsic that can handle all architectures. More...
 
 PTXIntrinsic (Type handlerType, IntrinsicImplementationMode mode, PTXArchitecture minArchitecture)
 Constructs a new PTX intrinsic that can handle all architectures newer or equal to minArchitecture . More...
 
 PTXIntrinsic (Type handlerType, string methodName, IntrinsicImplementationMode mode)
 Constructs a new PTX intrinsic. More...
 
 PTXIntrinsic (Type handlerType, string methodName, IntrinsicImplementationMode mode, PTXArchitecture minArchitecture)
 Constructs a new PTX intrinsic. More...
 
 PTXIntrinsic (Type handlerType, string methodName, IntrinsicImplementationMode mode, PTXArchitecture?minArchitecture, PTXArchitecture maxArchitecture)
 Constructs a new PTX intrinsic. More...
 
- Public Member Functions inherited from ILGPU.IR.Intrinsics.IntrinsicImplementation
bool CanHandle (Backend backend)
 Determines whether the attribute is compatible with the given backend. More...
 
IntrinsicMapping< TDelegate > ResolveMapping< TDelegate > ()
 Resolves an intrinsic implementation for the current attribute. More...
 

Properties

PTXArchitecture MinArchitecture [get]
 Returns the associated architecture (if any). More...
 
PTXArchitecture MaxArchitecture [get]
 Returns the associated architecture (if any). More...
 
- Properties inherited from ILGPU.IR.Intrinsics.IntrinsicImplementation
BackendType BackendType [get]
 Returns the associated backend type. More...
 
IntrinsicImplementationMode Mode [get]
 Returns the associated code-generator mode. More...
 
MethodInfo TargetMethod [get]
 Returns the user-defined target method. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ILGPU.IR.Intrinsics.IntrinsicImplementation
 IntrinsicImplementation (BackendType backendType, MethodInfo targetMethod, IntrinsicImplementationMode mode)
 Constructs a new implementation. More...
 
 IntrinsicImplementation (BackendType backendType, Type handlerType, string methodName, IntrinsicImplementationMode mode)
 Constructs a new implementation. More...
 

Detailed Description

Represents a specific handler for user defined code-generation functionality that is compatible with the PTXBackend.

Constructor & Destructor Documentation

ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( MethodInfo  targetMethod,
IntrinsicImplementationMode  mode 
)

Constructs a new PTX intrinsic that can handle all architectures.

Parameters
targetMethodThe associated target method.
modeThe code-generation mode.
ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( Type  handlerType,
IntrinsicImplementationMode  mode 
)

Constructs a new PTX intrinsic that can handle all architectures.

Parameters
handlerTypeThe associated target handler type.
modeThe code-generation mode.
ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( Type  handlerType,
IntrinsicImplementationMode  mode,
PTXArchitecture  minArchitecture 
)

Constructs a new PTX intrinsic that can handle all architectures newer or equal to minArchitecture .

Parameters
handlerTypeThe associated target handler type.
modeThe code-generation mode.
minArchitectureThe target/minimum architecture.
ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( Type  handlerType,
string  methodName,
IntrinsicImplementationMode  mode 
)

Constructs a new PTX intrinsic.

Parameters
handlerTypeThe associated target handler type.
methodNameThe target method name (or null).
modeThe code-generator mode.
ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( Type  handlerType,
string  methodName,
IntrinsicImplementationMode  mode,
PTXArchitecture  minArchitecture 
)

Constructs a new PTX intrinsic.

Parameters
handlerTypeThe associated target handler type.
methodNameThe target method name (or null).
modeThe code-generator mode.
minArchitectureThe target/minimum architecture.
ILGPU.Backends.PTX.PTXIntrinsic.PTXIntrinsic ( Type  handlerType,
string  methodName,
IntrinsicImplementationMode  mode,
PTXArchitecture minArchitecture,
PTXArchitecture  maxArchitecture 
)

Constructs a new PTX intrinsic.

Parameters
handlerTypeThe associated target handler type.
methodNameThe target method name (or null).
modeThe code-generator mode.
minArchitectureThe min architecture (if any).
maxArchitectureThe max architecture (exclusive).

Member Function Documentation

delegate void ILGPU.Backends.PTX.PTXIntrinsic.Handler ( PTXBackend  backend,
PTXCodeGenerator  codeGenerator,
Value  value 
)

Represents the handler delegate type of custom code-generation handlers.

Parameters
backendThe current backend.
codeGeneratorThe code generator.
valueThe value to generate code for.

Property Documentation

PTXArchitecture ILGPU.Backends.PTX.PTXIntrinsic.MaxArchitecture
get

Returns the associated architecture (if any).

This intrinsic will be used for any architecture less than this value.

PTXArchitecture ILGPU.Backends.PTX.PTXIntrinsic.MinArchitecture
get

Returns the associated architecture (if any).

This intrinsic will be used for any architecture greater than or equal this value.


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