comp.lang.ada
 help / color / mirror / Atom feed
From: "Dan'l Miller" <optikos@verizon.net>
Subject: Re: disruptors of & inventory of Ada compilers and latest their era of ISO8652 compliance
Date: Thu, 17 May 2018 11:43:19 -0700 (PDT)
Date: 2018-05-17T11:43:19-07:00	[thread overview]
Message-ID: <f112ee25-72ee-4024-8f63-4c2a2d707b49@googlegroups.com> (raw)
In-Reply-To: <1193667974.548270050.319144.laguest-archeia.com@nntp.aioe.org>

On Thursday, May 17, 2018 at 12:19:22 PM UTC-5, Luke A. Guest wrote:
> There is within the GPLv3 which states if you extract the
> ir from gcc in some way the resultant ir is gplv3. Like I said, see the
> faq.

==PART 1==
Ah, here is the FAQ to which you are referring:  it is the Runtime Exception FAQ, even though for the Target Code versus IR portion this FAQ effectively discusseses both GPLv3 itself (i.e., Target Code) intertwined with the Runtime Exception (i.e., Eligible Compilation Process).

https://www.gnu.org/licenses/gcc-exception-3.1-faq.html

I never said to •extract• any IR via any kind of dump to filesystem or sharing of DRAM with another process.  I said to make LLVM bitcode merely another ISA in the backend of GPLv3ed GCC, as if LLVM were a new hardware-processor IC.  (Then, I pondered an alternate form where LLVM bitcode IR wouldn't be downstream [within the GPLv3ed GCC executable] from GIMPLE, but would [within the GPLv3ed GCC executable] be downstream directly from GNAT IR in their semantically-adorned AST, but all that is still within a single GPLv3ed GCC executable without extract.)

The output of the LLVM-bitcode-IR-as-another-ISA backend would not be LLVM bitcode IR itself.  The LLVM-as-an-ISA backend would be the entirely •all• of LLVM subsumed into GCC (because the so-called MIT License, i.e., X11 License, is compatible with GPLv3).  The entirety-of-LLVM-subsumed-into-GCC-within-the-LLVM-bitcode-IR-as-ISA backend would produce all the actual hardware-processor machine-code targets that LLVM produces, emitted as Target Code in (apparent?) full compliance with GPLv3 and its Runtime Exception because LLVM would be housed within the single GCC executable (and merely emitting garden-variety machine code for hardware processors).

The question regarding GNAT IR becomes:  how much is GNAT injecting _ARM_-defined Adaness when authoring either GENERIC (if it still is present) and/or GIMPLE, where that Adaness was •absent• in GNAT semantically-adorned-AST IR?

==PART 2==
Btw, this brings up big-time another can of worms.  There is a lifter named McSema that takes any x86-64 executable (or library) as input and outputs LLVM bitcode IR—reportedly rather darned good LLVM bitcode IR.  McSema = machine code semantics, a DARPA-funded project.  Almost certainly this would be reverse engineering that is usually prohibited under EULAs.  But does lifting GCC's Target Code x86-executable output trigger the “notwithstanding that” portion of the Runtime Exception:

quoted from the Runtime Exception:
“"Target Code" refers to output from any compiler for a real or virtual target processor architecture, in executable form or suitable for input to an assembler, loader, linker and/or execution phase. •Notwithstanding that•, Target Code does not include data in any format that is used as a compiler intermediate representation, or ••••used for •producing• a compiler intermediate representation••••.”

Does that clause mean that as soon as someone inputs GCC-produced would-have-been-TargetCode into McSema that that x86-64 executable/library •ceases• (downstream) to be Target Code, reverting to an IR, even though it is garden-variety Intel/AMD x86-64 machine code?  Then causing every (downstream) derivative work to be GPLv3ed (via GPLv3 itself) and Runtime Exception revoked (downstream) and thus for good measured GPLv3ed again (via the Runtime Exception revocation)?

(Btw, McSema strips all exception handling out, because currently it is too difficult, so in at least this regard the resulting LLVM bitcode IR is lossy semantically.)

  reply	other threads:[~2018-05-17 18:43 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-09 15:30 disruptors of & inventory of Ada compilers and latest their era of ISO8652 compliance Dan'l Miller
2018-05-09 16:41 ` Lucretia
2018-05-09 17:26   ` Dan'l Miller
2018-05-09 17:34     ` Lucretia
2018-05-09 18:29       ` Dan'l Miller
2018-05-17 14:41       ` Dan'l Miller
2018-05-17 15:56         ` Luke A. Guest
2018-05-17 16:49           ` Dan'l Miller
2018-05-17 17:19             ` Luke A. Guest
2018-05-17 18:43               ` Dan'l Miller [this message]
2018-05-17 20:09               ` Dan'l Miller
2018-05-17 20:23               ` Dan'l Miller
2018-05-18  0:56                 ` Dan'l Miller
2018-05-18 10:47                   ` Lucretia
2018-05-18 11:33                     ` Dan'l Miller
2018-05-18 11:48                       ` Lucretia
2018-05-19  1:48                         ` Dan'l Miller
2018-05-19 13:04                           ` Brian Drummond
2018-05-19 15:04                             ` Dan'l Miller
2018-05-20 13:00                               ` Brian Drummond
2018-05-20 14:12                                 ` Simon Wright
2018-05-21 11:43                                   ` Brian Drummond
2018-05-20 17:24                                 ` Lucretia
2018-05-19 16:01                             ` Simon Wright
2018-05-20  3:02                             ` Shark8
2018-05-19  3:14                         ` Dan'l Miller
2018-05-17 18:42           ` Niklas Holsti
2018-05-18 14:06             ` R R
2018-05-18 14:33               ` Dan'l Miller
2018-05-09 17:36 ` Simon Clubley
2018-05-09 18:25 ` Dan'l Miller
2018-05-09 19:19 ` Niklas Holsti
2018-05-09 21:38 ` Randy Brukardt
2018-05-10  8:00   ` Micronian Coder
2018-05-10  8:49   ` Janus Ada 12 (was Re: disruptors of ...) Jeffrey R. Carter
2018-05-10 20:24     ` Paul Rubin
2018-06-26 20:36   ` disruptors of & inventory of Ada compilers and latest their era of ISO8652 compliance invalid
2018-06-29 22:18     ` Randy Brukardt
2018-07-01  8:44       ` invalid
2018-07-03 22:07         ` Randy Brukardt
2018-07-08 15:46           ` invalid
2018-05-10  7:49 ` Micronian Coder
2018-05-14 13:10 ` Jacob Sparre Andersen
2018-05-14 22:56   ` Randy Brukardt
2018-05-15 15:29   ` Dan'l Miller
2018-05-18 13:02     ` Simon Wright
2018-05-14 18:52 ` gautier_niouzes
2018-05-14 19:37   ` Dmitry A. Kazakov
2018-05-16 19:37     ` gautier_niouzes
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox