This is the mail archive of the
mailing list for the GCC project.
Re: precompiled header support
- From: Gunther Nikl <gni at gecko dot de>
- To: Marc Espie <espie at quatramaran dot ens dot fr>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 1 Jun 2004 14:14:15 +0200
- Subject: Re: precompiled header support
- References: <20040507122627.GA71530@lorien.int.gecko.de> <firstname.lastname@example.org> <20040511075741.GA83775@lorien.int.gecko.de> <email@example.com> <20040512115242.GA93704@lorien.int.gecko.de> <20040521181053.7EAD3133F4@quatramaran.ens.fr>
On Fri, May 21, 2004 at 08:10:53PM +0200, Marc Espie wrote:
> In article <firstname.lastname@example.org> you write:
> >Gunther Nikl <email@example.com> writes:
> >> > Create a host-amiga.c file, mention it in config.host, and define
> >> > HOST_HOOKS_GT_PCH_GET_ADDRESS to a function which simply calls
> >> > error().
> >> That looks like a good solution. I just noticed that the PCH support in
> >> 3.4.0 and mainline is different. Mainline will probably fail because
> >> default_gt_pch_use_address would return -1. Hm, I suppose taht function
> >> should simply return -1 and not allocate any memory. Its highly unlikely
> >> that base and addr will ever match with the default_gt_pch_get_address.
> >Yes, the default versions of the host hook, if you don't have mmap,
> >will essentially always fail. I guess the effect on mainline is that
> >you will be able to create a PCH on the Amiga, but you will never be
> >able to use it.
> >The default host hooks do the right thing if anybody implements the
> >pointer swizzling required to avoid the "had to relocate PCH" error.
> >I think that is what will be needed on the Amiga.
> On the other hand, you can have resident stuff. If you want PCH stuff,
> just hook it up at one given address, and never let go.
You are mixing unrelated stuff here. Residentable programs save memory
because the code segment can be shared between multiple/concurent users
and it saves load time. However, a PCH being an AmigaOS executable would
solve the address problem because it would have the relocation
information to adapt to any given address. But I don't think that this
is feasable to implement.
> If you want to preserve it through system reboots, just reserve it from
> start-up, that's how persistent ram-disks work on that machine.
But a ram-disk has no relation to PCH. Playing with absolute adresses
is nothing that belongs into GCC.
> I haven't played with an amiga for a few years, but last I remember, I
> was almost forced to install a vmem handler to use gcc---it gobbles
> insane amounts of memories, compared to most amiga `in-use' (I had
> 16M of memory, which was quite a hefty amount)---that, plus a somewhat
> unstable stack auto-extender, meant gcc never really flew on that
I have no idea how much memory GCC requires as a minimum. I am using
C only and I never had troubles with only 128+12 MB.
> I really have trouble seeing a recent gcc being useful on that class
> of machine, unless it has a heck of a lot more memory than I had, or
> unless some kind of vmem handler has been installed...
GCC users are expected to have more than 16MB of memory and anyone
using GCC3 on AmigaOS certainly has more than 16MB of memory.