Date: Thu, 22 May 1997 13:12:30 -0700 From: Bill Currie Subject: Re: PGCC Update To: Andrew Crabtree Cc: djgpp AT delorie DOT com Reply-to: billc AT blackmagic DOT tait DOT co DOT nz Message-id: <3384A8AE.78C8@blackmagic.tait.co.nz> Organization: Tait Electronics NZ MIME-version: 1.0 Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7bit References: <199705212132 DOT AA293060344 AT typhoon DOT rose DOT hp DOT com> Precedence: bulk Andrew Crabtree wrote: > I also had a problem with stuff including math_private.h when my file was > math_pri.h (another LFN problem). Renaming math_pri.h to math_private.h worked. > > Full Screen Debugger - This one is weird. > The file fullscr.c just does not want to compile. On optimization -O2 it > appears that pgcc outputs 3 bad opcodes (lines 2764,3965,8081 in the .s file). > They all look like > > xorl %al,%al The offending line is in the asm statement in save_npx (arround line 399). > Mkdoc - This is another strange one. The makefile has an explicit call to ld. > If you just run make you will get undefined references from libc.a, in doprint, > for symbols like ___moddi3. I have no idea what those are or how they got there > (they are not from anything in the .c file or any included .h files. I can only > assume gcc puts them in and they should come from libgcc or something). Anyway, > I found that changing the rules for mkdoc.exe from > > ld ... > stubify ... > > To just > > gcc $^ -O..\..\bin\mkdoc.exe > > Works around the problem. A lot of the auxiliary packages in here have > the optimization flags specified somewhere other than gcc.opt. You will > need to poke around and change them if you want. putting a second -lgcc after -lc on the command line works just as well. > > Meschach - Matrix/Vector Math Library > > This does not compile with -O6. The PCG is aware of the problem. Look for it > to be fixed sometime down the road in pgcc. Most files will compile OK with > -O6, some need to be set at -O2 for it to work. > > The Alignment Problem - > > If anyone can shed some light on this please tell me. Its driving me bonkers. Check the configuration options (one of the header files) of pgcc to see which alignment mode is used (djgpp uses exponential (.align 15 == 32768 byte alignemnt) (2**n). If this is set correctly, then check the sections of code that generate the .align statements to make sure they used the configuration option correctly. Hope this helps Bill -- Leave others their otherness.