LLVM Bug in SDK compiler

Discussion created by 1neviv0 on Aug 5, 2011
"instruction does not dominate all uses; module broken"


The following code:


evaluates just fine but generates a series of optimization errors in llvm.  A bit of searching in the llvm mailing list confirms that this is a bug in the APP SDK.  I am pretty sure I am using the latest SDK.

Both operands to a binary operator are not of the same type!

   %tmp708 = mul i32 255, i16 %lnot.ext

Instruction does not dominate all uses!

  %tmp708 = mul i32 255, i16 %lnot.ext

  %tmp709 = add i32 %tmp704, %tmp708

Instruction does not dominate all uses!

  %tmp709 = add i32 %tmp704, %tmp708

  store i32 %tmp709, i32* %znew, align 4

Broken module found, compilation aborted! "

IIRC, the only build warnings I get are a couple throwaway floats that are defined but not referenced and a whole lot of single precision float truncations.  Given that two of the above llvm errors are only generated when a variable is referenced before being defined, and all three are almost always generated by the module, I also need to know where I can file a bug report with the APP SDK.


Kevin Daley
Programmer and TD
Neuzeit Studios, GP