12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #ifndef _SYSCALLDB_H_
- #define _SYSCALLDB_H_
- #ifdef __ASSEMBLER__
- .weak syscalldb
- .type syscalldb, @function
- # if defined(PSEUDO) && defined(SYSCALL_NAME) && defined(SYSCALL_SYMBOL)
- # define SYSCALLDB \
- subq $128, %rsp; \
- movq syscalldb@GOTPCREL(%rip), %rcx; \
- call *%rcx; \
- addq $128, %rsp
- # else
- # define SYSCALLDB \
- movq syscalldb@GOTPCREL(%rip), %rcx; \
- call *%rcx
- # endif
- #else /* !__ASSEMBLER__ */
- asm (
- ".weak syscalldb\r\n"
- ".type syscalldb, @function\r\n");
- #define SYSCALLDB \
- "subq $128, %%rsp\n\t" \
- "movq syscalldb@GOTPCREL(%%rip), %%rcx\n\t" \
- "callq *%%rcx\n\t" \
- "addq $128, %%rsp\n\t"
- #define SYSCALLDB_ASM \
- "movq syscalldb@GOTPCREL(%rip), %rbx\n\t" \
- "callq *%rbx\n\t"
- long int glibc_option (const char * opt);
- asm (
- ".weak glibc_option\r\n"
- ".type glibc_option, @function\r\n");
- #endif /* Assembler */
- #endif /* _SYSCALLDB_H */
|