From: Christoph Bumiller Date: Fri, 8 Mar 2013 18:08:23 +0000 (+0100) Subject: nvc0/ir/target: some ops can't be predicated, e.g. CALL X-Git-Tag: mesa-9.2.1~2337 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d6c95f6819547ff5aa8591471428d04a82718721;p=platform%2Fupstream%2Fmesa.git nvc0/ir/target: some ops can't be predicated, e.g. CALL --- diff --git a/src/gallium/drivers/nvc0/codegen/nv50_ir_target_nvc0.cpp b/src/gallium/drivers/nvc0/codegen/nv50_ir_target_nvc0.cpp index 6369206..a37e4ef 100644 --- a/src/gallium/drivers/nvc0/codegen/nv50_ir_target_nvc0.cpp +++ b/src/gallium/drivers/nvc0/codegen/nv50_ir_target_nvc0.cpp @@ -286,6 +286,12 @@ void TargetNVC0::initOpInfo() OP_SUREDB, OP_BAR }; + static const operation noPred[] = + { + OP_CALL, OP_PRERET, OP_QUADON, OP_QUADPOP, + OP_JOINAT, OP_PREBREAK, OP_PRECONT, OP_BRKPT + }; + for (i = 0; i < DATA_FILE_COUNT; ++i) nativeFileMap[i] = (DataFile)i; nativeFileMap[FILE_ADDRESS] = FILE_GPR; @@ -315,6 +321,8 @@ void TargetNVC0::initOpInfo() } for (i = 0; i < sizeof(noDest) / sizeof(noDest[0]); ++i) opInfo[noDest[i]].hasDest = 0; + for (i = 0; i < sizeof(noPred) / sizeof(noPred[0]); ++i) + opInfo[noPred[i]].predicate = 0; for (i = 0; i < sizeof(_initProps) / sizeof(_initProps[0]); ++i) { const struct opProperties *prop = &_initProps[i];