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=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.224.219.146 with SMTP id hu18mr12486995qab.3.1364418644022; Wed, 27 Mar 2013 14:10:44 -0700 (PDT) X-Received: by 10.49.127.145 with SMTP id ng17mr1299210qeb.9.1364418643988; Wed, 27 Mar 2013 14:10:43 -0700 (PDT) Path: border1.nntp.ams3.giganews.com!border2.nntp.ams3.giganews.com!border2.nntp.ams2.giganews.com!border4.nntp.ams.giganews.com!border2.nntp.ams.giganews.com!nntp.giganews.com!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!news.glorb.com!t2no22706150qal.0!news-out.google.com!k8ni10926qas.0!nntp.google.com!t2no22706147qal.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Wed, 27 Mar 2013 14:10:43 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=172.0.242.94; posting-account=-WG8VgoAAAAlWewKFi0J7zSTMYXZyyK3 NNTP-Posting-Host: 172.0.242.94 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <6e2beaab-5d23-48c8-84c2-1729e245cd6e@googlegroups.com> Subject: Re: Runtime startup code for the GNAT Runtime...and a bit of humble pie. From: Diogenes Injection-Date: Wed, 27 Mar 2013 21:10:44 +0000 Content-Type: text/plain; charset=ISO-8859-1 X-Original-Bytes: 3312 Xref: number.nntp.dca.giganews.com comp.lang.ada:180817 Date: 2013-03-27T14:10:43-07:00 List-Id: On Wednesday, March 27, 2013 3:07:37 PM UTC-4, Randy Brukardt wrote: > > That's obviously compiler-specific (and probably specific to particular > > compiler versions as well). You need to specify a compiler and version to > > have any hope of a useful answer. (Certainly the answer is wildly different > > for Janus/Ada vs. GNAT vs. ObjectAda.) > > > > I really wouldn't expect such a list to exist. We don't have one for > > Janus/Ada, for instance; it's certainly the case that there are many things > > that require minimal runtime support but we've never had any reason to > > figure it out. I was considering the bootstrapping procedure actually. I was curious if it was possible to do the actual startup code in Ada, with maybe a little Assembler thrown in. No doubt that it's compiler specific. I'm using GNAT/GCC 4.4 > > Janus/Ada always assumes a small runtime. Since we provide the complete > > source code to the runtime in the professional packages, and the code > > includes a number of minimal support switches, you could make a version that > > requires nothing but memory setup and some form of "put_line" without too > > much trouble. (We used to sell embedded versions for bare 16-bit processors, > > but that business didn't translate to 32-bit processors.) I suspect that the > > situation is similar for GNAT. > > > > As far as correctness goes, that's what the ACATS is for. (Figuring out how > > to run it on a bare machine might be interesting, however.) It won't prove > > that absolutely everything works, but you'll get a fair certainty that you > > didn't make any major mistakes. Combine that with the SPARK tools and I can be even more certain. > > Randy. Diogenes