Article View: comp.sys.ibm.pc.programmer
Article #730Re: Looking for experience with big project upgrades from MSC 5.1 to 6.0
From: Russell Herman
Date: Thu, 14 Jun 1990 02:12
Date: Thu, 14 Jun 1990 02:12
75 lines
3829 bytes
3829 bytes
In article <1990Jun13.132843.13966@Octopus.COM> pete@octopus.COM (Pete Holzmann) writes:
>Has anybody out there been through (or most of the way through) an upgrade
>of a big pile of code from 5.1 to 6.0? If so, I (and probably others in
>this newsgroup) would love to benefit from your experience!
I was originally going to reply to Pete, but it occurred to me that I hadn't
seen any kind of general summary of MSC6 experiences starting from MSC5.1
source or other UNIX-based source. So I'll hunker down by the campfire and
tell my story in the hopes that some other people will as well.
I guess I qualify in the MSC5.1 to 6 large project port dept. It
was PERL, which is about as large I want to tackle single-handedly. I started
from Diomidis Spinellis' port. After getting it to compile under MSC5.1,
I took the precaution of also porting Larry's regression test. Problems
showed up that were resistant to various code twiddles and optimization
toggles.
When MSC6 arrived, I pushed the source through it. A few changes were
necessary where some CYA redeclarations for multiplatforms didn't work
any longer. Just wait til you see what MSC6's declaration of 'errno' looks
like! It wasn't a big deal though. The result passed the regression
test, and you'll be seeing it announced on SIMTEL20 in the near future.
I'm also fooling around with PCCTS and GNUCHESS3.1.
Observations
1. The code isn't much smaller.
2. Some of the code looks faster, but I haven't measured anything
yet. Probably won't either, too much like work :-)
3. Global optimization isn't worth much. The compiler spews a
steady stream of 'function too large for global optimizer'
messages for functions that aren't absurdly large, at least
by professional standards.
4. With /Ox, it's slooow. 6 temp files can be opened. I wouldn't
even dream of using the Workbench. BTW, I'm on a 20MHz 386
system with a 30-odd msec disk, no caching, no RAMDISK.
Sucks back a lot of disk space too.
5. Under MSC5.1, the first thing I do to a piece of UNIX code is
insert a
#define register
in some central header file. This hasn't changed! Unfortunately
this may require changes in the body of the code, since
some code contains
register x;
in lieu of
register int x; or register unsigned x;
Portabilists please keep in mind!
6. I've had 2 compiler blowups, both which could be worked around.
7. The EMM Codeview is nice. Contrary to early reports, I can
run it in a DV partition and TELIX in another. EXT=512 is
on my QEMM call. No himem.sys or anything like that; QEMM5
does the whole job.
8. NMAKE is a long-overdue addition. It's big enough though that
with large modules, there isn't enough room for it and the
compiler. Ought to be smart enough to swap itself out like
OPUS MAKE can.
9. INTEL architecture highlights malloc and pointer problems.
On a few other ports, I've hung or trashed memory, gotten
close to isolating the problem, and sent info back to authors.
I always get back a fix :-)
The bottom line is, I don't regret having spent the $$. I do hope, though,
to see a 6.1 upgrade in about six months for around $25 that will fix some
of the bugs/problems.
Russ Herman
INTERNET: rwh@me.utoronto.ca UUCP: ..uunet!utai!me!rwh
Technical Details
Message-ID:
<90Jun13.221146edt.20004@me.utoronto.ca>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!me!rwhReferences:
<1990Jun13.132843.13966@Octopus.COM>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!me!rwh Newsgroups: comp.sys.ibm.pc.programmer From: rwh@me.utoronto.ca (Russell Herman) Subject: Re: Looking for experience with big project upgrades from MSC 5.1 to 6.0 Message-ID: <90Jun13.221146edt.20004@me.utoronto.ca> Organization: none References: <1990Jun13.132843.13966@Octopus.COM> Date: 14 Jun 90 02:12:06 GMT