FWIW the CGP sub_i_i_i opcode on the PowerBook
0x001048d4 :lwz r0,8(r30)
0x001048d8 :lwz r2,12(r30)
0x001048dc :lwzxr0,r27,r0
0x001048e0 :lwzxr2,r27,r2
0x001048e4 :lwz r9,4(r30)
0x001048e8 :subfr0,r2,r0
0x001048ec :stwxr0,r27,r9
0x001048f0 :
Dan Sugalski <[EMAIL PROTECTED]> wrote:
> Or 3) Toss the prederef stuff entirely.
And here is, why I want to keep the CGP core:
sub_i_i_i
0x81bbef0 : mov0x4(%esi),%ecx
0x81bbef3 : mov0x8(%esi),%edx
0x81bbef6 : mov0xc(%esi),%eax
0x81bbef9 : add$0x10,%esi
0x8
Dan Sugalski <[EMAIL PROTECTED]> wrote:
> While I want to keep the switch core, I'm still not seeing the need
> for prederef with it. I'm presuming this crept in at some point and
> just needs un-creeping?
Using prederef for switch has one advantage: it's a bit faster. Before
the indirect registe
At 11:12 AM +0100 11/1/04, Leopold Toetsch wrote:
Leopold Toetsch wrote:
Or 3) Toss the prederef stuff entirely.
Well, the prederefed function core (parrot -P) is for sure not necessary.
Patches welcome to remove the plain prederefed function core
F. F is
still needed as an abstract base class o
x for prederefed run cores. It's
unoptimized currently. make fulltest is passing again here.
Or 3) Toss the prederef stuff entirely.
Well, the prederefed function core (parrot -P) is for sure not
necessary.
Patches welcome to remove the plain prederefed function core
F. F is still
ne
Duraid Madina wrote:
Dan Sugalski wrote:
Or 3) Toss the prederef stuff entirely.
Which might not be quite as bad as it sounds: on at least one "strange
platform" (IA64 HP-UX) the native C compiler gets the switch core
running faster than the prederef core! (!)
Err, the switched core *is* a prede
Dan Sugalski wrote:
At 11:13 AM +0200 10/28/04, Leopold Toetsch wrote:
1) use frame pointer relative addressing:
+ prederefed code is usable by different threads too
- ~4 times increase in code size of core_ops_*.{c,o} [1]
2) Re-prederef on function calls, if frame pointer differs
+ no imp
Dan Sugalski wrote:
Or 3) Toss the prederef stuff entirely.
Which might not be quite as bad as it sounds: on at least one "strange
platform" (IA64 HP-UX) the native C compiler gets the switch core
running faster than the prederef core! (!)
Duraid
At 11:13 AM +0200 10/28/04, Leopold Toetsch wrote:
With the indirect register addressing all prederefed run cores
(Prederefed, CGP, Switch) are currently not functional, as these run
cores have absolute addresses in the prederefed code.
I see two ways to fix it:
1) use frame pointer relative
With the indirect register addressing all prederefed run cores
(Prederefed, CGP, Switch) are currently not functional, as these run
cores have absolute addresses in the prederefed code.
I see two ways to fix it:
1) use frame pointer relative addressing:
+ prederefed code is usable by
10 matches
Mail list logo