[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 5551b4: CogVM source as per VMMaker.oscog-eem.1975

GitHub noreply at github.com
Wed Nov 2 22:49:51 UTC 2016


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 5551b4de0b3795c6d23ec5aa3b228aa2504fe9fd
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/5551b4de0b3795c6d23ec5aa3b228aa2504fe9fd
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2016-11-02 (Wed, 02 Nov 2016)

  Changed paths:
    M nsspur64src/vm/cogit.h
    M nsspur64src/vm/cogitX64.c
    M nsspur64src/vm/cointerp.c
    M nsspur64src/vm/cointerp.h
    M nsspur64src/vm/gcc3x-cointerp.c
    M nsspursrc/vm/cogit.h
    M nsspursrc/vm/cogitARMv5.c
    M nsspursrc/vm/cogitIA32.c
    M nsspursrc/vm/cogitMIPSEL.c
    M nsspursrc/vm/cointerp.c
    M nsspursrc/vm/cointerp.h
    M nsspursrc/vm/gcc3x-cointerp.c
    M nsspurstack64src/vm/gcc3x-interp.c
    M nsspurstack64src/vm/interp.c
    M nsspurstacksrc/vm/gcc3x-interp.c
    M nsspurstacksrc/vm/interp.c
    M spur64src/vm/cogit.h
    M spur64src/vm/cogitX64.c
    M spur64src/vm/cointerp.c
    M spur64src/vm/cointerp.h
    M spur64src/vm/gcc3x-cointerp.c
    M spursista64src/vm/cogit.h
    M spursista64src/vm/cogitX64.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/gcc3x-cointerp.c
    M spurstack64src/vm/gcc3x-interp.c
    M spurstack64src/vm/interp.c
    M spurstacksrc/vm/gcc3x-interp.c
    M spurstacksrc/vm/interp.c
    M src/plugins/MacMenubarPlugin/MacMenubarPlugin.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/cointerpmt.c
    M src/vm/cointerpmt.h
    M src/vm/gcc3x-cointerp.c
    M src/vm/gcc3x-cointerpmt.c
    M stacksrc/vm/gcc3x-interp.c
    M stacksrc/vm/interp.c

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

Fix the root cause of the bugs wrngly fixed in VMMaker.oscog-eem.1971 & 1972.
Eliminate the extBFirstZero variable and its effects on assembling a signed
extB.  This restores the Newspeak and no-access-control Cadence Newspeak VMs.

Eliminate C compiler warning about taking absolute value of positive integer:
correctly store the value in a signed integer, then take the absolute value,
in #rewriteCPICJumpAt:target: and #findEmptySegNearestInSizeTo:

Fix a typo in #flushICacheFrom:to:.

Use #sqLong type in is32BitSignedImmediate: because it's guaranteed to be
64bits long. #long can be 32bits for LLP64 compilers.

Another 64bits fix for MacMenuBarPlugin.

Fix bug https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/23
ioGetClockLogSizeUsecsIdxMsecsIdx prototype is not 64bits compatible

The problem is in primitiveClockLogAddresses for which type inference for
a pointer on a sqInt, not a pointer on an int as first parameter.
Workaround by explicitly declaring #runInNOut as sqInt.




More information about the Vm-dev mailing list