[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 4a29fb: CogVM source as per VMMaker.oscog-eem.2285

Todd Blanchard tblanchard at mac.com
Fri Dec 1 00:17:07 UTC 2017


Lots of ways to skin this cat.

You should always work in a branch, then do pull requests back to master (or whatever branch you want to designate as "official").

If you attempt a merge and it gets ugly

>git merge --abort

should put you back to where you were.

>git checkout <version-id> filename

would let you grab the non merged file from the other committer into your workspace.

git is an incredibly powerful but can be insanely frustrating until you get your a-ha moment.

If you start making a bunch of changes and realize that you might want to get back to where you started - kick off a new branch with

>git checkout -b newbranchname



> On Nov 30, 2017, at 3:14 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> 
> Hi Nicolas, Hi All,
> 
>     ugh.  Merging with git is simply too confusing.  I f**ed up royally and have wasted an afternoon getting merged to change one file.  Nicolas, apologies for all the noise.  I had started this monong to debug the issue.  I discovered it,fixed it, regenerated sources and was about to push when I discovered you had beaten me to it.  But since I had committed the regenerated sources (which were mixed with a few others) I had many conflicts with your regeneration.  I don't see an easy way of pulling your changes, obliterating my regeneration, while keeping the small set of changes that remained meaningful.  It should be easy but I found it horribly time consuming.  Anyway, apologies for the bug, for obscuring your commit with my own merge attempts, and for whining.
> 
> If I come here again, what is the simplest way of resolving conflicts such that
> - one has committed many local changes
> - one can pull a version that one wants to displace one's current version on a file-by-file basis
> Why isn't there a pull -merge -take-theirs?  How does one construct that?
> 
> On Thu, Nov 30, 2017 at 3:03 PM, GitHub <noreply at github.com <mailto:noreply at github.com>> wrote:
>  
>   Branch: refs/heads/Cog
>   Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm <https://github.com/OpenSmalltalk/opensmalltalk-vm>
>   Commit: 4a29fb8a59e7a7d484ab04c8acde558beb42baad
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/4a29fb8a59e7a7d484ab04c8acde558beb42baad <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/4a29fb8a59e7a7d484ab04c8acde558beb42baad>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Changed paths:
>     M build.macos32x86/bochsx64/makeem
>     M build.macos32x86/bochsx86/makeem
>     M build.macos32x86/gdbarm32/makeem
>     M build.macos64x64/bochsx64/makeem
>     M build.macos64x64/bochsx86/makeem
>     M build.macos64x64/gdbarm32/makeem
>     M image/Slang Test Workspace.text
>     M nsspur64src/vm/cogit.h
>     M nsspur64src/vm/cogitX64SysV.c
>     M nsspur64src/vm/cogitX64WIN64.c
>     M nsspur64src/vm/cointerp.c
>     M nsspur64src/vm/cointerp.h
>     M nsspur64src/vm/gcc3x-cointerp.c
>     M nsspur64src/vm/interp.h
>     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 nsspursrc/vm/interp.h
>     M nsspurstack64src/vm/gcc3x-interp.c
>     M nsspurstack64src/vm/interp.c
>     M nsspurstacksrc/vm/gcc3x-interp.c
>     M nsspurstacksrc/vm/interp.c
>     M platforms/iOS/plugins/CameraPlugin/AVFoundationVideoGrabber.m
>     R platforms/win32/plugins/CameraPlugin/cameraOps.h
>     M platforms/win32/plugins/CameraPlugin/winCameraOps.cpp
>     M spur64src/vm/cogit.h
>     M spur64src/vm/cogitX64SysV.c
>     M spur64src/vm/cogitX64WIN64.c
>     M spur64src/vm/cointerp.c
>     M spur64src/vm/cointerp.h
>     M spur64src/vm/gcc3x-cointerp.c
>     M spurlowcode64src/vm/cogit.h
>     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/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/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/B2DPlugin/B2DPlugin.c
>     M src/plugins/B3DAcceleratorPlugin/B3DAcceleratorPlugin.c
>     M src/plugins/BitBltPlugin/BitBltPlugin.c
>     M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
>     M src/plugins/BochsX64Plugin/BochsX64Plugin.c
>     M src/plugins/CroquetPlugin/CroquetPlugin.c
>     M src/plugins/DSAPrims/DSAPrims.c
>     M src/plugins/FFTPlugin/FFTPlugin.c
>     M src/plugins/FilePlugin/FilePlugin.c
>     M src/plugins/FloatArrayPlugin/FloatArrayPlugin.c
>     M src/plugins/GdbARMPlugin/GdbARMPlugin.c
>     M src/plugins/GeniePlugin/GeniePlugin.c
>     M src/plugins/HostWindowPlugin/HostWindowPlugin.c
>     M src/plugins/IA32ABI/IA32ABI.c
>     M src/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.c
>     M src/plugins/JPEGReaderPlugin/JPEGReaderPlugin.c
>     M src/plugins/LargeIntegers/LargeIntegers.c
>     M src/plugins/MacMenubarPlugin/MacMenubarPlugin.c
>     M src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c
>     M src/plugins/ScratchPlugin/ScratchPlugin.c
>     M src/plugins/SerialPlugin/SerialPlugin.c
>     M src/plugins/SoundPlugin/SoundPlugin.c
>     M src/plugins/Squeak3D/Squeak3D.c
>     M src/plugins/SqueakFFIPrims/ARM32FFIPlugin.c
>     M src/plugins/SqueakFFIPrims/IA32FFIPlugin.c
>     M src/plugins/SqueakFFIPrims/X64SysVFFIPlugin.c
>     M src/plugins/SqueakFFIPrims/X64Win64FFIPlugin.c
>     M src/plugins/VMProfileLinuxSupportPlugin/VMProfileLinuxSupportPlugin.c
>     M src/plugins/VMProfileMacSupportPlugin/VMProfileMacSupportPlugin.c
>     M src/plugins/Win32OSProcessPlugin/Win32OSProcessPlugin.c
>     M src/plugins/XDisplayControlPlugin/XDisplayControlPlugin.c
>     M src/plugins/ZipPlugin/ZipPlugin.c
>     M src/vm/cogit.h
>     M src/vm/cogitARMv5.c
>     M src/vm/cogitIA32.c
>     M src/vm/cogitMIPSEL.c
>     M src/vm/cogmethod.h
>     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 src/vm/interp.h
>     M stacksrc/vm/gcc3x-interp.c
>     M stacksrc/vm/interp.c
>     M stacksrc/vm/interp.h
> 
>   Log Message:
>   -----------
>   CogVM source as per VMMaker.oscog-eem.2285
> 
> Slang:
> Fix sources by backing out of the inlining optimization used in the logging
> methods that are now unused.  The optmization was careless, not assuming calls
> could have side-effects, so in primitiveSubtract the calls to stackIntegerValue
> were pushed past the check for primitive failure, and hence
> SmallInteger - SmallFloat (in EllipseMidpointTracer>>stepInY) didn't fail.
> 
> Spur Cogit:
> fix primStringReplace in the JIT.
> 
> Plugins:
> BitBltSimulation>>copyLoop:
> Fix type inference of variable unskew in BitBlt >> copyLoop
> Strength reduce the loop split for combinationRule = 3 so that less tests are
> done in the inner loop and so trhat when combinstionRule = 3 mergeFn is never
> used.  Use an explicit type declaration for unskew instead of trickier relying
> on type inference.  Eliminate bogus use of #== for numeric comparison.
> 
> Fix definitions for CamerPlugin on win32 by nuking bogus intermediate include
> file (cameraOps.h), and explicitly on iOS.
> 
> Scripts:
> Have the mac makeem scripts for the processor plugins call conf.COG if it
> appears not to have been run.
> 
> 
>   Commit: 3124f303c6f03a0af75ffa8cc64dd9e2b3ed9d8c
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/3124f303c6f03a0af75ffa8cc64dd9e2b3ed9d8c <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/3124f303c6f03a0af75ffa8cc64dd9e2b3ed9d8c>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Changed paths:
>     M nsspur64src/vm/cogit.h
>     M nsspur64src/vm/cogitX64SysV.c
>     M nsspur64src/vm/cogitX64WIN64.c
>     M nsspur64src/vm/cogmethod.h
>     M nsspur64src/vm/cointerp.c
>     M nsspur64src/vm/cointerp.h
>     M nsspur64src/vm/gcc3x-cointerp.c
>     M nsspur64src/vm/interp.h
>     M nsspur64src/vm/nssendcache.h
>     M nsspur64src/vm/vmCallback.h
>     M nsspursrc/vm/cogit.h
>     M nsspursrc/vm/cogitARMv5.c
>     M nsspursrc/vm/cogitIA32.c
>     M nsspursrc/vm/cogitMIPSEL.c
>     M nsspursrc/vm/cogmethod.h
>     M nsspursrc/vm/cointerp.c
>     M nsspursrc/vm/cointerp.h
>     M nsspursrc/vm/gcc3x-cointerp.c
>     M nsspursrc/vm/interp.h
>     M nsspursrc/vm/nssendcache.h
>     M nsspursrc/vm/vmCallback.h
>     M nsspurstack64src/vm/gcc3x-interp.c
>     M nsspurstack64src/vm/interp.c
>     M nsspurstack64src/vm/interp.h
>     M nsspurstack64src/vm/vmCallback.h
>     M nsspurstacksrc/vm/gcc3x-interp.c
>     M nsspurstacksrc/vm/interp.c
>     M nsspurstacksrc/vm/interp.h
>     M nsspurstacksrc/vm/vmCallback.h
>     M platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.c
>     M spur64src/vm/cogit.h
>     M spur64src/vm/cogitX64SysV.c
>     M spur64src/vm/cogitX64WIN64.c
>     M spur64src/vm/cogmethod.h
>     M spur64src/vm/cointerp.c
>     M spur64src/vm/cointerp.h
>     M spur64src/vm/gcc3x-cointerp.c
>     M spur64src/vm/interp.h
>     M spur64src/vm/vmCallback.h
>     M spurlowcode64src/vm/cogit.h
>     M spurlowcode64src/vm/cogitX64SysV.c
>     M spurlowcode64src/vm/cogitX64WIN64.c
>     M spurlowcode64src/vm/cogmethod.h
>     M spurlowcode64src/vm/cointerp.c
>     M spurlowcode64src/vm/cointerp.h
>     M spurlowcode64src/vm/gcc3x-cointerp.c
>     M spurlowcode64src/vm/interp.h
>     M spurlowcode64src/vm/vmCallback.h
>     M spurlowcodesrc/vm/cogit.h
>     M spurlowcodesrc/vm/cogitARMv5.c
>     M spurlowcodesrc/vm/cogitIA32.c
>     M spurlowcodesrc/vm/cogitMIPSEL.c
>     M spurlowcodesrc/vm/cogmethod.h
>     M spurlowcodesrc/vm/cointerp.c
>     M spurlowcodesrc/vm/cointerp.h
>     M spurlowcodesrc/vm/gcc3x-cointerp.c
>     M spurlowcodesrc/vm/interp.h
>     M spurlowcodesrc/vm/vmCallback.h
>     M spurlowcodestack64src/vm/gcc3x-interp.c
>     M spurlowcodestack64src/vm/interp.c
>     M spurlowcodestack64src/vm/interp.h
>     M spurlowcodestack64src/vm/vmCallback.h
>     M spurlowcodestacksrc/vm/gcc3x-interp.c
>     M spurlowcodestacksrc/vm/interp.c
>     M spurlowcodestacksrc/vm/interp.h
>     M spurlowcodestacksrc/vm/vmCallback.h
>     M spursista64src/vm/cogit.h
>     M spursista64src/vm/cogitX64SysV.c
>     M spursista64src/vm/cogitX64WIN64.c
>     M spursista64src/vm/cogmethod.h
>     M spursista64src/vm/cointerp.c
>     M spursista64src/vm/cointerp.h
>     M spursista64src/vm/gcc3x-cointerp.c
>     M spursista64src/vm/interp.h
>     M spursista64src/vm/vmCallback.h
>     M spursistasrc/vm/cogit.h
>     M spursistasrc/vm/cogitARMv5.c
>     M spursistasrc/vm/cogitIA32.c
>     M spursistasrc/vm/cogitMIPSEL.c
>     M spursistasrc/vm/cogmethod.h
>     M spursistasrc/vm/cointerp.c
>     M spursistasrc/vm/cointerp.h
>     M spursistasrc/vm/gcc3x-cointerp.c
>     M spursistasrc/vm/interp.h
>     M spursistasrc/vm/vmCallback.h
>     M spursrc/vm/cogit.h
>     M spursrc/vm/cogitARMv5.c
>     M spursrc/vm/cogitIA32.c
>     M spursrc/vm/cogitMIPSEL.c
>     M spursrc/vm/cogmethod.h
>     M spursrc/vm/cointerp.c
>     M spursrc/vm/cointerp.h
>     M spursrc/vm/gcc3x-cointerp.c
>     M spursrc/vm/interp.h
>     M spursrc/vm/vmCallback.h
>     M spurstack64src/vm/gcc3x-interp.c
>     M spurstack64src/vm/interp.c
>     M spurstack64src/vm/interp.h
>     M spurstack64src/vm/vmCallback.h
>     M spurstacksrc/vm/gcc3x-interp.c
>     M spurstacksrc/vm/interp.c
>     M spurstacksrc/vm/interp.h
>     M spurstacksrc/vm/vmCallback.h
>     M src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c
>     M src/vm/cogit.h
>     M src/vm/cogitARMv5.c
>     M src/vm/cogitIA32.c
>     M src/vm/cogitMIPSEL.c
>     M src/vm/cogmethod.h
>     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 src/vm/interp.h
>     M src/vm/vmCallback.h
>     M stacksrc/vm/gcc3x-interp.c
>     M stacksrc/vm/interp.c
>     M stacksrc/vm/interp.h
>     M stacksrc/vm/vmCallback.h
> 
>   Log Message:
>   -----------
>   Merge with Nicolas' VMMaker.oscog- nice.2281 regeneration.
> 
> 
>   Commit: a5da5693ed4e9783647846766350c2a6fabedecc
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/a5da5693ed4e9783647846766350c2a6fabedecc <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/a5da5693ed4e9783647846766350c2a6fabedecc>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Changed paths:
>     M spur64src/vm/cogit.h
>     M spur64src/vm/cogitX64SysV.c
>     M spur64src/vm/cogitX64WIN64.c
>     M spurlowcode64src/vm/cogit.h
>     M spurlowcode64src/vm/cogitX64SysV.c
>     M spurlowcode64src/vm/cogitX64WIN64.c
>     M spurlowcodesrc/vm/cogit.h
>     M spurlowcodesrc/vm/cogitARMv5.c
>     M spurlowcodesrc/vm/cogitIA32.c
>     M spurlowcodesrc/vm/cogitMIPSEL.c
>     M spursista64src/vm/cogit.h
>     M spursista64src/vm/cogitX64SysV.c
>     M spursista64src/vm/cogitX64WIN64.c
>     M spursistasrc/vm/cogit.h
>     M spursistasrc/vm/cogitARMv5.c
>     M spursistasrc/vm/cogitIA32.c
>     M spursistasrc/vm/cogitMIPSEL.c
>     M spursrc/vm/cogit.h
>     M spursrc/vm/cogitARMv5.c
>     M spursrc/vm/cogitIA32.c
>     M spursrc/vm/cogitMIPSEL.c
> 
>   Log Message:
>   -----------
>   Merge with Nicolas' VMMaker.oscog- nice.2281 generation.
> 
> 
>   Commit: 8de3e4aa1f87eab4a7ce28ae3e0880ae4dac177f
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/8de3e4aa1f87eab4a7ce28ae3e0880ae4dac177f <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/8de3e4aa1f87eab4a7ce28ae3e0880ae4dac177f>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Changed paths:
>     M src/plugins/BitBltPlugin/BitBltPlugin.c
> 
>   Log Message:
>   -----------
>   Merge with Nicolas' VMMaker.oscog- nice.2281 generation.
> 
> 
>   Commit: f590af1093325c7ddb5af03c41ea775bf3158510
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/f590af1093325c7ddb5af03c41ea775bf3158510 <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/f590af1093325c7ddb5af03c41ea775bf3158510>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Log Message:
>   -----------
>   Merge branch 'Cog' of https://github.com/OpenSmalltalk/opensmalltalk-vm <https://github.com/OpenSmalltalk/opensmalltalk-vm> into Cog
> Merge with Nicolas' VMMaker.oscog- nice.2281 generation.
> 
> 
>   Commit: 106fdde6feb856e172ac6f59d33d033a6da34531
>       https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/106fdde6feb856e172ac6f59d33d033a6da34531 <https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/106fdde6feb856e172ac6f59d33d033a6da34531>
>   Author: Eliot Miranda <eliot.miranda at gmail.com <mailto:eliot.miranda at gmail.com>>
>   Date:   2017-11-30 (Thu, 30 Nov 2017)
> 
>   Changed paths:
>     M src/plugins/BitBltPlugin/BitBltPlugin.c
> 
>   Log Message:
>   -----------
>   BitBltPlugin as per VMMaker.oscog-eem.2285
> BitBltSimulation>>copyLoop:
> Fix type inference of variable unskew in BitBlt >> copyLoop
> Strength reduce the loop split for combinationRule = 3 so that less tests are
> done in the inner loop and so trhat when combinstionRule = 3 mergeFn is never
> used.  Use an explicit type declaration for unskew instead of trickier relying
> on type inference
> 
> 
> Compare: https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/8879e2e55826...106fdde6feb8 <https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/8879e2e55826...106fdde6feb8>
> 
> 
> 
> -- 
> _,,,^..^,,,_
> best, Eliot

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20171130/dfa10335/attachment-0001.html>


More information about the Vm-dev mailing list