kevin@kosman.UUCP (Kevin O'Gorman) (06/25/88)
Yuk!! I just got the game Nethack, version 2.3, and went to compile this beast. The make died on the first real source, with an error from *the assembler*!!! Seems that /bin/cc was putting out 'br.b' instructions when it had no good reason to think that the destination was close enough. The assembler had no choice but to choke. I looked around, and the problem seemed to be an assignment to a structure element in a conditional, in such a way that the next thing to do was leave the current function. The end of the function was quite far away. The problem went away if I set it up to not compile things into bitfields (this is controlled by the config.h file). So, the bug has something to do with bitfields in structures. My questions is: does gnu cc do any better?? Anyone out there compiled nethack with gcc, and selected bitfields???
alex@umbc3.UMD.EDU (Alex S. Crain) (06/28/88)
In article <425@kosman.UUCP> kevin@kosman.UUCP (Kevin O'Gorman) writes: >Yuk!! > >I just got the game Nethack, version 2.3, and went to compile this beast. >The make died on the first real source, with an error from *the assembler*!!! > >Seems that /bin/cc was putting out 'br.b' instructions when it had no good >reason to think that the destination was close enough. This is a bug in the optimizer. compile these files without -O and it should work fine. > >My questions is: does gnu cc do any better?? > >Anyone out there compiled nethack with gcc, and selected bitfields??? gcc does not exibit this bug, as far as I know, although I never tried it. -- :alex. nerwin!alex@umbc3.umd.edu alex@umbc3.umd.edu