Mail Archives: djgpp/1994/03/30/07:27:42
Date: Wed, 30 Mar 94 09:28:32 +0200
From: eliz AT is DOT elta DOT co DOT il
> ... then you're probably spending too much time in the compiler and
> less time designing and verifying code.
Don't debugging and verifying mean constant recompilation? DJ says that it
takes him less than 30 minutes to compile GCC, which is less than pizza delivery
time. Of course, we in this remote region of ours have different schedules for
pizza delivery, but slashing that down to, say, 10 minutes makes *a lot* of
difference when developing a new version.
[NO FLAMES, PLEASE!] A recompile time of 30 minutes is what I would call a
genuine disaster. It seems to be a problem with the C language itself, or
rather with the preprocessor scheme with .h files.
When I say "disaster" it is because on my PC, I can compile and link 25000
lines of Pascal code in half a minute using Borland Pascal. The module
system of BP is, FYI, less general that C's, but is a major reason for the
difference in speed. The BP-generated code is poor, of course, but in many
situations -- most interactive programs -- that doesn't really matter,
because lots of user's machines are grossly overpowered anyway.
(Hen-and-egg probelm, perhaps.)
; ----------------------------------------
"And now for something completely different!"
I think we could improve the speed of all djgpp programs a lot by making
structures and procedures in go32 aligned properly. As it is now, every-
thing is byte aligned and should be:
Task State Segments paragraph
Procedures paragraph
IDT, GDT paragraph
IDT handlers paragraph
16:16 pointers dword
A good start would be to declare the segments "Para" instead of "Byte" and
add an "Align 10h" at the end. The is in fact easy as the segments are
macro controled.
; ----------------------------------------
Sometimes simple questions are asked on the mailing list, or the somebody
experiences problems running graphics programs under DPMI. When you are
polite enough to answer these, then please to that directly to the poor
user *wiythout* CC-ing the mailing list. This might, just might, reduce
the noise on the list.
; ----------------------------------------
Morten Welinder
terra AT diku DOT dk
- Raw text -