This is the mail archive of the gcc@gcc.gnu.org mailing 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]

Re: Getting host and target size and alignment information at build time?


On Fri, 2008-04-11 at 09:07 -0400, Daniel Jacobowitz wrote:
> Please don't reply to an existing thread to post a new question.

Sorry, I didn't realize that would cause a problem.

> Simply put, you can't do this.  All of these things can depend on
> command line options.

It does seem you can only get this information in the context of an
actual compile on the target machine.

> 
> Why not get it out of GCC later?  You don't need to hack up GCC to do
> that.

Later is too late. I need to make decisions before the GCC back end gets
involved (the back end is in a separate OS process). For example "Is
this literal too long for this group data item?". Or "Is a redefine
larger than the original (which is not allowed)?". If the literal is too
long I need to truncate it and give an error message; if a redefine is
too large I need to extend the original and give an error message.

While this can all be done, it means I am duplicating more logic into
the C code, and this has a 4X negative productivity impact versus Lisp.
It also makes it extremely difficult to output error messages in line#
sorted order, because they are issued by different processes.

Still if that's how GCC operates I will need to find some way to deal
with it. Maybe a cut down libgccbackend that doesn't generate code, it
just gives me the information I want.

Tim Josling


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