Can you elaborate? I don't see anything in that code to check for blocks
that have their addresses taken. It seems like something like the attached
patch may be in order, but I don't have a testcase to expose the issue.
Maybe your changes could help identify a testcase? Or did you find something
that prevents this from being an issue?
On Feb 26, 2010, at 11:17 AM, Marc de Kruijf wrote:
> My apologies. This problem was indeed with my changes to the backend.
Next time I will more carefully examine the source of the problem. :)
>
> On Fri, Feb 26, 2010 at 12:40 PM, Marc de Kruijf <dekruijf at
wisc.edu> wrote:
> I've been playing around with the new IndirectBr and BlockAddress
types. I'm finding that in CodeGen, during
"EliminateMostlyEmptyBlocks", BlockAddresses are not updated to point
to the newly merged block if the original block was eliminated. This is causing
me problems. Mind you, I'm experimenting with this using the Sparc backend,
which could be the source of blame, but this seems unlikely. Thoughts?
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100226/cfd1fafa/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: blkaddr.patch
Type: application/octet-stream
Size: 636 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100226/cfd1fafa/attachment.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100226/cfd1fafa/attachment-0001.html>