[PATCH RFC 1/1] utils: Fix segfault in flattencfg

Jan Vesely jan.vesely at rutgers.edu
Fri Aug 8 13:27:08 PDT 2014


On Mon, 2014-08-04 at 15:34 -0700, Matt Arsenault wrote:
> On 08/04/2014 03:30 PM, Matt Arsenault wrote:
> > This needs a test. I’m guessing this is a branch on a constant? I’ve encountered problems like this from those in all of the GPU CFG passes
> Or a branch on an i1 function argument

yeah, I added a bit more debug output and see this pattern:
%or.cond68.i.i = or i1 %cmp37.i.i, %cmp40.i.i
br i1 %or.cond68.i.i, label %_Z7mad_satlll.exit.i, label %if.end43.i.i

since the loop only does branch inversion, i guess the correct action
should be:

if (!CI) {
  CurrBlock = CurrBlock->getSinglePredecessor();
  continue;
}

I'll post a new patch,
jan

-- 
Jan Vesely <jan.vesely at rutgers.edu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140808/677496ca/attachment.sig>


More information about the llvm-commits mailing list