Quellcode durchsuchen

* android: Simply jump to the libc exit().

git-svn-id: trunk@32008 -
yury vor 9 Jahren
Ursprung
Commit
2116552b36
2 geänderte Dateien mit 5 neuen und 12 gelöschten Zeilen
  1. 2 7
      rtl/android/i386/dllprt0.as
  2. 3 5
      rtl/android/i386/prt0.as

+ 2 - 7
rtl/android/i386/dllprt0.as

@@ -68,13 +68,8 @@ _haltproc:
         /* GOT init */
         call    fpc_geteipasebx
         addl    $_GLOBAL_OFFSET_TABLE_,%ebx
-
-        movl    operatingsystem_result@GOT(%ebx),%eax
-        movzwl  (%eax),%eax
-
-        pushl   %eax
-        /* Call libc exit() */
-        call    exit@PLT
+        /* Jump to libc exit(). _haltproc has the same declaration as exit. */
+        jmp     exit@GOT
 
 /* --------------------------------------------------------- */
 .data

+ 3 - 5
rtl/android/i386/prt0.as

@@ -68,11 +68,9 @@ _fpc_start:
         .globl  _haltproc
         .type   _haltproc,@function
 _haltproc:
-        movzwl  operatingsystem_result,%ebx
-        pushl   %ebx
-        /* Call libc exit() */
-        call    exit
-        
+        /* Jump to libc exit(). _haltproc has the same declaration as exit. */
+        jmp     exit
+
 /* --------------------------------------------------------- */
 .data
 /* Define a symbol for the first piece of initialized data.  */