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 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Brian Drummond Newsgroups: comp.lang.ada Subject: Re: Is this Forum Moderated? Date: Mon, 21 May 2018 11:40:13 -0000 (UTC) Organization: A noiseless patient Spider Message-ID: References: <65d93062-f55d-435f-a099-3c8ee75f2705@googlegroups.com> <76f63959-e26a-407e-a029-b13fd12540d3@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Mon, 21 May 2018 11:40:13 -0000 (UTC) Injection-Info: h2725194.stratoserver.net; posting-host="310f91d4fe5a3132c6daf1b467adc96a"; logging-data="20342"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18PtqWql5LzQz5vuKk9iLJAVhfqYVDacNM=" User-Agent: Pan/0.141 (Tarzan's Death; 168b179 git.gnome.org/pan2) Cancel-Lock: sha1:NUsTXstA3L6fkENTtwLxETBJ3sg= Xref: reader02.eternal-september.org comp.lang.ada:52536 Date: 2018-05-21T11:40:13+00:00 List-Id: On Sun, 20 May 2018 09:18:15 -0700, Dan'l Miller wrote: > > There is a fair chance that LLVM already has all the primitives needed > to express every conceivable Ada construct and semantics. (GNAT didn't > have to extend GCC's C IR very much over all these years; there have > been 10 tree types added to GCC's C IR for Ada topics, and even 6 of > those have varying degrees of ‘it never actually shows up in the tree > downstream from GIGI’.) One it doesn't have : support for nested subprograms. It's too heavily modelled on C. I believe this was one of the problems Dragonegg was facing. The GHDL project already faced this, when translating its own IR ("ortho") to the LLVM backend, and overcame it successfully, so it's not a total showstopper I haven't dived into src/ortho/llvm in the ghdl source tree to find out how Tristan did it. -- Brias