[Vm-dev] VM Maker: VMMaker.oscog-eem.1574.mcz

Ryan Macnak rmacnak at gmail.com
Sat Dec 12 18:54:43 UTC 2015


IA32 Cog has been broken
<https://travis-ci.org/newspeaklanguage/nsvm-linux-ci/jobs/96085275> since
this commit.

/home/travis/build/newspeaklanguage/nsvm-linux-ci/oscogvm/nsspursrc/vm/cogitIA32.c:
In function ‘genEnilopmartForandandforCallcalled’:
/home/travis/build/newspeaklanguage/nsvm-linux-ci/oscogvm/nsspursrc/vm/cogitIA32.c:9844:6:
error: ‘regArg3OrNone’ undeclared (first use in this function)

On Thu, Dec 10, 2015 at 9:37 AM, <commits at source.squeak.org> wrote:

>
> Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
> http://source.squeak.org/VMMaker/VMMaker.oscog-eem.1574.mcz
>
> ==================== Summary ====================
>
> Name: VMMaker.oscog-eem.1574
> Author: eem
> Time: 10 December 2015, 9:36:18.933 am
> UUID: ce2daaa5-0130-4ed4-abdb-26b8b6c06c6e
> Ancestors: VMMaker.oscog-eem.1573
>
> Cogit:
> Introduce the "abstract register" NoReg and use it everywhere we used nil
> before to indicate no register.  Rename selectors and temporaries of the
> form *registerOrNil*" to "*registerOrNone*".  Rewrite all uses of reg
> ifNil: to be reg = NoReg ifTrue:.
>
>
> This is prior to the putsch to replace the use of -1 to -N for abstract
> registers, collapsing them down onto the same 0-N range used for concrete
> registers.
>
> Ryan, Tim, Clément et al, perhaps you could review this carefully and
> check your own tests to ensure I've got this right.  At least the x64 and
> x86 Cogits look fine after this intermediate change.
>
> BTW, I used this to identify potential methods to change:
>
> self systemNavigation
>         browseMessageList: (self systemNavigation allMethodsSelect: [:m|
> (m methodClass category beginsWith:  #'VMMaker-JIT') and: [(m literals
> includesAnyOf: #(isNil notNil ifNil: ifNotNil: ifNil:ifNotNil:
> ifNotNil:ifNil:)) and: [m methodNode tempNames anySatisfy: [:t| '*reg*'
> match: t]]]] localToPackage: #VMMaker)
>         name: 'Uses of nil'
>         autoSelect: 'Nil'
>
> and message names with the pattern "*reg*ornil*" to find selectors.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20151212/11034cd8/attachment.htm


More information about the Vm-dev mailing list