diff options
author | Christoph Bumiller <e0425955@student.tuwien.ac.at> | 2012-09-01 17:26:24 +0200 |
---|---|---|
committer | Christoph Bumiller <e0425955@student.tuwien.ac.at> | 2012-09-07 19:03:40 +0200 |
commit | 3433471e8b46dd9dd042a00f88ef9ad011a94aac (patch) | |
tree | c0ec40fa2224d8aeb0103516889c77216b4c8a51 /src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp | |
parent | 8a497e5955053293959614fcde76ab4908929215 (diff) |
nvc0/ir: add initial code to support GK110 ISA encoding
Diffstat (limited to 'src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp')
-rw-r--r-- | src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp b/src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp index 57d5d723c6a..cd04f4cfb97 100644 --- a/src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp +++ b/src/gallium/drivers/nvc0/codegen/nv50_ir_emit_nvc0.cpp @@ -2300,2 +2300,9 @@ SchedDataCalculator::recordRd(const Value *v, const int ready) +bool +calculateSchedDataNVC0(const Target *targ, Function *func) +{ + SchedDataCalculator sched(targ); + return sched.run(func, true, true); +} + void @@ -2307,6 +2314,4 @@ CodeEmitterNVC0::prepareEmission(Function *func) - if (targ->hasSWSched) { - SchedDataCalculator sched(targ); - sched.run(func, true, true); - } + if (targ->hasSWSched) + calculateSchedDataNVC0(targ, func); } @@ -2323,3 +2328,3 @@ CodeEmitterNVC0::CodeEmitterNVC0(const TargetNVC0 *target) CodeEmitter * -TargetNVC0::getCodeEmitter(Program::Type type) +TargetNVC0::createCodeEmitterNVC0(Program::Type type) { @@ -2330,2 +2335,10 @@ TargetNVC0::getCodeEmitter(Program::Type type) +CodeEmitter * +TargetNVC0::getCodeEmitter(Program::Type type) +{ + if (chipset >= NVISA_GK110_CHIPSET) + return createCodeEmitterGK110(type); + return createCodeEmitterNVC0(type); +} + } // namespace nv50_ir |