[llvm-dev] [RFC] Heterogeneous LLVM-IR Modules
Renato Golin via llvm-dev
llvm-dev at lists.llvm.org
Thu Jul 30 09:11:24 PDT 2020
On Thu, 30 Jul 2020 at 16:58, Johannes Doerfert
<johannesdoerfert at gmail.com> wrote:
> I mean, you can put the command line string that set the options into
> the first place, right? That is as long as it initially was, or maybe I
> am missing something.
Options change with time, and this would make the IR incompatible
across releases without intentionally doing so.
> To recap things that might "differ" from the original proposal:
> - We want multiple target triples.
> - We probably want multiple data layouts.
> - We probably want multiple pass pipelines, with different (cmd
> line) options and such.
> - We might want to make modules self contained wrt. target options
> such that you can create TTI and friends w/o repeating driver
> options.
The extent of the separation is what made me suggest that it might be
easier, in the end, to carry multiple modules, from different
front-ends, through multiple pipelines but interacting with each
other.
I guess this is why David made a parallel with LTO, as this ends up as
being a multi-device LTO in a sense. I think that will be easier and
much less intrusive than rewriting the global context, target flags,
IR annotation, data layout assumptions, target triple parsing, target
options bundling, etc.
--renato
More information about the llvm-dev
mailing list