summaryrefslogtreecommitdiff
path: root/rtl/beos/i386/dllprt.as
diff options
context:
space:
mode:
Diffstat (limited to 'rtl/beos/i386/dllprt.as')
-rw-r--r--rtl/beos/i386/dllprt.as170
1 files changed, 170 insertions, 0 deletions
diff --git a/rtl/beos/i386/dllprt.as b/rtl/beos/i386/dllprt.as
new file mode 100644
index 0000000000..67f62219cf
--- /dev/null
+++ b/rtl/beos/i386/dllprt.as
@@ -0,0 +1,170 @@
+ .file "dllprt.cpp"
+.text
+ .p2align 2
+.globl _._7FPC_DLL
+ .type _._7FPC_DLL,@function
+_._7FPC_DLL:
+.LFB1:
+ pushl %ebp
+.LCFI0:
+ movl %esp,%ebp
+.LCFI1:
+ pushl %esi
+.LCFI2:
+ pushl %ebx
+.LCFI3:
+ call .L7
+.L7:
+ popl %ebx
+ addl $_GLOBAL_OFFSET_TABLE_+[.-.L7],%ebx
+ movl 8(%ebp),%esi
+.L3:
+ movl 12(%ebp),%eax
+ andl $1,%eax
+ testl %eax,%eax
+ je .L5
+ pushl %esi
+.LCFI4:
+ call __builtin_delete@PLT
+ addl $4,%esp
+ jmp .L5
+ .p2align 4,,7
+.L4:
+.L5:
+.L2:
+ leal -8(%ebp),%esp
+ popl %ebx
+ popl %esi
+ movl %ebp,%esp
+ popl %ebp
+ ret
+.LFE1:
+.Lfe1:
+ .size _._7FPC_DLL,.Lfe1-_._7FPC_DLL
+.section .rodata
+.LC0:
+ .string "dll"
+.data
+ .align 4
+ .type _argv,@object
+ .size _argv,8
+_argv:
+ .long .LC0
+ .long 0
+ .align 4
+ .type _envp,@object
+ .size _envp,4
+_envp:
+ .long 0
+.text
+ .p2align 2
+.globl __7FPC_DLL
+ .type __7FPC_DLL,@function
+__7FPC_DLL:
+.LFB2:
+ pushl %ebp
+.LCFI5:
+ movl %esp,%ebp
+.LCFI6:
+ pushl %ebx
+.LCFI7:
+ call .L11
+.L11:
+ popl %ebx
+ addl $_GLOBAL_OFFSET_TABLE_+[.-.L11],%ebx
+ movl U_SYSBEOS_ARGC@GOT(%ebx),%eax
+ movl $0,(%eax)
+ movl U_SYSBEOS_ARGV@GOT(%ebx),%eax
+ movl %ebx,%ecx
+ addl $_argv@GOTOFF,%ecx
+ movl %ecx,%edx
+ movl %edx,(%eax)
+ movl U_SYSBEOS_ENVP@GOT(%ebx),%eax
+ movl %ebx,%ecx
+ addl $_envp@GOTOFF,%ecx
+ movl %ecx,%edx
+ movl %edx,(%eax)
+ call PASCALMAIN__Fv@PLT
+.L9:
+ movl 8(%ebp),%eax
+ jmp .L8
+.L8:
+ movl -4(%ebp),%ebx
+ movl %ebp,%esp
+ popl %ebp
+ ret
+.LFE2:
+.Lfe2:
+ .size __7FPC_DLL,.Lfe2-__7FPC_DLL
+
+.section .eh_frame,"aw",@progbits
+__FRAME_BEGIN__:
+ .4byte .LLCIE1
+.LSCIE1:
+ .4byte 0x0
+ .byte 0x1
+ .byte 0x0
+ .byte 0x1
+ .byte 0x7c
+ .byte 0x8
+ .byte 0xc
+ .byte 0x4
+ .byte 0x4
+ .byte 0x88
+ .byte 0x1
+ .align 4
+.LECIE1:
+ .set .LLCIE1,.LECIE1-.LSCIE1
+ .4byte .LLFDE1
+.LSFDE1:
+ .4byte .LSFDE1-__FRAME_BEGIN__
+ .4byte .LFB1
+ .4byte .LFE1-.LFB1
+ .byte 0x4
+ .4byte .LCFI0-.LFB1
+ .byte 0xe
+ .byte 0x8
+ .byte 0x85
+ .byte 0x2
+ .byte 0x4
+ .4byte .LCFI1-.LCFI0
+ .byte 0xd
+ .byte 0x5
+ .byte 0x4
+ .4byte .LCFI2-.LCFI1
+ .byte 0x86
+ .byte 0x3
+ .byte 0x4
+ .4byte .LCFI3-.LCFI2
+ .byte 0x83
+ .byte 0x4
+ .byte 0x4
+ .4byte .LCFI4-.LCFI3
+ .byte 0x2e
+ .byte 0x4
+ .align 4
+.LEFDE1:
+ .set .LLFDE1,.LEFDE1-.LSFDE1
+ .4byte .LLFDE3
+.LSFDE3:
+ .4byte .LSFDE3-__FRAME_BEGIN__
+ .4byte .LFB2
+ .4byte .LFE2-.LFB2
+ .byte 0x4
+ .4byte .LCFI5-.LFB2
+ .byte 0xe
+ .byte 0x8
+ .byte 0x85
+ .byte 0x2
+ .byte 0x4
+ .4byte .LCFI6-.LCFI5
+ .byte 0xd
+ .byte 0x5
+ .byte 0x4
+ .4byte .LCFI7-.LCFI6
+ .byte 0x83
+ .byte 0x3
+ .align 4
+.LEFDE3:
+ .set .LLFDE3,.LEFDE3-.LSFDE3
+ .ident "GCC: (GNU) 2.9-beos-991026"