class CodeEmitterNVC0 : public CodeEmitter
{
public:
- CodeEmitterNVC0(const TargetNVC0 *);
+ CodeEmitterNVC0(const TargetNVC0 *, Program::Type);
virtual bool emitInstruction(Instruction *);
virtual uint32_t getMinEncodingSize(const Instruction *) const;
virtual void prepareEmission(Function *);
- inline void setProgramType(Program::Type pType) { progType = pType; }
-
private:
const TargetNVC0 *targNVC0;
calculateSchedDataNVC0(targ, func);
}
-CodeEmitterNVC0::CodeEmitterNVC0(const TargetNVC0 *target)
+CodeEmitterNVC0::CodeEmitterNVC0(const TargetNVC0 *target, Program::Type type)
: CodeEmitter(target),
targNVC0(target),
+ progType(type),
writeIssueDelays(target->hasSWSched)
{
code = NULL;
CodeEmitter *
TargetNVC0::createCodeEmitterNVC0(Program::Type type)
{
- CodeEmitterNVC0 *emit = new CodeEmitterNVC0(this);
- emit->setProgramType(type);
+ CodeEmitterNVC0 *emit = new CodeEmitterNVC0(this, type);
return emit;
}