[LLVMdev] unexpectedly loop hanging
Alexandru Ionut Diaconescu
alexandruionutdiaconescu at gmail.com
Thu May 30 06:13:17 PDT 2013
Hello Duncan,
I will try this alternative (I think that I already have
enable-debug-symbols). However, it is not an easier way to add to an
instruction an array of integers? Every element linked to one distinct
operand.
PS: I am afraid of rebuild LLVM since problems arose when I was trying to
do that.
Thanks you for the answer !
On Thu, May 30, 2013 at 3:05 PM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Alexandru, if these are LLVM Makefiles, then I suggest you configure and
> build LLVM with the options:
>
> --disable-optimized --enable-assertions
>
> This will make debugging much easier. It enables debug info too, which
> you can
> also turn on directly by configuring with --enable-debug-symbols.
>
> Ciao, Duncan.
>
>
> On 30/05/13 14:21, Alexandru Ionut Diaconescu wrote:
>
>> Hello Duncan,
>>
>> Thank you for your quick answer. I use the standard Makefile from a pass,
>> that
>> is calling Makefile.common. I saw only the make -d option, that "*/print
>> lots of
>> debugging information/*", as mentioned by LLVM.
>>
>>
>> Using this, valgrind don't tell me extra info. It is a very good idea ti
>> use -g,
>> but where to insert? If I am trying to use clang++, I have to fix a lot of
>> things. Should I make the changes for to use clang++ or I can debug using
>> the
>> Makefile.common?
>>
>>
>> On Thu, May 30, 2013 at 1:57 PM, Duncan Sands <baldrick at free.fr
>> <mailto:baldrick at free.fr>> wrote:
>>
>> Hi Alexandru,
>>
>> > /*==5134== Invalid write of size 4
>>
>> ==5134== at 0x4039280: (anonymous
>> namespace)::Hello::__**runOnModule(llvm::Module&) (in
>> /home/alex/llvm/Release+__**Asserts/lib/Hello.so)
>> ==5134== by 0x8E33DE3:
>> llvm::MPPassManager::__**runOnModule(llvm::Module&) (in
>> /home/alex/llvm/Release+__**Asserts/bin/opt)
>> ==5134== by 0x8E3726F: llvm::PassManagerImpl::run(__**llvm::Module&)
>> (in
>> /home/alex/llvm/Release+__**Asserts/bin/opt)
>> ==5134== by 0x8E37385: llvm::PassManager::run(llvm::_**_Module&)
>> (in
>> /home/alex/llvm/Release+__**Asserts/bin/opt)
>>
>> ==5134== by 0x41AE4D2: (below main) (libc-start.c:226)
>> ==5134== Address 0x46cfa40 is 0 bytes after a block of size 200
>> alloc'd
>> ==5134== at 0x402C454: operator new[](unsigned int) (in
>> /usr/lib/valgrind/vgpreload___**memcheck-x86-linux.so)
>> ==5134== by 0x4037AE0: (anonymous
>> namespace)::Hello::__**runOnModule(llvm::Module&) (in
>> /home/alex/llvm/Release+__**Asserts/lib/Hello.so)*/
>>
>>
>> ==5134== Address 0x46cfa40 is 0 bytes after a block of size 200
>> alloc'd
>> ==5134== at 0x402C454: operator new[](unsigned int) (in
>> /usr/lib/valgrind/vgpreload___**memcheck-x86-linux.so)
>> ==5134== by 0x4037AE0: (anonymous
>> namespace)::Hello::__**runOnModule(llvm::Module&) (in
>> /home/alex/llvm/Release+__**Asserts/lib/Hello.so)
>>
>>
>>
>> you are writing of the end of an array that you allocated with "new".
>> If you
>> compile your program with debug info (-g) then valgrind should give
>> you the line
>> number at which the allocation occurred and the line number at which
>> the bad
>> write occurred.
>>
>> Ciao, Duncan.
>>
>>
>>
>>
>> --
>> Best regards,
>> Alexandru Ionut Diaconescu
>>
>
>
--
Best regards,
Alexandru Ionut Diaconescu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130530/128e6a77/attachment.html>
More information about the llvm-dev
mailing list