aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2011-03-17 08:40:25 +0000
committerCorinna Vinschen <corinna@vinschen.de>2011-03-17 08:40:25 +0000
commitb532ee08bcf81757479e902f4b9f1944e7f13701 (patch)
tree4749c08e8c3405496925881e7d4005ad9336a07a
parentd2948a681dfc4497c1ed557bd419258e0eeb041a (diff)
downloadnewlib-b532ee08bcf81757479e902f4b9f1944e7f13701.zip
newlib-b532ee08bcf81757479e902f4b9f1944e7f13701.tar.gz
newlib-b532ee08bcf81757479e902f4b9f1944e7f13701.tar.bz2
* crt0.c (mainCRTStartup): Move call to _feinitialise from here...
* dcrt0.cc (_dll_crt0): ...to here.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/crt0.c4
-rw-r--r--winsup/cygwin/dcrt0.cc4
3 files changed, 10 insertions, 3 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index adcd35b..5b051eb 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2011-03-16 Corinna Vinschen <corinna@vinschen.de>
+ * crt0.c (mainCRTStartup): Move call to _feinitialise from here...
+ * dcrt0.cc (_dll_crt0): ...to here.
+
+2011-03-16 Corinna Vinschen <corinna@vinschen.de>
+
* winver.rc: Fix copyright dates.
2011-03-14 Corinna Vinschen <corinna@vinschen.de>
diff --git a/winsup/cygwin/crt0.c b/winsup/cygwin/crt0.c
index aa6a5f1..c547e48 100644
--- a/winsup/cygwin/crt0.c
+++ b/winsup/cygwin/crt0.c
@@ -1,6 +1,6 @@
/* crt0.c
- Copyright 2001, 2005, 2010 Red Hat, Inc.
+ Copyright 2001, 2005, 2010, 2011 Red Hat, Inc.
This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
@@ -13,7 +13,6 @@ details. */
#include "winlean.h"
#include <sys/cygwin.h>
-#include "fenv.h"
extern int main (int argc, char **argv);
@@ -25,7 +24,6 @@ mainCRTStartup ()
#ifdef __i386__
(void)__builtin_return_address(1);
asm volatile ("andl $-16,%%esp" ::: "%esp");
- _feinitialise ();
#endif
cygwin_crt0 (main);
diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc
index c6131e8..ad6b62b 100644
--- a/winsup/cygwin/dcrt0.cc
+++ b/winsup/cygwin/dcrt0.cc
@@ -35,6 +35,7 @@ details. */
#include "tls_pbuf.h"
#include "exception.h"
#include "cygxdr.h"
+#include "fenv.h"
#include "ntdll.h"
#define MAX_AT_FILE_LEVEL 10
@@ -980,6 +981,9 @@ __cygwin_exit_return: \n\
extern "C" void __stdcall
_dll_crt0 ()
{
+#ifdef __i386__
+ _feinitialise ();
+#endif
main_environ = user_data->envptr;
if (in_forkee)
{