[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] b0fc22: CogVM source as per VMMaker.oscog-eem.2970

Eliot Miranda noreply at github.com
Mon Jun 21 02:59:34 UTC 2021


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: b0fc22902a86197a31b26f02346a746a661ff1b3
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/b0fc22902a86197a31b26f02346a746a661ff1b3
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2021-06-20 (Sun, 20 Jun 2021)

  Changed paths:
    M platforms/iOS/vm/OSX/sqSqueakOSXApplication.m
    M platforms/unix/vm/sqUnixMain.c
    M platforms/win32/vm/sqWin32Main.c
    M platforms/win32/vm/sqWin32Window.c
    M spur64src/vm/cogit.h
    M spur64src/vm/cogitARMv8.c
    M spur64src/vm/cogitX64SysV.c
    M spur64src/vm/cogitX64WIN64.c
    M spur64src/vm/cointerp.c
    M spur64src/vm/cointerp.h
    M spur64src/vm/cointerpmt.c
    M spur64src/vm/cointerpmt.h
    M spur64src/vm/gcc3x-cointerp.c
    M spur64src/vm/gcc3x-cointerpmt.c
    M spurlowcode64src/vm/cogit.h
    M spurlowcode64src/vm/cogitARMv8.c
    M spurlowcode64src/vm/cogitX64SysV.c
    M spurlowcode64src/vm/cogitX64WIN64.c
    M spurlowcode64src/vm/cointerp.c
    M spurlowcode64src/vm/cointerp.h
    M spurlowcode64src/vm/gcc3x-cointerp.c
    M spurlowcodesrc/vm/cogit.h
    M spurlowcodesrc/vm/cogitARMv5.c
    M spurlowcodesrc/vm/cogitIA32.c
    M spurlowcodesrc/vm/cogitMIPSEL.c
    M spurlowcodesrc/vm/cointerp.c
    M spurlowcodesrc/vm/cointerp.h
    M spurlowcodesrc/vm/gcc3x-cointerp.c
    M spurlowcodestack64src/vm/gcc3x-interp.c
    M spurlowcodestack64src/vm/interp.c
    M spurlowcodestacksrc/vm/gcc3x-interp.c
    M spurlowcodestacksrc/vm/interp.c
    M spursista64src/vm/cogit.h
    M spursista64src/vm/cogitARMv8.c
    M spursista64src/vm/cogitX64SysV.c
    M spursista64src/vm/cogitX64WIN64.c
    M spursista64src/vm/cointerp.c
    M spursista64src/vm/cointerp.h
    M spursista64src/vm/gcc3x-cointerp.c
    M spursistasrc/vm/cogit.h
    M spursistasrc/vm/cogitARMv5.c
    M spursistasrc/vm/cogitIA32.c
    M spursistasrc/vm/cogitMIPSEL.c
    M spursistasrc/vm/cointerp.c
    M spursistasrc/vm/cointerp.h
    M spursistasrc/vm/gcc3x-cointerp.c
    M spursrc/vm/cogit.h
    M spursrc/vm/cogitARMv5.c
    M spursrc/vm/cogitIA32.c
    M spursrc/vm/cogitMIPSEL.c
    M spursrc/vm/cointerp.c
    M spursrc/vm/cointerp.h
    M spursrc/vm/cointerpmt.c
    M spursrc/vm/cointerpmt.h
    M spursrc/vm/gcc3x-cointerp.c
    M spursrc/vm/gcc3x-cointerpmt.c
    M spurstack64src/vm/gcc3x-interp.c
    M spurstack64src/vm/interp.c
    M spurstack64src/vm/validImage.c
    M spurstacksrc/vm/gcc3x-interp.c
    M spurstacksrc/vm/interp.c
    M spurstacksrc/vm/validImage.c
    M src/vm/cogit.h
    M src/vm/cogitARMv5.c
    M src/vm/cogitIA32.c
    M src/vm/cogitMIPSEL.c
    M src/vm/cointerp.c
    M src/vm/cointerp.h
    M src/vm/gcc3x-cointerp.c
    M stacksrc/vm/gcc3x-interp.c
    M stacksrc/vm/interp.c

  Log Message:
  -----------
  CogVM source as per VMMaker.oscog-eem.2970

Merge VMMaker.oscog-dtl.2968.

Add support for tracing primitives in a single plugin.  The normal 256 element
circular buffer is limited for tracking down plugin bugs because there is so
much noise (context switches, other primitives, etc, etc).  So if the
primTracePluginName is non-nil only calls of primitives within that plugin are
logged (plus a handful of other potentially significant events).  This
successfully traces primitives in e.g. the SoundPlugin:

use via e.g. cogvm -logtrace SoundPlugin myimage.image

Then sending SIGUSR1 one would see something like

primSoundAvailableBytes
primSoundPlaySamples:from:startingAt:
primSoundAvailableBytes
primSoundAvailableBytes
primSoundAvailableBytes
primSoundAvailableBytes
primSoundAvailableBytes
primSoundPlaySamples:from:startingAt:
primSoundAvailableBytes

stack page bytes 4096 available headroom 1480 minimum unused headroom 1912

	(SIGUSR1)




More information about the Vm-dev mailing list