[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 8060b8: Unify Processor/OS detection a bit more, also a bi...

GitHub noreply at github.com
Tue Jul 26 17:26:11 UTC 2016


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 8060b80f72d2ecca1ec495247f51689f5b362645
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/8060b80f72d2ecca1ec495247f51689f5b362645
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M platforms/Cross/plugins/IA32ABI/ia32abi.h
    M platforms/win32/vm/sqConfig.h
    M platforms/win32/vm/sqWin32.h

  Log Message:
  -----------
  Unify Processor/OS detection a bit more, also a bit more complete


  Commit: 9d072341ffd49091d7b50da5b57597302b74df04
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/9d072341ffd49091d7b50da5b57597302b74df04
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M platforms/Cross/vm/sqAtomicOps.h

  Log Message:
  -----------
  Allow bit-detection via limits.h macro


  Commit: 6f038ce094a9b8f7511206cc53bbcf51a63a0a1f
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/6f038ce094a9b8f7511206cc53bbcf51a63a0a1f
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M platforms/Cross/vm/sqHeapMap.c
    M platforms/win32/plugins/B3DAcceleratorPlugin/sqWin32OpenGL.c
    M platforms/win32/plugins/B3DAcceleratorPlugin/sqWin32OpenGL.h
    M platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c
    M platforms/win32/vm/sqPlatformSpecific.h
    M platforms/win32/vm/sqWin32.h
    M platforms/win32/vm/sqWin32Backtrace.c
    M platforms/win32/vm/sqWin32Main.c

  Log Message:
  -----------
  Be more MSVC specific where applicable


  Commit: 82d1c33a1c5756b0a76bd37539d15a4824368d59
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/82d1c33a1c5756b0a76bd37539d15a4824368d59
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/win32/plugins/B3DAcceleratorPlugin/sqWin32OpenGL.c
    M platforms/win32/plugins/FilePlugin/sqWin32File.h
    M platforms/win32/plugins/FilePlugin/sqWin32FilePrims.c
    M platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c
    M platforms/win32/plugins/SecurityPlugin/sqWin32Security.c
    M platforms/win32/vm/sqWin32.h
    M platforms/win32/vm/sqWin32Directory.c
    M platforms/win32/vm/sqWin32ExternalPrims.c
    M platforms/win32/vm/sqWin32Main.c
    M platforms/win32/vm/sqWin32PluginSupport.c
    M platforms/win32/vm/sqWin32Prefs.c
    M platforms/win32/vm/sqWin32Prefs.h
    M platforms/win32/vm/sqWin32Threads.c
    M platforms/win32/vm/sqWin32Window.c

  Log Message:
  -----------
  Fix MSVC/WINAPI code, fix formatting

 - Use different encodings consistently.
   * Squeak is alwasy UTF8 (now)
   * Windows is _either_ UCS2 _or_ ANSI, NEITHER of witch is UTF8.
   * We had conversation code for FilePrims, use them throughout now.
   * _always_ convert on the ways Squeak<->Windows API
   * Respect `UNICODE` while doing so.
 - Deal with MAX_PATH and actual max paths lengths.
 - Document some decisions a wee bit better.
 - Don't lookup shell32 dynamically, Win95 is of legal drinking age...
 - be more consistent in formatting (brackets, tab vs space)


  Commit: 118342fe2e188194a60ac0205126c9c6e42b3975
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/118342fe2e188194a60ac0205126c9c6e42b3975
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/Cross/vm/sqAtomicOps.h

  Log Message:
  -----------
  Atomic 64bit get/set on 32 bit windows

Someone please review :)


  Commit: d11b90114ce2a1643d6112ade1fa26d4bd5c5c73
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/d11b90114ce2a1643d6112ade1fa26d4bd5c5c73
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/Cross/vm/sqMemoryFence.h

  Log Message:
  -----------
  Use 'lock add' based memfence for Windows

see https://shipilev.net/blog/2014/on-the-fence-with-dependencies


  Commit: 03c0ef741a5def6d8e94e98c4c9ccafa7fd38187
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/03c0ef741a5def6d8e94e98c4c9ccafa7fd38187
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M .appveyor.yml
    M .travis_deploy.sh
    M platforms/Cross/plugins/BitBltPlugin/BitBltGeneric.c
    M platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c
    M platforms/win32/plugins/LocalePlugin/sqWin32Locale.c
    M platforms/win32/plugins/MIDIPlugin/sqWin32MIDI.c
    M platforms/win32/plugins/SocketPlugin/sqWin32NewNet.c

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/Cog' into krono/win32-fixes

