From 7fe93f831d74ce46a161c0b0c89f00b9c18caa2b Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 21 Apr 2010 18:22:15 -0600 Subject: [PATCH] gallivm: added some assertions in loop-gen code We're hitting these assertions with nested loops... --- src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c index f70e96dfde8..44f8aec1bf0 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c @@ -172,6 +172,7 @@ static void lp_exec_mask_update(struct lp_exec_mask *mask) /*for loops we need to update the entire mask at * runtime */ LLVMValueRef tmp; + assert(mask->break_mask); tmp = LLVMBuildAnd(mask->bld->builder, mask->cont_mask, mask->break_mask, @@ -279,8 +280,12 @@ static void lp_exec_endloop(struct lp_exec_mask *mask) LLVMBasicBlockRef endloop; LLVMTypeRef reg_type = LLVMIntType(mask->bld->type.width* mask->bld->type.length); + LLVMValueRef i1cond; + + assert(mask->break_mask); + /* i1cond = (mask == 0) */ - LLVMValueRef i1cond = LLVMBuildICmp( + i1cond = LLVMBuildICmp( mask->bld->builder, LLVMIntNE, LLVMBuildBitCast(mask->bld->builder, mask->break_mask, reg_type, ""), -- 2.11.0