Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] How to instrument a this function using insertBefore instruction???"
2012 Apr 09
2
[LLVMdev] How to instrument a this function using insertBefore instruction???
Hi,
I don't think the code you pasted can be the correct code, where does FibF
come from?
Anyway, the problem is that you're calling the FibF from Module A, however
you defined it for Module B.
You need to insert the FibF function into the Module that you're running.
To do this override "virtual bool doInitialization(Module &M);" and insert
FibF into M.
Joey
2012/4/9
2012 Apr 09
0
[LLVMdev] How to instrument a this function using insertBefore instruction???
Hi,
I got upset.. What does “Broken module found, compilation aborted!” mean really?? what‘s “broken module“??
--
祝好!
甄凯
------------------------------------------------------------------------------------------------------
2012-04-09
------------------------------------------------------------------------------------------------------
Name: 甄凯(ZhenKai)
2012 Apr 09
0
[LLVMdev] How to instrument a this function using insertBefore instruction???
Thank you very much!
To make it simpler, I may as well just implement the self-written "check function" in C language instead of wrapping it in LLVM module. According to the hint you give me, all I need to do is as follow(?)
1. Implement the "Check function" in the check.c file;
2. Add the check function into the module(the Hello1.bc file which I will run the functionPass on)
2012 Apr 09
1
[LLVMdev] How to instrument a this function using insertBefore instruction???
That sounds like a good general plan, yes!
Joey
2012/4/9 15102925731 <zhenkaixd at 126.com>
> Thank you very much!
>
> To make it simpler, I may as well just implement the self-written "check
> function" in C language instead of wrapping it in LLVM module. *According
> to the hint you give me, all I need to do is as follow(?)*
>
> 1. Implement the
2012 Apr 10
4
[LLVMdev] How to explain this weird phenomenon????????
My friends,
I ran a function pass on a .bc file, intending to insert a CallInst to my self-made check function.
The compilation is successful. BUT after I ran that pass on the .bc file, the size of the file didn't get any bigger!!
Does this mean my instrumentation work failed??
BTW the opt command I use is "opt -load ../../../Debug+Asserts/lib/Hello.so -hello <hello.bc> -o
2012 Apr 10
0
[LLVMdev] How to explain this weird phenomenon????????
I figured that my opt command is wrong! How to specify the output file anyway??
if I want hello.bc to be input file and newhello.bc to be output file, is the opt command go like this?
opt -load ../../../Debug+Asserts/lib/Hello.so -hello <hello.bc> -o newhello.bc ??
--
祝好!
甄凯
2012 Apr 07
1
[LLVMdev] How to insert a self-written function to a piece of programme
Hi all,
I wrote a function pass. In the pass, it ran through all the instruction that call to functions. When arriving at the exact function that I m interested in, it would insert a self-made function.
Now I've finished the pass, the compilation is successful. The pass can find the function I like and can insert the CallInst to call my check function. BUT, when running the
2012 Apr 10
2
[LLVMdev] How to get the module handle of a .bc file??
Hi all,
I want to run a function pass on a certain .bc file. In the process, the pass will insert a check function into the .bc file.
I know the .bc file is regarded as a module in LLVM. So, there are two basic steps needed to be done,
1, Use the "getOrInsertFunction"API to add a declaration of the extern "check function".
2, Use the "insertBefore"API to insert the
2012 Apr 10
0
[LLVMdev] How to get the module handle of a .bc file??
Objects that form the IR (functions, basic blocks, instructions) have
the getParent() method that returns their paren (module for a
function, basic block for a single instruction etc.)
BTW, LLVM Doxygen is really helpful. It's usually the first result
when you search for "LLVM <classname> class reference"
On Tue, Apr 10, 2012 at 11:17 AM, 15102925731 <zhenkaixd at
2012 Apr 10
1
[LLVMdev] How to explain this weird phenomenon????????
Your files do not appear to implement the check() function.
On Tue, Apr 10, 2012 at 4:57 PM, 15102925731 <zhenkaixd at 126.com> wrote:
> Hi, my friends
>
> I finally insert the callInst into the hello.bc file.Then I compile the
> hello.bc to hello.o file and the check.c to check.o file. And I think by
> link those to .o file togetherI can get the executable ELF file(clang
2012 Apr 10
3
[LLVMdev] How to explain this weird phenomenon????????
I did it !!!!
YOU MADE MY DAY !!!!!!!!!!!!!!!
--
祝好!
甄凯
------------------------------------------------------------------------------------------------------
2012-04-10
------------------------------------------------------------------------------------------------------
Name: 甄凯(ZhenKai)
Homepage:http://www.renren.com/262729393
Email: zhenkaixd at 126.com or 846227103 at
2012 Apr 10
0
[LLVMdev] How to explain this weird phenomenon????????
Hi, my friends
I finally insert the callInst into the hello.bc file.Then I compile the hello.bc to hello.o file and the check.c to check.o file. And I think by link those to .o file togetherI can get the executable ELF file(clang hello.o check.o -o finalfile).
But when I link the two objective file, it said
"hello.o: In function `main':
hello.bc:(.text+0x69): undefined reference to
2012 Apr 08
0
[LLVMdev] How to insert a self-written function to a piece of programme
Thanks for your reply! I send the message to the mail list this time~
Did you mean I need to initialize M and the Context? Is that really necessary? Does all the function need to be wrapped in the module? I remember you once said "you can just declare the function (i.e. no need to give it a body), and call it.You can then link with an object file that defines it. This is simpler than
2012 Apr 12
2
[LLVMdev] How to compile a linux module into .bc file using clang or llvm command?
Yeah, but I tried that command and error message was generated:
hellomodule.c:1:10: fatal error: 'linux/init.h' file not found
#include <linux/init.h>
^
1 error generated.
how to solve this problem??
Thanks!
--
祝好!
甄凯
------------------------------------------------------------------------------------------------------
2012-04-12
2012 Apr 12
1
[LLVMdev] How to compile a linux module into .bc file using clang or llvm command?
Ok, that makes sense!
That is to say, I don't need a makefile (in which to specify the path to kernel) to compile it. Just a clang command with some option will do it, right?
--
祝好!
甄凯
------------------------------------------------------------------------------------------------------
2012-04-12
2012 Apr 09
0
[LLVMdev] Problem on instrumentation
Hi,
I also want to insert a function call at the interested area, and do something in the called function which is written by myself.
First you need to determine the INSTRUCTION where you want to insert your function to. you can do this by writing some code like,
for (Function::iterator BI = F.begin(), BE = F.end(); BI != BE; ++BI)
for(BasicBlock::iterator II =
2012 Apr 09
2
[LLVMdev] Problem on instrumentation
Hi,
I am instrumenting a piece of code. I want to insert a function call at the interested area, and do something in the called function which is written by myself.
I have succeed on implementing the pass, and getting the instrmented code. However, I am not sure where to put this function, and what kind of linkage I should use for this function.
Currently I use External linkage which is
2012 Apr 12
2
[LLVMdev] HELP: Clang options needed in command to compile device driver into linux module.
Wow that's to much output information.
Maybe I can put it in this way. Could you tell me the clang option that can include the linux kernel headers???
Something like
"clang -O3 -isystem /lib/modules/`uname -r`/build/include -emit-llvm hellomodule.c -c -o hellomodule.bc"
Thank you!
--
祝好!
甄凯
2012 Apr 12
0
[LLVMdev] How to compile a linux module into .bc file using clang or llvm command?
On 4/11/12 8:25 PM, 15102925731 wrote:
> Yeah, but I tried that command and error message was generated:
>
> hellomodule.c:1:10: fatal error: 'linux/init.h' file not found
> #include <linux/init.h>
> ^
> 1 error generated.
>
> how to solve this problem??
Well, you do have to include all the -I and -D options so that clang can
find the Linux kernel header
2012 Apr 11
2
[LLVMdev] How to compile a linux module into .bc file using clang or llvm command?
It's actually is .c file.
I just want firstly to compile helloworldmodule.c into helloworldmodule.bc.
Then I run a LLVM pass on it to do some optimization, and then I compile the modified .bc file into .ko file.
So, could you tell me how to compile helloworldmodule.c into helloworldmodule.bc? I think it's not the same command "clang -O3 -emit-llvm hello.c -c -o hello.bc".