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.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,c70bb16b3813e0fd X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1994-11-21 07:21:27 PST Newsgroups: comp.lang.ada Path: nntp.gmd.de!xlink.net!howland.reston.ans.net!news.moneng.mei.com!hookup!news.mathworks.com!noc.near.net!inmet!dsd!mg From: mg@dsd.camb.inmet.com (Mitch Gart) Subject: Re: Ada Portability... NOT! Message-ID: Sender: news@inmet.camb.inmet.com Organization: Intermetrics, Inc. X-Newsreader: TIN [version 1.1 PL8] References: <199411182104.PAA04854@mail.cs.utexas.edu> Date: Mon, 21 Nov 1994 14:59:10 GMT Date: 1994-11-21T14:59:10+00:00 List-Id: One point was implied by Robert's response but wasn't stated explicitly. On the HP RISC architecture, if a program directly references a mis-aligned piece of data (a 4 byte quantity aligned on < 4 bytes, or an 8 byte quantity aligned on < 8 bytes) the machine will trap. This means that at execution time either - the program will crash - the program will get CONSTRAINT_ERROR - the compiler will have to generate lots of extra instructions to "fiddle" as Robert says, that is, to fetch a quantity a few bytes at a time, and put it together into the right data format, then execute some more extra instructions later when storing the data back into memory. The fact that the compiler did none of the above, and instead rejected the rep clause, seems like a reasonable thing to have done on the HP machine. Mitch Gart