[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 65d9d8: Fix symbolic C stack backtrace in WIN64 builds.

Eliot Miranda noreply at github.com
Thu Sep 30 01:36:29 UTC 2021

  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 65d9d814015f68f472966bdd6ee0263bd4d1c9e0
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2021-09-29 (Wed, 29 Sep 2021)

  Changed paths:
    M platforms/win32/vm/sqWin32Backtrace.c
    M platforms/win32/vm/sqWin32Main.c

  Log Message:
  Fix symbolic C stack backtrace in WIN64 builds.

In a CLang-compiled debug VM we now see
Stack backtrace:
    [00007FF7B97495AC] indirect + 0x6c in VirtendConsole.exe
    [00007FF7B97494B8] crashInThisOrAnotherThread + 0x48 in VirtendConsole.exe
    [00007FF7B966E8D6] primitiveCrashVM + 0xe6 in VirtendConsole.exe
    [00007FF7B965A83F] primitiveExternalCall + 0x2bf in VirtendConsole.exe
    [00007FF7B9653B1F] interpretMethodFromMachineCode + 0x2ff in VirtendConsole.exe
    [00007FF7B96593C2] ceSendsupertonumArgs + 0xc72 in VirtendConsole.exe
    [000000000003B863] ??? + 0x0 in (null)

Alas in a Clang-compiled -O2 VM we see only
Stack backtrace:
    [00007FF7EAEF7593] indirect + 0x43 in VirtendConsole.exe
    [00007FF7F3446A58] ??? + 0x0 in (null)

So still some investigation of Clang code generation is required, but the basic
facility works if the stack can be walked.

More information about the Vm-dev mailing list