src0 = lp_cast_to_double(&bld->base, tmp0, tmp1);
>> >> + src1 = lp_cast_to_double(&bld->base, tmp2, tmp3);
>> >> + tmp4 = lp_build_mul(&bld->base, src0, src1);
>> >> + dst0[CHAN_X] = lp_cast_from_double_msb(&am
&&
> >> IS_DST0_CHANNEL_ENABLED(inst, CHAN_W)) {
> >> + tmp0 = emit_fetch( bld, inst, 0, CHAN_Z );
> >> + tmp1 = emit_fetch( bld, inst, 0, CHAN_W );
> >> +
> >> + tmp2 = emit_fetch( bld, inst, 1, CHAN_Z );
> >> +
;
>> + dst0[CHAN_Z] = lp_cast_from_double_msb(&bld->base, tmp4);
>> + dst0[CHAN_W] = lp_cast_from_double_lsb(&bld->base, tmp4);
>> +
>> + }
>> + break;
>> +
>> default:
>> return FALSE;
>>
ball on your previous submission.
> >
> > I still don't understand what the code does, nor how the generated code
> > will look like. Granted, your implementation is better than no
> > implementation, but I'd like to go a bit further and ge
is better than no implementation, but
> I'd like to go a bit further and get this nailed, and not have to redo this
> code.
>
> Is there a simple test case I can use to exercise and test this?
>
> Jose
>
> ________________
> From: mesa-dev-
nbossa.org]
Sent: Tuesday, September 28, 2010 20:34
To: mesa-dev@lists.freedesktop.org
Subject: [Mesa-dev] [PATCH] llvmpipe: add initial support to double opcodes
in llvmpipe.
- create helper function
- implement DMUL opcode
---
src/gallium/auxiliary/gallivm/lp_bld_tgsi_so
- create helper function
- implement DMUL opcode
---
src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 78 +++
1 files changed, 78 insertions(+), 0 deletions(-)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
ind