Re: Constant operator overloading

2001-10-03 Thread Dan Sugalski

At 11:02 AM 10/3/2001 -0400, Bryan C. Warnock wrote:
>On Wednesday 03 October 2001 10:57 am, Dan Sugalski wrote:
> > Having said that, if you're looking to add optimizations into the
> > assembler, you're probably OK, but I'm not sure it's worth the effort at
> > the moment.
>
>Investigating what effect a non-duplicated, non-overridable set of opcodes
>(namely, the base set of I*, N*, and S* calls) inlined would have on
>performance.

Ah. Yeah, those will all be non-overridable. The opcodes that do the same 
thing with PMCs will also be non-overridable, but since they work through 
the vtables associated with the constants the behaviour can be changed by 
messing with those if need be.

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




Re: Constant operator overloading

2001-10-03 Thread Bryan C . Warnock

On Wednesday 03 October 2001 10:57 am, Dan Sugalski wrote:
> Having said that, if you're looking to add optimizations into the
> assembler, you're probably OK, but I'm not sure it's worth the effort at
> the moment.

Investigating what effect a non-duplicated, non-overridable set of opcodes 
(namely, the base set of I*, N*, and S* calls) inlined would have on 
performance.

(By non-duplicated, meaning that, say, opcodes 0-256, for instance, are 
non-overridable, and the opcode numbers 0-256 are also unusable by 
extensions.)  

-- 
Bryan C. Warnock
[EMAIL PROTECTED]




Re: Constant operator overloading

2001-10-03 Thread Dan Sugalski

At 10:51 AM 10/3/2001 -0400, Bryan C. Warnock wrote:
>Is there anything that might alter an operation involving only constants
>and/or the constant registers at a time other than compile time  (ie, when
>the opcode is generated.)?

For integer, string, and float constants (i.e. I, N, and S regs) no. For 
PMC constants, yes. It's possible that someone might change the behaviour 
of the String class, or the Integer class. (Yanking Ruby into the mix here) 
Whether constant folding can be done is an issue for the compiler and 
optimizer, though. Once things get to the interpreter they're pretty much 
fixed.

Having said that, if you're looking to add optimizations into the 
assembler, you're probably OK, but I'm not sure it's worth the effort at 
the moment.

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




Constant operator overloading

2001-10-03 Thread Bryan C . Warnock

Is there anything that might alter an operation involving only constants 
and/or the constant registers at a time other than compile time  (ie, when 
the opcode is generated.)?

-- 
Bryan C. Warnock
[EMAIL PROTECTED]