Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

Journeyman III

Double precision compiler bug in DX11.

Not ATI's fault at all but still a show-stopper.

Has anyone from AMD (or even from outside) come across this apparent compiler bug in the current fxc?  It generates bad code by writing the low DWORD of a double to both the low and high DWORDs when serializing to a UAV.

The second post has the most compact case, and includes a full VC project.  My understanding is that this is a bug in the compiler and not in your driver, as it occurs in REF, and the emitted DX IL is of an extremely funky nature (a suspicious argument in a mov instruction due to a mistaken swizzle).

The bug occurs at seemingly random times.. I'd engineer around it if I could, but I don't know how.

On a side note, how do you get the high 32bits of an integer mul in HLSL?  The DX IL imul instruction has a highword slot, and your IL supports IMUL_HIGH.. But I can't find a DX intrinsic to do it.

Thanks dudes.


0 Replies