0 Replies Latest reply on Aug 5, 2011 4:20 PM by 1neviv0

    LLVM Bug in SDK compiler

    1neviv0
      "instruction does not dominate all uses; module broken"

      Hi,

      The following code:

      http://pastebin.com/gYnLhhLw

      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.

      Thanks,

      Kevin Daley
      Programmer and TD
      Neuzeit Studios, GP