[llvm-bugs] [Bug 24065] CloneFunction ovewrites requested replacements - PATCH

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Sep 17 02:57:14 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24065

Pedro Ferreira <pedro.ferreira at imgtec.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #3 from Pedro Ferreira <pedro.ferreira at imgtec.com> ---
(In reply to comment #2)
> Nicolas, I think that this is actually intended behavior. The map should
> only be used once per cloning of a given basic block, so the find() should
> actually always return VMap.end(). When it doesn't it means that you passed
> in an already used VMap, which cloned this basic block already. Even if you
> were reusing VMap, the code as committed would retain the proper mapping of
> existing instructions in a basic block to the newly cloned equivalents
> (rather than referring to a prior cloning of the block).

I'm confused. By code inspection, the VMap is per function cloning, not per
block.


In any case, thank you for your reply. I just think this peculiarity should be
documented (unless I missed it), as I was expecting to be able to arbitrarily
replace instructions of the cloned function though the VMap.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150917/cd0525b8/attachment.html>


More information about the llvm-bugs mailing list