[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-smalltalk] JIT issues and todolist
From: |
Holger Hans Peter Freyther |
Subject: |
Re: [Help-smalltalk] JIT issues and todolist |
Date: |
Sun, 16 Jun 2013 23:44:55 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Sun, Jun 16, 2013 at 08:27:25AM +0200, Holger Hans Peter Freyther wrote:
> On Sun, Jun 09, 2013 at 09:18:00PM +0200, Holger Hans Peter Freyther wrote:
> Even on the interpreter:
> An instance of BlockContext
> parent: BlockClosure>>ensure: (BlkClosure.st:271)
> nativeIP: 0
> ip: 8
> sp: -1
> receiver: UndefinedObject
> method: [] in UndefinedObject>>executeStatements
> outerContext: nil
It is really a "wonder" that this is working at all...
VMpr_Object_basicAt
int arg2 = -1;
index_oop(oop1, arg2);
index_oop(oop, 4294967295)
object = OOP_TO_OBJ(oop);
intptr_t instanceSpec = GET_IN..
return index_oop_spec(oop, object, index, instanceSpec);
index_oop_spec(oop, object, 4294967295, 57407)
if (4294967295 < 1)
return NULL
index = 4294967295 - 1;
...
case GST_ISP_POINTER:
maxIndex = 15;
index += instanceSpec >> ISP_NUMFIXEDFIELDS (5)
return object->data[5]
...
Is this signed => unsigned conversion wanted or is it just some
luck that this is working out okay?
holger