On 11:21 AM - Apr 18 2016, Hans de Goede wrote: > Hi, > > On 17-04-16 22:27, Pierre Moreau wrote: > >On 04:17 PM - Apr 17 2016, Ilia Mirkin wrote: > >>On Sun, Apr 17, 2016 at 4:07 PM, Pierre Moreau <pierre.mor...@free.fr> > >>wrote: > >>>Ping :-) > >>> > >>>On 10:56 PM - Mar 19 2016, Pierre Moreau wrote: > >>>>Generating a `cvt u32 $r0 u64 $r1d` or a `cvt u64 $r0d u32 $r2` makes the > >>>>GPU > >>>>unhappy. Instead, manually handle the conversion between 64-bit and 32-bit > >>>>values, and use `cvt` to convert between the original target (resp. > >>>>source) > >>>>and 32-bit value. This happens to be the behaviour of NVIDIA's driver. > >>>> > >>>>Signed-off-by: Pierre Moreau <pierre.mor...@free.fr> > >>>>--- > >>>> .../nouveau/codegen/nv50_ir_lowering_nvc0.cpp | 59 > >>>> ++++++++++++++++++++++ > >>>> .../nouveau/codegen/nv50_ir_lowering_nvc0.h | 1 + > >>>> 2 files changed, 60 insertions(+) > >>>> > >>>>diff --git > >>>>a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp > >>>>b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp > >>>>index 2719f2c..c419a68 100644 > >>>>--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp > >>>>+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp > >>>>@@ -1859,6 +1859,63 @@ NVC0LoweringPass::handleOUT(Instruction *i) > >>>> return true; > >>>> } > >>>> > >>>>+bool > >>>>+NVC0LoweringPass::handleCVT(Instruction *i) > >>>>+{ > >>>>+ if (isFloatType(i->dType) || isFloatType(i->sType) || > >>>>+ isSignedIntType(i->dType) xor isSignedIntType(i->sType)) > >> > >>I know pre-C89 features are cool, but let's avoid using them. I know > >>characters like ^ were uncommon on the 1960's and 1970's teletypes, > >>but I think we're past those days now. > > > >Yeah… Will fix that. > > So "xor" or "^" is bitwise not logical, since isSignedIntType() returns > a bool, which when cast to an int is guaranteed to be 0 or 1, this > should work fine. > > And being a bitwise op its presedence means it will get evaluated > before the "||" operators in your condition which I believe is what > we want here, but can we please have a pair of parenthesis around the > "^" and its operands to make this more clear ?
Sure, I’ll add a pair of parenthesis around it. Regards, Pierre > > Regards, > > Hans > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev