[llvm-commits] [PATCH] Added TCE target to llvm-gcc
Mikael Lepistö
mikael.lepisto at tut.fi
Thu Mar 26 07:01:45 PDT 2009
Duncan Sands wrote:
> Hi, are you planning to get this target into mainline gcc
> at some point?
I don't think that it's possible since we generate new version of our
backend for each processor configuration (with different instruction
sets and registers) and load it as a plugin to our own llc replacement.
This replacement also converts llvm bitcode to our native format.
> Why do you only emit bitcode - are you
> planning to implement an LLVM code generator for your
> target?
In short: We already have LLVM code generator, but it's quite different
approach that usual llvm backends...
We do linking and optimizing on llvm IR (also linking static newlib to
program). After we have fully linked bitcode we build code generation
plugin which contains information about customizes resources of the
processor. That plugin generates our native IR out of bitcode and use
generated IR for scheduling program to a specific processor configuration.
So basically bitcode programs are universal programs, which can be
converted to run on any different processor configuration. For more
information on tce.cs.tut.fi page contains tutorials and videos about
the system. There is also a masters thesis about to be released (in few
months) which covers our compiler chain.
> Finally, does this break the llvm-gcc build if
> llvm-gcc is configured with LLVM support disabled?
>
Looks like it compiled fine without special --target setting. However
--target=tce-llvm without --enable-llvm failed. Patch has really small
changes to configure system just for recognizing that new
--target=tce-llvm target exists.
> Ciao,
>
> Duncan.
>
Mikael
More information about the llvm-commits
mailing list