Quellcode durchsuchen

Merged revisions 1259 via svnmerge from
svn+ssh://[email protected]/FPC/svn/fpc/trunk

r1259 (peter)
* use exit_group syscall to also stop all threads

git-svn-id: branches/fixes_2_0@1260 -

peter vor 20 Jahren
Ursprung
Commit
201ebbc6db
3 geänderte Dateien mit 4 neuen und 6 gelöschten Zeilen
  1. 1 2
      rtl/linux/i386/gprt0.as
  2. 2 3
      rtl/linux/i386/prt0.as
  3. 1 1
      rtl/linux/x86_64/prt0.as

+ 1 - 2
rtl/linux/i386/gprt0.as

@@ -57,8 +57,7 @@ _haltproc2:             # GAS <= 2.15 bug: generates larger jump if a label is e
         pushl   %ebx
         call    exit                    /* call libc exit, this will */
                                         /* write the gmon.out */
-        xorl    %eax,%eax
-        incl    %eax                    /* eax=1, exit call */
+        movl    $252,%eax                /* exit_group */
         popl    %ebx
         int     $0x80
         jmp     _haltproc2

+ 2 - 3
rtl/linux/i386/prt0.as

@@ -65,9 +65,8 @@ _start:
         .globl  _haltproc
         .type   _haltproc,@function
 _haltproc:
-_haltproc2:		# GAS <= 2.15 bug: generates larger jump if a label is exported
-	xorl    %eax,%eax
-	incl    %eax			/* eax=1, exit call */
+_haltproc2:             # GAS <= 2.15 bug: generates larger jump if a label is exported
+	movl    $252,%eax                /* exit_group */
         movzwl  operatingsystem_result,%ebx
         int     $0x80
         jmp     _haltproc2

+ 1 - 1
rtl/linux/x86_64/prt0.as

@@ -55,7 +55,7 @@ _start:
         .globl  _haltproc
         .type   _haltproc,@function
 _haltproc:
-        movl    $60,%eax                 /* exit call */
+        movl    $231,%eax                 /* exit_group call */
         movzwl    operatingsystem_result,%edi
         syscall
         jmp     _haltproc