Simon, how do you want to proceed with this? Just add -fno-builtin-strlen to the .hc bootstrappping CC flags?
-- Don rfh: > Gentlemen, > > ghc -v was not required, as I am building this using .hc files from > another host. Adding "-fno-builtin" to the CC opts did resolve the > problem. Furthermore, I believe I have confirmed that strlen is the > problem by succesfully compiling the library using "-fno-builtin- > strlen" instead of "-fno-builtin". > > Thank you, > > reilly hayes > > > On May 12, 2006, at 2:20 AM, Simon Marlow wrote: > > >I'm pretty sure this is to do with calls to strlen() from > >Data.ByteString. > > > >Can you check for sure that gcc is being passed -fno-builtin? (use > >ghc -v). > > > >Failing that, we might have to use a private version of strlen() > >that gcc doesn't try to inline. > > > >Cheers, > > Simon > > > >Reilly Hayes wrote: > >>As of 6.5.20050610 this still occurs on both the intel mac and > >>intel linux (Gcc 4.0.1 & gcc 4.0.2 respectively). Setting -fno- > >>inline for gcc has no effect. > >>-reilly hayes > >>On May 9, 2006, at 1:20 AM, Simon Marlow wrote: > >>>Often I find these are the result of gcc inlining something, or > >>>using its built-in primitives. We already pass -fno-builtin to > >>>gcc on x86. Don - are there any C functions being inlined in > >>>ByteString? If so, it might be a good idea to turn off the > >>>inlining. > >>> > >>>Cheers, > >>> Simon > >>> > >>>Donald Bruce Stewart wrote: > >>> > >>>>There's been a few changes since then, perhaps try again with last > >>>>night's snapshot? > >>>>dons: > >>>> > >>>>>Hmm! Very interesting. Register spill classes, eh? SimonM? > >>>>> > >>>>>-- Don > >>>>> > >>>>>rfh: > >>>>> > >>>>>> I get the following error when trying to bootstrap the > >>>>>> 6.5.20060506 snapshot from hc files (registerised): > >>>>>> > >>>>>> gcc -x c Data/ByteString.hc -o Data/ByteString.raw_s -S -O > >>>>>> -fno-defer-pop -fomi > >>>>>> > >>>>>> t-frame-pointer -mdynamic-no-pic > >>>>>> -DDONT_WANT_WIN32_DLL_SUPPORT -mdynamic-no-pi > >>>>>> > >>>>>> c -D__GLASGOW_HASKELL__=605 -O -mdynamic-no-pic > >>>>>> -I/Users/rfh/haskell/mac/ghc-6. > >>>>>> > >>>>>> 5.20060506/includes > >>>>>> -I/Users/rfh/haskell/mac/ghc-6.5.20060506/libraries/base/inc > >>>>>> > >>>>>> lude > >>>>>> -I/Users/rfh/haskell/mac/ghc-6.5.20060506/libraries/unix/inc > >>>>>> lude -I/Users/r > >>>>>> > >>>>>> fh/haskell/mac/ghc-6.5.20060506/libraries/parsec/include > >>>>>> -I. `echo | sed ' > >>>>>> > >>>>>> s/^$/-DSTOLEN_X86_REGS=4/'` > >>>>>> > >>>>>> Data/ByteString.hc: In function > >>>>>> 'DataziByteString_zdwccall_entry': > >>>>>> > >>>>>> Data/ByteString.hc:8631: error: unable to find a register to > >>>>>> spill in class 'DIR > >>>>>> > >>>>>> EG' > >>>>>> > >>>>>> Data/ByteString.hc:8631: error: this is the insn: > >>>>>> > >>>>>> (insn 22 45 23 0 (parallel [ > >>>>>> > >>>>>> (set (reg:SI 2 cx [64]) > >>>>>> > >>>>>> (unspec:SI [ > >>>>>> > >>>>>> (mem:BLK (reg:SI 1 dx [orig:66 _cdHE > >>>>>> ] [66]) [0 A8]) > >>>>>> > >>>>>> (reg:QI 0 ax [68]) > >>>>>> > >>>>>> (const_int 1 [0x1]) > >>>>>> > >>>>>> (reg:SI 2 cx [67]) > >>>>>> > >>>>>> ] 20)) > >>>>>> > >>>>>> (use (reg:SI 19 dirflag)) > >>>>>> > >>>>>> (clobber (reg:SI 1 dx [orig:66 _cdHE ] [66])) > >>>>>> > >>>>>> (clobber (reg:CC 17 flags)) > >>>>>> > >>>>>> ]) 479 {*strlenqi_1} (insn_list:REG_DEP_TRUE 18 > >>>>>> (insn_list:REG_DEP_TRUE > >>>>>> > >>>>>> 19 (insn_list:REG_DEP_TRUE 20 (insn_list:REG_DEP_TRUE 21 > >>>>>> (nil))))) > >>>>>> > >>>>>> (expr_list:REG_UNUSED (reg:CC 17 flags) > >>>>>> > >>>>>> (expr_list:REG_UNUSED (reg:SI 1 dx [orig:66 _cdHE ] > >>>>>> [66]) > >>>>>> > >>>>>> (expr_list:REG_DEAD (reg:SI 19 dirflag) > >>>>>> > >>>>>> (expr_list:REG_DEAD (reg:SI 2 cx [67]) > >>>>>> > >>>>>> (expr_list:REG_DEAD (reg:QI 0 ax [68]) > >>>>>> > >>>>>> (expr_list:REG_DEAD (reg:SI 1 dx > >>>>>> [orig:66 _cdHE ] [66]) > >>>>>> > >>>>>> (expr_list:REG_UNUSED (reg:CC 17 > >>>>>> flags) > >>>>>> > >>>>>> (expr_list:REG_UNUSED > >>>>>> (reg:SI 1 dx [orig:66 _cdH > >>>>>> > >>>>>> E ] [66]) > >>>>>> > >>>>>> (nil)))))))))) > >>>>>> > >>>>>> Data/ByteString.hc:8631: confused by earlier errors, bailing > >>>>>> out > >>>>>> > >>>>>> make[1]: *** [Data/ByteString.raw_s] Error 1 > >>>>>> > >>>>>> make: *** [all] Error 1 > >>>>>> > >>>>>> I am insufficiently experienced with the build process to > >>>>>> know if this was from an error in creating the .hc file or a > >>>>>> problem with the source. I have noticed that the file > >>>>>> ByteString.hs seems to be new. > >>>>>> > >>>>>> I am building the .hc files on 386 linux (Ubuntu breezy > >>>>>> badger): > >>>>>> > >>>>>> linux kernel 2.6.12 > >>>>>> > >>>>>> ghc-6.5.20060502 is installed > >>>>>> > >>>>>> gcc is 4.0.2 > >>>>>> > >>>>>> I am using the registerised .hc files to bootstrap to Max OS > >>>>>> X x86 > >>>>>> > >>>>>> Mac OS X 10.4.6 > >>>>>> > >>>>>> no ghc installed > >>>>>> > >>>>>> gcc is 4.0.1 (as included in Xcode) > >>>>>> > >>>>>> Reilly Hayes > >>>>> > >>>>> > >>>>>>_______________________________________________ > >>>>>>Glasgow-haskell-users mailing list > >>>>>>Glasgow-haskell-users@haskell.org > >>>>>>http://www.haskell.org/mailman/listinfo/glasgow-haskell-users > >>>>> > >>>>> > >>>>>_______________________________________________ > >>>>>Glasgow-haskell-users mailing list > >>>>>Glasgow-haskell-users@haskell.org > >>>>>http://www.haskell.org/mailman/listinfo/glasgow-haskell-users > >>> > >>> > >>>_______________________________________________ > >>>Glasgow-haskell-users mailing list > >>>Glasgow-haskell-users@haskell.org > >>>http://www.haskell.org/mailman/listinfo/glasgow-haskell-users > >>Reilly Hayes > >>[EMAIL PROTECTED] > > > > Reilly Hayes > > > > > > _______________________________________________ > Glasgow-haskell-users mailing list > Glasgow-haskell-users@haskell.org > http://www.haskell.org/mailman/listinfo/glasgow-haskell-users _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users