diff options
author | Steve Kondik <shade@chemlab.org> | 2011-09-29 16:26:00 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2011-09-29 16:26:00 -0700 |
commit | 40d5df28bc4278d543697c960267ba3b5da74163 (patch) | |
tree | 4a1cae5501cb263d8b2fbd821ff0434bc7732809 /libc/arch-x86/bionic/crtbegin_static.S | |
parent | 6ed844f1f2e3a53939b606011a76fb3e353a7a92 (diff) | |
parent | 50a83255d80f98b857c3f72dd2225d4bbc720ca3 (diff) | |
download | android_bionic-gingerbread-release.tar.gz android_bionic-gingerbread-release.tar.bz2 android_bionic-gingerbread-release.zip |
Merge branch 'gingerbread' of git://git.omapzoom.org/platform/bionic into 237cm-7.1.0gingerbread-release
Conflicts:
libc/Android.mk
libthread_db/Android.mk
Change-Id: I4a730f70bf3b31331ab9cee5f1a098d4162ef4b7
Diffstat (limited to 'libc/arch-x86/bionic/crtbegin_static.S')
-rw-r--r-- | libc/arch-x86/bionic/crtbegin_static.S | 56 |
1 files changed, 51 insertions, 5 deletions
diff --git a/libc/arch-x86/bionic/crtbegin_static.S b/libc/arch-x86/bionic/crtbegin_static.S index 3f8446ec7..8e7033017 100644 --- a/libc/arch-x86/bionic/crtbegin_static.S +++ b/libc/arch-x86/bionic/crtbegin_static.S @@ -65,7 +65,6 @@ _start: 1: .long __PREINIT_ARRAY__ .long __INIT_ARRAY__ .long __FINI_ARRAY__ - .long __CTOR_LIST__ .section .preinit_array, "aw" .globl __PREINIT_ARRAY__ @@ -76,15 +75,62 @@ __PREINIT_ARRAY__: .globl __INIT_ARRAY__ __INIT_ARRAY__: .long -1 + .long frame_dummy .section .fini_array, "aw" .globl __FINI_ARRAY__ __FINI_ARRAY__: .long -1 + .long __do_global_dtors_aux - .section .ctors, "aw" - .globl __CTOR_LIST__ -__CTOR_LIST__: - .long -1 + .section .eh_frame,"a",@progbits + .align 4 + .type __EH_FRAME_BEGIN__, @object +__EH_FRAME_BEGIN__: + .text + .p2align 4,,15 + .type __do_global_dtors_aux, @function +__do_global_dtors_aux: + pushl %ebp + movl %esp, %ebp + subl $24, %esp + cmpb $0, completed.4454 + jne .L4 + movl $__deregister_frame_info_bases, %eax + testl %eax, %eax + je .L3 + movl $__EH_FRAME_BEGIN__, (%esp) + call __deregister_frame_info_bases +.L3: + movb $1, completed.4454 +.L4: + leave + ret + .text + .p2align 4,,15 + .type frame_dummy, @function +frame_dummy: + pushl %ebp + movl $__register_frame_info_bases, %eax + movl %esp, %ebp + subl $24, %esp + testl %eax, %eax + je .L7 + movl %ebx, 12(%esp) + movl $0, 8(%esp) + movl $object.4466, 4(%esp) + movl $__EH_FRAME_BEGIN__, (%esp) + call __register_frame_info_bases +.L7: + leave + ret + .local completed.4454 + .comm completed.4454,1,1 + .local object.4466 + .comm object.4466,24,4 + .weak __register_frame_info_bases + .weak __deregister_frame_info_bases #include "__dso_handle.S" +#include "atexit.S" +#include "__stack_chk_fail_local.S" |