repo.or.cz
/
tinycc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
Support struct arguments with stdarg.h
[tinycc.git]
/
lib
/
alloca86-bt.S
blob
76a85a0f7bed6d00143a2aeeb9b16e1d2bc1f2fb
1
/* ---------------------------------------------- */
2
/* alloca86-bt.S */
3
4
.globl __bound_alloca
5
6
__bound_alloca:
7
pop %edx
8
pop %eax
9
mov %eax, %ecx
10
add $3,%eax
11
and $-4,%eax
12
jz p6
13
14
#ifdef TCC_TARGET_PE
15
p4:
16
cmp $4096,%eax
17
jle p5
18
sub $4096,%esp
19
sub $4096,%eax
20
test %eax,(%esp)
21
jmp p4
22
23
p5:
24
#endif
25
26
sub %eax,%esp
27
mov %esp,%eax
28
29
push %edx
30
push %eax
31
push %ecx
32
push %eax
33
call __bound_new_region
34
add $8, %esp
35
pop %eax
36
pop %edx
37
38
p6:
39
push %edx
40
push %edx
41
ret
42
43
/* ---------------------------------------------- */