Displaying 4 results from an estimated 4 matches for "pointed_to_function1".
2009 Oct 02
1
[LLVMdev] alias analysis and functions
...nders-aa -aa-eval -print-no-aliases -print-may-aliases -print-must-aliases
Here is a test case:
///////////////try_calls_aliases.c
#include <stdio.h>
typedef int (*PF)();
PF pf01=0;
PF pf2=0;
int pointed_to_function0() {
printf("pointed_to_function0\n");
return 1;
}
int pointed_to_function1() {
pf01 = pointed_to_function1;
printf("pointed_to_function1\n");
return 1;
}
void ptr_function_caller(PF pf) {
printf("ptr_function_caller\n");
pf();
PF lpf0 = pointed_to_function0;
PF lpf1 = pointed_to_function1;
}
int main(int argc, char* argv[]) {
ptr_func...
2009 May 19
1
[LLVMdev] how to get a deterministic execution
...closer examination shows that the 56-th Value in the first case is
an instruction in main, while in the 2nd case is an instruction in a different function.
My particular issue is that I want to see when the following instruction is created:
%pf1.0 = select i1 %0, i32 (...)* bitcast (i32 ()* @pointed_to_function1 to i32 (...)*), i32 (...)* bitcast (i32 ()* @pointed_to_function2 to i32 (...)*) ; <i32 (...)*> [#uses=2] {vuid=67}
So, I assume it is the 67-th Value, set a conditional breakpoint and restart the program.
But this fails, because the second time it is the 55-th value created:
%pf...
2009 May 19
0
[LLVMdev] how to get a deterministic execution
On Mon, May 18, 2009 at 8:33 PM, dan mihai <dnmh68 at hotmail.com> wrote:
> Hello,
>
Yo!
> For debugging purposes, I've added a unique id member to the Value class:
>
> global_next_vuid = 0;
> Value::Value(..){
> vuid = ++global_next_vuid;
> }
>
> My hope is that by looking at the vuid of a Value, I can see its vuid,
> set a conditional breakpoint and
2009 May 19
2
[LLVMdev] how to get a deterministic execution
Hello,
For debugging purposes, I've added a unique id member to the Value class:
global_next_vuid = 0;
Value::Value(..){
vuid = ++global_next_vuid;
}
My hope is that by looking at the vuid of a Value, I can see its vuid,
set a conditional breakpoint and re-run the compiler to
see who (what pass) constructed that value.
Maybe I am not doing it the right way, but the above 'vuid'