Daniel Jacobowitz - Re: LLVM/GCC Integration Proposal (original) (raw)

This is the mail archive of the gcc@gcc.gnu.orgmailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

On Fri, Nov 18, 2005 at 05:50:52PM -0800, Chris Lattner wrote:

As describe above, we won't support every target that GCC currently
does. Three options are possible:

  1. We (the GCC community) could build an LLVM to GIMPLE translator.
    This would probably take about as much work as the GIMPLE -> LLVM
    translator (about 4000 LOC), which is not a huge project.
  2. We could build an LLVM to RTL translator.

Let's run with the hypotheticals for a bit here... I have questions for both Chris and for GCC maintainers.

Chris tells me that an LLVM->GIMPLE translator wouldn't have target dependencies. I'm not 100% sure I buy that, but I'll take it as given for now (if not they should be pleasantly small). So suppose we implement that. It seems like a much better choice than RTL anyway.

(A) What bits of LLVM would we be bypassing, and how badly would we miss them?

I know it has its own register allocation and instruction selection, and they have advantages and disadvantages relative to the existing ones. We could either take advantage of those as a framework to modernize GCC's, or move on with Andrew's new design to modernize GCC's.

(B) What bits of GCC would we be bypassing, and how badly would we miss them?

Presumably, many of the shiny new tree optimizers. Ow. But GCC was not in any state to do this sort of surgery a year ago, I think.

-- Daniel Jacobowitz CodeSourcery, LLC


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]