diff options
Diffstat (limited to 'src/gallium/drivers/nv50/codegen/nv50_ir.cpp')
-rw-r--r-- | src/gallium/drivers/nv50/codegen/nv50_ir.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/gallium/drivers/nv50/codegen/nv50_ir.cpp b/src/gallium/drivers/nv50/codegen/nv50_ir.cpp index 19a90806c70..048759060ad 100644 --- a/src/gallium/drivers/nv50/codegen/nv50_ir.cpp +++ b/src/gallium/drivers/nv50/codegen/nv50_ir.cpp @@ -559,8 +559,11 @@ void Instruction::init() subOp = 0; saturate = 0; - join = terminator = 0; - ftz = dnz = 0; + join = 0; + exit = 0; + terminator = 0; + ftz = 0; + dnz = 0; atomic = 0; perPatch = 0; fixed = 0; @@ -982,6 +985,9 @@ Program::Program(Type type, Target *arch) calls.insert(&main->call); dbgFlags = 0; + optLevel = 0; + + targetPriv = NULL; } Program::~Program() @@ -1085,6 +1091,7 @@ nv50_ir_generate_code(struct nv50_ir_prog_info *info) if (!prog) return -1; prog->dbgFlags = info->dbgFlags; + prog->optLevel = info->optLevel; switch (info->bin.sourceRep) { #if 0 @@ -1105,6 +1112,7 @@ nv50_ir_generate_code(struct nv50_ir_prog_info *info) if (prog->dbgFlags & NV50_IR_DEBUG_VERBOSE) prog->print(); + targ->parseDriverInfo(info); prog->getTarget()->runLegalizePass(prog, nv50_ir::CG_STAGE_PRE_SSA); prog->convertToSSA(); |