help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] JIT and Debugger/DebugTools


From: Holger Hans Peter Freyther
Subject: [Help-smalltalk] JIT and Debugger/DebugTools
Date: Sun, 22 Dec 2013 14:34:56 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hi,

the only regression/issue I have with the JIT is inside the DebugTools
and e.g. the DebuggerTest>>#testCurrentLine. It happens with aContext ip
pointing to an ip that is way beyond the bytecode of the block.

An instance of BlockContext
  parent: [] in Process>>onBlock:at:suspend: (Process.st:412)
  nativeIP: 69535906
  ip: 48
  sp: -1
  receiver: DebuggerTest>>#testCurrentLine
  method: [] in DebuggerTest>>testCurrentLine
  outerContext: DebuggerTest>>testCurrentLine (debugtests.st:91)
  args:
  temps:
  optimized temps:
  stack: 

...

  byte codes: [
    [1] source code line number 7
    [3] push 5
    [5] store into Temporary[1] from outer context #1
    [7] source code line number 8
        pop stack top
    [9] push 6
   [11] store into Temporary[2] from outer context #1
   [13] source code line number 9
        pop stack top
   [15] push 7
   [17] store into Temporary[3] from outer context #1
        return


...


interestingly the 'ip = 48' is the same as the outercontext. So the
minimal re-producer with the jit is this:

([3+3] newProcess singleStep; suspend; suspendedContext) inspect.

it already steps into the block but somehow does not set the ip
correctly. any ideas?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]