[Vm-dev] VM Maker: VMMaker-dtl.194.mcz

Eliot Miranda eliot.miranda at gmail.com
Wed Oct 20 17:02:31 UTC 2010


On Tue, Oct 19, 2010 at 10:55 PM, <
squeak-dev-noreply at lists.squeakfoundation.org> wrote:

>
> Dave Lewis uploaded a new version of VMMaker to project VM Maker:
> http://www.squeaksource.com/VMMaker/VMMaker-dtl.194.mcz
>
> ==================== Summary ====================
>
> Name: VMMaker-dtl.194
> Author: dtl
> Time: 19 October 2010, 11:52:12 am
> UUID: 9dd94fba-0da6-49f7-820c-9af777558bb7
> Ancestors: VMMaker-dtl.193
>
> VMMaker 4.3.8
>
> Adopt CCodeGenerator improvements from oscog, notably including proper C
> code generation for ifTrue:ifFalse: constructs  as expressions, as well as
> methods used in Cog code generation. Produces equivalent C code for the
> traditional interpreter, modulo some cosmetic differences in the output
> (line breaks, spaces, etc).
>
> Notes:
>
> Added #asExpression to TSendNode>>emitCCodeAsArgumentOn:level:generator:
> needed for cpp code generation for expressions.
>
> Methods #generateInlineCPreprocessorDirective:on:indent: and
> #generateCppDirective:on:indent: are redundant, get rid of one (or both) of
> them. Consider using #isDefined:inSmalltalk:comment:ifTrue:ifFalse: instead
> in Cog.
>

Ooh!   I like it.  Why didn't I think of this?  Make it so.  The
cPreprocessorDirective: was my most egregious hack.  But I would just use
    #ifDefined: aPreprocessorMacroName ifTrue: [] ifFalse: []
and then use cCode:inSmalltalk: within each arm as appropriate rather than
conflating the two.

best
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20101020/9e771a57/attachment.htm


More information about the Vm-dev mailing list