Kenneth Zadeck - Re: Link-time optimzation (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]

Mark Mitchell mark@codesourcery.com writes:

http://gcc.gnu.org/projects/lto/lto.pdf

Section 4.2 (Executable Representation) describes the GVM as a stack machine, and mentions load, store, duplicate, and swap operations. But it also discusses having registers which correspond to GIMPLE local variables. The way I put this together is that a MODIFY_EXPR which sets a local variable, say, will be converted to something that computes the expression using a stack and then assigns the value to a register. It's easy to see how to convert such a MODIFY_EXPR into a stack machine and back. But it's not easy to see why that stack machine is going to need, e.g, a swap operation. There is no GIMPLE swap operator. So I may still be confused about something.

You are most likely correct. We either do not need a swap or do not want to encourage people to try to optimize the trees so much that they need a swap.

Ian


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