On Wed, Apr 22, 2009 at 12:38 PM, Bert Freudenberg <bert@freudenbergs.de> wrote:
 

On 22.04.2009, at 21:13, Eliot Miranda wrote:

On Wed, Apr 22, 2009 at 11:28 AM, Bert Freudenberg <bert@freudenbergs.de> wrote:


On 22.04.2009, at 20:04, Eliot Miranda wrote:

Hi All,

   I need to modify the autoconf scripts in the unix build to arrange to omit the -fomit-frame-pointer flag form on e of the files in Cog.  I've asked Ian for help but he's not responded for whatever reason and I would like to solve the issue up front.  Is anyone familiar enough with autoconf and has the free time to hold my hand through the process.  I haven't got the patience to learn autoconf myself (fundamentally because I think its a heap of crap, waaaay too complicated to be worth the effort) but I would like to have the rest of the VM compiled with -fomit-frame-pointer, essentially for plugin performance, so I don't want to take the easy route and simply omit -fomit-frame-pointer throguhout, and I don't want to spend the time e.g. porting the Newspeak make framework, which would be a good thing in the long run.

TIA
Eliot


Ian is on vacation.

That explains it.
 


Easiest might be to add -fno-omit-frame-pointer when your file is compiled, this should cancel a previous -fomit-frame-pointer.

Right.

Actually, no. -fno-omit-frame-pointer seems to *force* a frame pointer even on platforms that by default have none ... or is that what you need?

Right.  Somewhere (and I haven't found out where) the autoconf configuration decides to apply -fomit-frame-pointer, which is fine as it generates faster code, etc.  But I need (actually, want; I could work around, but shouldn't have to)  a frame pointer for one file, and a subsequent -fno-omit-frame-pointer will override a preceeding -fomit-frame-pointer with the compilers I'm aware of.

 My problem, however, is how to get autoconf to generate a specific compile rule for one file.  I can define the alternative COMPILEALT macro but I can't yet figure out how to spit out that rule for a specific source file withoput hacking it at the wrong place.  But I'm getting closer :/

Assuming you put it in the vm directory, hacking platforms/unix/vm/Makefile.in should do it, no?

Thanks for the suggestion!  tried it but no.  So I think I have to duplicate the ${srcs} collection and processing in mkmf.



- Bert -