[llvm-dev] Add Call instruction in IR for a non-existing function
Kevin Hu via llvm-dev
llvm-dev at lists.llvm.org
Thu Apr 7 21:02:38 PDT 2016
Pardon me for the late response.
The bc file is the bitcode version of the program IR for LLVM, you could
generate it by clang:
$ clang -c -emit-llvm hello.c -o hello.bc
And llc is the LLVM bitcode compiler, which turns LLVM IR into executables.
But it also supports turning IR into C++ code that uses LLVM API to
generate the corresponding IR. I think it's a good reference for using LLVM
C++ API. For example if you want to understand how you should use LLVM C++
API to generate code in hello.c (and therefore hello.bc as IR), try using
$ llc -march=cpp hello.bc -o hello.cpp
The hello.cpp should contain the C++ code that uses C++ API to generate
On Thu, Apr 7, 2016 at 9:10 AM fateme Hoseini <hoseini.f at gmail.com> wrote:
> Thank you all.
> I didn't get your point. Do you mean to change the bc file and them create
> C++ out of it?
> On Tue, Apr 5, 2016 at 4:48 PM, Kevin Hu <hxy9243 at gmail.com> wrote:
>> I think it's called getOrInsertFunction() in module class, with reference
>> Also, when you encounter questions for LLVM C++ APIs in the future, you
>> can write desired output code and use llc to generate proper C++API code,
>> which I think is a very neat feature of LLVM.
>> clang -c -emit-llvm your_desired_output.c
>> llc -march=cpp your_desired_output.bc
>> Hope this helps.
>> On Tue, Apr 5, 2016 at 3:28 PM fateme Hoseini via llvm-dev <
>> llvm-dev at lists.llvm.org> wrote:
>>> Hello everyone,
>>> I am trying to add checkpoints to my IR code. In order to do that I need
>>> to add this instruction:
>>> call void @m5_checkpoint(i64 0, i64 0)
>>> to some of the basic blocks in my benchmark.
>>> m5_checkpoint is a function defined for checkpointing in another
>>> simulator and is not included in my benchmark source code. So I need to
>>> create this instruction and I couldn't figure out how to do this by reading
>>> the manual. I will appreciate if anyone can help me .
>>> LLVM Developers mailing list
>>> llvm-dev at lists.llvm.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev