[Vm-dev] VM Maker: VMMaker.oscog-topa.1910.mcz

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon Jul 25 16:49:51 UTC 2016


Ah yes, i could only compile in Release mode (-DNDEBUG).
The message is really unhelpfull, I'd rather see how the macros are
extended, but running the preprocessor phase is just boring in this IDE.

2016-07-25 17:45 GMT+02:00 <commits at source.squeak.org>:

>
> Tobias Pape uploaded a new version of VMMaker to project VM Maker:
> http://source.squeak.org/VMMaker/VMMaker.oscog-topa.1910.mcz
>
> ==================== Summary ====================
>
> Name: VMMaker.oscog-topa.1910
> Author: topa
> Time: 25 July 2016, 5:44:48.328562 pm
> UUID: d582738f-7126-49ca-9679-36e6995e6f2d
> Ancestors: VMMaker.oscog-topa.1909
>
> MSVC has a problem with the macro-expansion trickery involving asseert
> (vis ||), GIV and macro indirections. Using the getter (And the translated
> code from that) works fine, tho.
>
> =============== Diff against VMMaker.oscog-topa.1909 ===============
>
> Item was changed:
>   ----- Method:
> SpurGenerationScavenger>>newSpaceStart:newSpaceBytes:edenBytes: (in
> category 'initialization') -----
>   newSpaceStart: startAddress newSpaceBytes: totalBytes edenBytes:
> requestedEdenBytes
>         | actualEdenBytes survivorBytes |
>
>         actualEdenBytes := requestedEdenBytes.
>         survivorBytes := totalBytes - actualEdenBytes // 2 truncateTo:
> manager allocationUnit.
>         actualEdenBytes := totalBytes - survivorBytes - survivorBytes
> truncateTo: manager allocationUnit.
>         self assert: totalBytes - actualEdenBytes - survivorBytes -
> survivorBytes < manager allocationUnit.
>
>         "for tenuring we require older objects below younger objects.
> since allocation
>          grows up this means that the survivor spaces must precede eden."
>
>         pastSpace start: startAddress; limit: startAddress + survivorBytes.
>         futureSpace start: pastSpace limit; limit: pastSpace limit +
> survivorBytes.
>         eden start: futureSpace limit; limit: futureSpace limit +
> actualEdenBytes.
>
> +       self assert: self futureSpace limit <= (startAddress + totalBytes).
> +       self assert: self eden start \\ manager allocationUnit
> +                               + (self eden limit \\ manager
> allocationUnit) = 0.
> +       self assert: self pastSpace start \\ manager allocationUnit
> +                               + (self pastSpace limit \\ manager
> allocationUnit) = 0.
> +       self assert: self futureSpace start \\ manager allocationUnit
> +                               + (self futureSpace limit \\ manager
> allocationUnit) = 0.
> -       self assert: futureSpace limit <= (startAddress + totalBytes).
> -       self assert: eden start \\ manager allocationUnit
> -                               + (eden limit \\ manager allocationUnit) =
> 0.
> -       self assert: pastSpace start \\ manager allocationUnit
> -                               + (pastSpace limit \\ manager
> allocationUnit) = 0.
> -       self assert: futureSpace start \\ manager allocationUnit
> -                               + (futureSpace limit \\ manager
> allocationUnit) = 0.
>
>         self initFutureSpaceStart.
>         manager initSpaceForAllocationCheck: (self addressOf: eden) limit:
> eden limit.
>
>         tenuringProportion := 0.9!
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20160725/f6d58023/attachment.htm


More information about the Vm-dev mailing list