Fixed multi-archness of the `demo' script.
[libobjid.git] / hook-i386.S
1 /* $Id$ */
2
3
4 #define TRAMPOLINE_SIZE 5
5
6 #include "hook-arch-asm.h"
7
8 sigaction_trampoline:
9 /* +0: */       push    %ebp
10 /* +1: */       mov     %esp,%ebp
11 /* +3: */       push    %edi
12 /* +4: */       push    %esi
13 /* +5: */
14                 .ifne   . - sigaction_trampoline - TRAMPOLINE_SIZE
15                 .err
16                 .endif
17                 call    pic_base
18 pic_base:       pop     %eax
19                 jmp     *(sigaction_orig_libc_cont-pic_base)(%eax)
20
21 sigaction_trampoline_jmpdir:
22                 /* long absolute direct jump */
23 /* +0: */       .byte   0xe9
24                 .long   0x0
25                 .set    sigaction_trampoline_jmpdir_vec, . - 4
26                 .set    sigaction_trampoline_jmpdir_base, .
27 /* +5: */
28                 .ifne   . - sigaction_trampoline_jmpdir - TRAMPOLINE_SIZE
29                 .err
30                 .endif