I have a function call, which I pass a pointer and upon return the pointer has changed.
this is what i am doing:
Code: Select all
pointer c = 0x1000600c
call_function(c);
pointer c = 0x10000000
something happens between returning from "call_function" and getting back to the calling function.
I'm a bit lost. I tried disabling interrupts so no switching occurs, but it is the same.
I am using gcc 4.1.1 if that helps?
Andrew
[EDIT]
I just tried with gcc 3.4.4 and it works as it should, could this be a bug with 4.1.1? (I use -O3, if that matters)
[/EDIT]