[LLVMdev] Associate IR instruction with corresponding assembly

shruti padmanabha
Sun, 18 May 2014 22:54:11 -0000

Hi,

Thanks for the pointer. I am unfortunately running into llc problems with
this pass.
I did
*opt  -debug-ir   hello.bc -o hello.deb.bc*

*llc -march=arm -debug  -O0 hello.deb.bc  -o hello.deb.s*

This is aborting with the error: llc:
llvm-3.4/lib/CodeGen/AsmPrinter/DwarfDebug.cpp:1614: void
llvm::DwarfDebug::beginFunction(const llvm::MachineFunction*): Assertion
`TheCU && "Unable to find compile unit!"' failed.
I'm assuming this is because llc found some errors in the metadata that
debug-ir prints out. How do I find and correct this?

Thanks again,
Shruti




On Sat, May 17, 2014 at 5:57 PM, Tobias Grosser <tobias at grosser.es>
wrote:

> On 17/05/2014 23:05, shruti padmanabha wrote:
>
>> Hi,
>>
>> Is there a way to associate LLVM IR instructions with the instructions
>> they
>> finally generate in the assembly file emitted by LLC? I need to track
the
>> PC's corresponding to certain IR level instructions for ARM.
>> One way to do this is to tag an IR instruction with a special flag and
>> pass
>> that flag onto the Machine IR created by LLC and then onto Machine
Code.
>> It
>> would be helpful if I could get some pointers on how to do this.
>>
>
> You may want to look at the -debug-ir pass, which creates METADATA to emit
> debugging information that allows you to associate machine instructions
> with IR instructions. This may or may not be what you want.
>
> Tobias
>



--
Shruti Padmanabha
University of Michigan, Ann Arbor
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20140518/36779ef6/attachment.html>