[LLVMdev] Possible Bad Assertion in Value.cpp
John Criswell
criswell at cs.uiuc.edu
Fri Feb 15 15:01:17 PST 2008
Chris Lattner wrote:
>>> You probably have an instruction that you removed from the module but
>>> didn't delete. The module dtor works fine: it uses
>>> 'dropAllReferences' to clear the operands of instructions before
>>> deleting the instructions themselves.
>>>
>>>
>> Okay. I wasn't aware I had to delete unneeded values as well as
>> remove
>> them. I'll try that.
>>
>
> The convention is that 'remove' unlinks the object from the IR, and
> 'erase' does remove and deletes the result.
>
> If someone wants to clarify this behavior in http://llvm.org/docs/ProgrammersManual.html#common
> , it would be nice :)
>
No, I understood that part (granted, I read DoxyGen). The part I didn't
understand is that I'm required to erase an instruction that should have
no more uses before deleting the Module.
If I get time, I can try to add some text about it.
-- John T.
> -Chris
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
More information about the llvm-dev
mailing list