GPUOcelot
Public Member Functions

transforms::SimplifyExternalCallsPass Class Reference

Removes parameters passed to external calls to eliminate explicit stack modifications in PTX. The register are passed directly to external calls. More...

#include <SimplifyExternalCallsPass.h>

Inheritance diagram for transforms::SimplifyExternalCallsPass:
Inheritance graph
[legend]
Collaboration diagram for transforms::SimplifyExternalCallsPass:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SimplifyExternalCallsPass (const ir::ExternalFunctionSet &, bool simplifyAll=false)
 The constructor configures the pass.
void initialize (const ir::Module &m)
 Initialize the pass using a specific module.
void runOnKernel (ir::IRKernel &k)
 Run the pass on a specific kernel in the module.
void finalize ()
 Finalize the pass.

Detailed Description

Removes parameters passed to external calls to eliminate explicit stack modifications in PTX. The register are passed directly to external calls.


Constructor & Destructor Documentation

transforms::SimplifyExternalCallsPass::SimplifyExternalCallsPass ( const ir::ExternalFunctionSet e,
bool  simplifyAll = false 
)

The constructor configures the pass.

Parameters:
simplifyAllConvert all parameter arguments to registers.

Member Function Documentation

void transforms::SimplifyExternalCallsPass::finalize ( ) [virtual]

Finalize the pass.

Implements transforms::KernelPass.

void transforms::SimplifyExternalCallsPass::initialize ( const ir::Module m) [virtual]

Initialize the pass using a specific module.

Implements transforms::KernelPass.

void transforms::SimplifyExternalCallsPass::runOnKernel ( ir::IRKernel k) [virtual]

Run the pass on a specific kernel in the module.

Implements transforms::KernelPass.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines