Hi, 2007/3/11, Danny Smith <[EMAIL PROTECTED]>:
> -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On > Behalf Of Zuxy Meng > Sent: Wednesday, 7 March 2007 12:36 a.m. > > I've uploaded a proposed patch for this bug > (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13151&action=diff). > Putting > crtfastmath.o in the endfile section of specs causes undefined reference to > memset, so I moved it to the startfile section. Anyone to review this? Quite > trivial anyway. Hello Zuxy, crtfasmath.o is an endfile for a reason. _set_fast_math is run from the .ctors section. It needs to be run before other constructors that might use fastmath, so is made an end ctor (ctors are run from right to left). The reference to memset does not occur on trunk with optimization. It can be avoided with 4.2.0 by adding -minline-all-stringops to rule for (T)crtfastmath.o
Maybe such optimization isn't turned on for mingw. I updated the patch to force this by using -minline-all-stringops. http://gcc.gnu.org/bugzilla/attachment.cgi?id=13189 -- Zuxy Beauty is truth, While truth is beauty. PGP KeyID: E8555ED6