From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.7 required=5.0 tests=BAYES_00,INVALID_DATE, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!apple!agate!eos!aio!riddler!yow From: yow@sweetpea.jsc.nasa.gov Newsgroups: comp.lang.ada Subject: Re: Reducing size of Ada's EXE files Keywords: EXE size Message-ID: <1991Apr15.094702@riddler.Berkeley.EDU> Date: 15 Apr 91 14:47:02 GMT References: <437@wrdis01.af.mil> <1991Apr12.235101.7245@jpl-devvax.jpl.nasa.gov> Sender: news@aio.jsc.nasa.gov (USENET News System) Reply-To: yow@sweetpea.jsc.nasa.gov Organization: nasa-jsc List-Id: The Meridian compiler for PC DOS systems has a link option (-g) that will remove unused code. The smallest program that I have been able to produce using the Meridian Linker with the -g option is 5K. (The program filled the screen with A's) So it would seem that the Meridian compiler has about 5K of overhead. On a larger program (630K) the linker removes about 100K of stuff. The Major drawback of using the -g option is that it is SLOW. Using it adds about 2 to 3 minutes to a small link (1 to 2 packages) and about 45 minutes to a large link (over 100 packages). (The system used was a 386 25Mhz with a 2 meg disk cache, and a 15 msec ESDI disk). What I would like to see is the SHARING of generic code, not this macro expansion that takes place in compilers. I wrote my own dynamic generic because the generic code was about 20K (object code size) and the generic was used 50+ times on a PC (640K limit). This would never work with the marco expansion because the program would be over 1 meg just for the generics!!! (:-() Bill Yow yow@sweetpea.jsc.nasa.gov My opinions are my own.