Very simple... Just describing here for me to remind.
=== ARM(32bit) - RVCT ===
/* #pragma O0 <- due to optimized out, this may be required */
{ /* Just Scope */
void* ra;
/* register lr(r14) has return address */
__asm
{ mov ra, lr }
/* now variable 'ra' has return address */
}
=== x86(32bit) - GCC ===
{ /* Just Scope */
register void* ra; /* return address */
/* return address is stored at 4byte above from 'ebp' */
asm ("movl 4(%%ebp), %0;"
:"=r"(ra));
/* now variable 'ra' has return address */
}'Language > C&C++' 카테고리의 다른 글
| [C/C++] Encapsulation tip in C. (0) | 2010.11.12 |
|---|---|
| [C/C++] Tips and Memos (0) | 2010.11.12 |
| [Linux][C/C++] Understanding Signals – User Signal Handler (0) | 2010.10.29 |
| [C/C++] type of hard-coded-string. (0) | 2010.09.16 |
| [C/C++] Function pointer. (0) | 2010.05.24 |