R600/SI: Fix verifier errors from the SIAnnotateControlFlow pass
authorTom Stellard <thomas.stellard@amd.com>
Fri, 1 May 2015 03:44:08 +0000 (03:44 +0000)
committerTom Stellard <thomas.stellard@amd.com>
Fri, 1 May 2015 03:44:08 +0000 (03:44 +0000)
commit0b7feb1cb78c5e139c96a4b70976fadde18b9f3a
tree19aef7c655d77271e353cab5c41c5258d4f4727b
parenteba323ab4453b4c69c5df7cc7178c8baa3ca071e
R600/SI: Fix verifier errors from the SIAnnotateControlFlow pass

This pass was generating 'Instruction does not dominate all uses!'
errors for programs which had loops with a condition variable that
depended on the result of a phi instruction from outside of the loop.

The pass was inserting new phi nodes outside of the loop which used values
defined inside the loop.

http://bugs.freedesktop.org/show_bug.cgi?id=90056

llvm-svn: 236306
llvm/lib/Target/R600/SIAnnotateControlFlow.cpp
llvm/test/CodeGen/R600/si-annotate-cf.ll