* origin/Cog:
  Make genericCompareColors declaration 64bits compatible.
  Add 2 missing return for warning elimination
  Modernize MIDI interface for win64
  fix typo in appveyor build script
  try to make sure that appveyor build fails correctly
  fix bintray cleanup script
  Correct win32  sqLocCurrencyNotation


  Commit: d5373c34ae8f0814a6435d2d9de6c367fb4c4b63
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/d5373c34ae8f0814a6435d2d9de6c367fb4c4b63
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/Cross/vm/sqMemoryFence.h

  Log Message:
  -----------
  Use MemoryBarrier on Win64

We leave the 32 bit version, tho. The `MemoryBarrier` expands to a
`__faststorefence` on x86_64, which compiles to

    lock or DWORD PTR [rsp], ebp

The 32bit code we use is quite similar but avoids the ebp access:

    lock add [esp], 0

whereas the x86 `MemoryBarrier` is a more costly `xchg [...], eax`.


  Commit: 5da712ffc5af51b67c28400507b2d436681538fc
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/5da712ffc5af51b67c28400507b2d436681538fc
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

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

  Log Message:
  -----------
  Make sure DWORDs are printed correctly


  Commit: 9c628efa0357dd7ac2583a32065870584b50e49b
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/9c628efa0357dd7ac2583a32065870584b50e49b
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/win32/vm/sqWin32.h

  Log Message:
  -----------
  Remove dead code


  Commit: 9c4f97fc3f604446241f5367f9e50f9156c274c6
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/9c4f97fc3f604446241f5367f9e50f9156c274c6
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/win32/vm/sqWin32.h

  Log Message:
  -----------
  Fix typo

Thanks @timfel and AppVeyor


  Commit: 9b0eac14ef337bf476f4d93668c76f5742b1e14d
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/9b0eac14ef337bf476f4d93668c76f5742b1e14d
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M .appveyor.yml
    M .travis_build.sh

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/Cog' into krono/win32-fixes

* origin/Cog:
  add shebang line and exec travis script on appveyor


  Commit: 7ae42107b93f290be754b321e4e1423254a5b9d7
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/7ae42107b93f290be754b321e4e1423254a5b9d7
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

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

  Log Message:
  -----------
  _cexit takes no arguments


  Commit: 65cc9e66b5eca2d47881693257f5e5ce1eaab419
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/65cc9e66b5eca2d47881693257f5e5ce1eaab419
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M .travis_build.sh

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/Cog' into krono/win32-fixes

* origin/Cog:
  Make sure mvm bails


  Commit: b20fe984b21335cab600d95ae8ae5eb2582df69b
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/b20fe984b21335cab600d95ae8ae5eb2582df69b
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

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

  Log Message:
  -----------
  Remove conflicting extern


  Commit: e5997cbc783349711bb26b51f1825245f08c7978
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/e5997cbc783349711bb26b51f1825245f08c7978
  Author: Tobias Pape <tobias at netshed.de>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M .travis_build.sh
    M platforms/win32/vm/sqWin32Main.c

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/Cog' into krono/win32-fixes

* origin/Cog:
  Again, try to harden travis_build/appveyor. Fix Extern


  Commit: e50938c0e5d8e7edfb2c5e52dba17cbf93af7027
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/e50938c0e5d8e7edfb2c5e52dba17cbf93af7027
  Author: Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M platforms/Cross/plugins/IA32ABI/ia32abi.h
    M platforms/Cross/vm/sqAtomicOps.h
    M platforms/Cross/vm/sqHeapMap.c
    M platforms/Cross/vm/sqMemoryFence.h
    M platforms/win32/plugins/B3DAcceleratorPlugin/sqWin32OpenGL.c
    M platforms/win32/plugins/B3DAcceleratorPlugin/sqWin32OpenGL.h
    M platforms/win32/plugins/FilePlugin/sqWin32File.h
    M platforms/win32/plugins/FilePlugin/sqWin32FilePrims.c
    M platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c
    M platforms/win32/plugins/SecurityPlugin/sqWin32Security.c
    M platforms/win32/vm/sqConfig.h
    M platforms/win32/vm/sqPlatformSpecific.h
    M platforms/win32/vm/sqWin32.h
    M platforms/win32/vm/sqWin32Backtrace.c
    M platforms/win32/vm/sqWin32Directory.c
    M platforms/win32/vm/sqWin32ExternalPrims.c
    M platforms/win32/vm/sqWin32Main.c
    M platforms/win32/vm/sqWin32PluginSupport.c
    M platforms/win32/vm/sqWin32Prefs.c
    M platforms/win32/vm/sqWin32Prefs.h
    M platforms/win32/vm/sqWin32Threads.c
    M platforms/win32/vm/sqWin32Window.c

  Log Message:
  -----------
  Merge pull request #34 from OpenSmalltalk/krono/win32-fixes

Fixes for Windows


Compare: https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/df60f318285c...e50938c0e5d8


More information about the Vm-dev mailing list