From: Corbin S. <mos...@gm...> - 2010-03-30 17:10:57
|
On Tue, Mar 30, 2010 at 10:05 AM, Luca Barbieri <luc...@gm...> wrote: > DDX/DDY could cause miscompilation, but I think that only happens if > LLVM clones or causes some paths to net execute them. > > Someone proposed some time ago on llvmdev to add a flag to tell llvm > to never duplicate an intrinsic, not sure if that went through (iirc, > it was for a barrier instruction that relied on the instruction > pointer). > Alternatively, it should be possible to just disable any passes that > clone basic blocks if those instructions are present. > > The non-execution problem should be fixable by declaring DDX/DDY to > have global-write-like side effects (this will prevent dead code > elimination of them if they are totally unused, but hopefully shaders > are not written so badly they need that). We're talking about a HW-specific issue here, not anything that needs global changes. I'm really not sure where you're going with this. -- When the facts change, I change my mind. What do you do, sir? ~ Keynes Corbin Simpson <Mos...@gm...> |