nv50,nvc0: do not forget to apply sign mode to saved TGSI inputs

This commit is contained in:
Christoph Bumiller 2011-02-07 14:54:17 +01:00
parent c485368efe
commit 7401590ded
2 changed files with 3 additions and 11 deletions

View File

@ -1130,7 +1130,7 @@ emit_fetch(struct bld_context *bld, const struct tgsi_full_instruction *insn,
case TGSI_FILE_INPUT:
res = bld_saved_input(bld, idx, swz);
if (res && (insn->Instruction.Opcode != TGSI_OPCODE_TXP))
return res;
break;
res = new_value(bld->pc, bld->ti->input_file, type);
res->reg.id = bld->ti->input_map[idx][swz];

View File

@ -983,14 +983,6 @@ bld_new_block(struct bld_context *bld, struct nv_basic_block *b)
bld->out_kind = CFG_EDGE_FORWARD;
}
static struct nv_value *
bld_get_saved_input(struct bld_context *bld, unsigned i, unsigned c)
{
if (bld->saved_inputs[i][c])
return bld->saved_inputs[i][c];
return NULL;
}
static struct nv_value *
bld_interp(struct bld_context *bld, unsigned mode, struct nv_value *val)
{
@ -1058,9 +1050,9 @@ emit_fetch(struct bld_context *bld, const struct tgsi_full_instruction *insn,
case TGSI_FILE_INPUT:
assert(!src->Register.Dimension);
if (!ptr) {
res = bld_get_saved_input(bld, idx, swz);
res = bld->saved_inputs[idx][swz];
if (res)
return res;
break;
}
res = new_value(bld->pc, bld->ti->input_file, 4);
if (ptr)