GPUOcelot
Public Member Functions | Public Attributes

executive::ReconvergenceTFSortedStack Class Reference

#include <ReconvergenceMechanism.h>

Inheritance diagram for executive::ReconvergenceTFSortedStack:
Inheritance graph
[legend]
Collaboration diagram for executive::ReconvergenceTFSortedStack:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ReconvergenceTFSortedStack (CooperativeThreadArray *cta)
 ~ReconvergenceTFSortedStack ()
void initialize ()
 initializes the reconvergence mechanism
void evalPredicate (executive::CTAContext &context)
 updates the predicate mask of the active context
bool eval_Bra (executive::CTAContext &context, const ir::PTXInstruction &instr, const boost::dynamic_bitset<> &branch, const boost::dynamic_bitset<> &fallthrough)
 implements branch instruction and updates CTA state
void eval_Bar (executive::CTAContext &context, const ir::PTXInstruction &instr)
 implements a barrier instruction
void eval_Reconverge (executive::CTAContext &context, const ir::PTXInstruction &instr)
 implements reconverge instruction
void eval_Exit (executive::CTAContext &context, const ir::PTXInstruction &instr)
 implements exit instruction
bool nextInstruction (executive::CTAContext &context, const ir::PTXInstruction::Opcode &opcode)
 updates the active context to the next instruction
executive::CTAContextgetContext ()
 gets the active context
size_t stackSize () const
 gets the stack size
void push (executive::CTAContext &)
 push a context
void pop ()
 pop a context

Public Attributes

StackVector stack
unsigned int reconvergeEvents

Constructor & Destructor Documentation

executive::ReconvergenceTFSortedStack::ReconvergenceTFSortedStack ( CooperativeThreadArray cta)
executive::ReconvergenceTFSortedStack::~ReconvergenceTFSortedStack ( )

Member Function Documentation

void executive::ReconvergenceTFSortedStack::eval_Bar ( executive::CTAContext context,
const ir::PTXInstruction instr 
) [virtual]

implements a barrier instruction

Implements executive::ReconvergenceMechanism.

bool executive::ReconvergenceTFSortedStack::eval_Bra ( executive::CTAContext context,
const ir::PTXInstruction instr,
const boost::dynamic_bitset<> &  branch,
const boost::dynamic_bitset<> &  fallthrough 
) [virtual]

implements branch instruction and updates CTA state

Returns:
true on divergent branch

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::eval_Exit ( executive::CTAContext context,
const ir::PTXInstruction instr 
) [virtual]

implements exit instruction

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::eval_Reconverge ( executive::CTAContext context,
const ir::PTXInstruction instr 
) [virtual]

implements reconverge instruction

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::evalPredicate ( executive::CTAContext context) [virtual]

updates the predicate mask of the active context

Implements executive::ReconvergenceMechanism.

executive::CTAContext & executive::ReconvergenceTFSortedStack::getContext ( ) [virtual]

gets the active context

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::initialize ( ) [virtual]

initializes the reconvergence mechanism

Implements executive::ReconvergenceMechanism.

bool executive::ReconvergenceTFSortedStack::nextInstruction ( executive::CTAContext context,
const ir::PTXInstruction::Opcode opcode 
) [virtual]

updates the active context to the next instruction

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::pop ( ) [virtual]

pop a context

Implements executive::ReconvergenceMechanism.

void executive::ReconvergenceTFSortedStack::push ( executive::CTAContext ) [virtual]

push a context

Implements executive::ReconvergenceMechanism.

size_t executive::ReconvergenceTFSortedStack::stackSize ( ) const [virtual]

gets the stack size

Implements executive::ReconvergenceMechanism.


Member Data Documentation


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