2002-09-09 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/machine/i386/crt0.c (_start): Remove
        code that clears the .bss section.
			
			
This commit is contained in:
		| @@ -1,3 +1,8 @@ | ||||
| 2002-09-09  Jeff Johnston  <jjohnstn@redhat.com> | ||||
|  | ||||
|         * libc/sys/linux/machine/i386/crt0.c (_start): Remove | ||||
|         code that clears the .bss section. | ||||
|  | ||||
| 2002-09-09  Jeff Johnston  <jjohnstn@redhat.com> | ||||
|  | ||||
|         * libc/include/sys/_types.h (_mbstate_t): Changed to use | ||||
|   | ||||
| @@ -33,8 +33,12 @@ void _start(int args) | ||||
|  | ||||
|     environ = argv+argc+1; | ||||
|  | ||||
|     /* clear bss */ | ||||
|     memset(&__bss_start,0,(&_end - &__bss_start)); | ||||
|     /* Note: do not clear the .bss section.  When running with shared | ||||
|      *       libraries, certain data items such __mb_cur_max or environ | ||||
|      *       may get placed in the .bss, even though they are initialized | ||||
|      *       to non-zero values.  Clearing the .bss will end up zeroing | ||||
|      *       out their initial values.  The .bss is already initialized | ||||
|      *       by this time by Linux.  */ | ||||
|  | ||||
|     tzset(); /* initialize timezone info */ | ||||
|     exit(main(argc,argv,environ)); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user