[Vm-dev] VM Maker: VMMaker-oscog-EstebanLorenzano.229.mcz
Esteban Lorenzano
estebanlm at gmail.com
Thu Jan 17 16:16:31 UTC 2013
ha, no... change was a lot bigger than that :)
On Jan 17, 2013, at 5:10 PM, "David T. Lewis" <lewis at mail.msen.com> wrote:
>
> Commit message blocked due to size, forwarding trimmed version:
>
>> Date: Thu, 17 Jan 2013 15:36:54.751 0000
>> From: commits at source.squeak.org
>> To: vm-dev at lists.squeakfoundation.org
>> Reply-To: vm-dev at lists.squeakfoundation.org
>> Subject: VM Maker: VMMaker-oscog-EstebanLorenzano.229.mcz
>>
>> Esteban Lorenzano uploaded a new version of VMMaker to project VM Maker:
>> http://source.squeak.org/VMMaker/VMMaker-oscog-EstebanLorenzano.229.mcz
>>
>> ==================== Summary ====================
>>
>> Name: VMMaker-oscog-EstebanLorenzano.229
>> Author: EstebanLorenzano
>> Time: 17 January 2013, 4:34:38.074 pm
>> UUID: 43696581-c092-46f0-9f9f-37c42fd11a1b
>> Ancestors: VMMaker-oscog-EstebanLorenzano.228, VMMaker.oscog-eem.255
>>
>> - merged with Eliot's 255
>>
>> =============== Diff against VMMaker-oscog-EstebanLorenzano.228 ===============
>>
>> Item was added:
>> + ----- Method: ADPCMCodecPlugin class>>monticelloDescription (in category 'translation') -----
>> + monticelloDescription
>> + "Override to include the ADPCMCodec class."
>> + "self monticelloDescription"
>> + ^super monticelloDescription, '\' withCRs, (CCodeGenerator monticelloDescriptionFor: ADPCMCodec)!
>>
>> Item was changed:
>> ----- Method: BMPReadWriterPlugin>>primitiveRead24BmpLine (in category 'primitives') -----
>> primitiveRead24BmpLine
>> | width formBitsIndex formBitsOop pixelLineOop formBitsSize formBits pixelLineSize pixelLine |
>> <export: true>
>> <inline: false>
>> <var: #formBits type: 'unsigned int *'>
>> <var: #pixelLine type: 'unsigned char *'>
>> interpreterProxy methodArgumentCount = 4
>> ifFalse:[^interpreterProxy primitiveFail].
>> width := interpreterProxy stackIntegerValue: 0.
>> + width <= 0 ifTrue:[^interpreterProxy primitiveFail].
>> formBitsIndex := interpreterProxy stackIntegerValue: 1.
>> formBitsOop := interpreterProxy stackObjectValue: 2.
>> pixelLineOop := interpreterProxy stackObjectValue: 3.
>> interpreterProxy failed ifTrue:[^nil].
>> (interpreterProxy isWords: formBitsOop)
>> ifFalse:[^interpreterProxy primitiveFail].
>> (interpreterProxy isBytes: pixelLineOop)
>> ifFalse:[^interpreterProxy primitiveFail].
>> formBitsSize := interpreterProxy slotSizeOf: formBitsOop.
>> formBits := interpreterProxy firstIndexableField: formBitsOop.
>> pixelLineSize := interpreterProxy slotSizeOf: pixelLineOop.
>> pixelLine := interpreterProxy firstIndexableField: pixelLineOop.
>> (formBitsIndex + width <= formBitsSize and:[width*3 <= pixelLineSize])
>> ifFalse:[^interpreterProxy primitiveFail].
>>
>> "do the actual work"
>> self cCode:'
>> formBits += formBitsIndex-1;
>> while(width--) {
>> unsigned int rgb;
>> rgb = (*pixelLine++);
>> rgb += (*pixelLine++) << 8;
>> rgb += (*pixelLine++) << 16;
>> if(rgb) rgb |= 0xFF000000; else rgb |= 0xFF000001;
>> *formBits++ = rgb;
>> }
>> ' inSmalltalk:[formBits. pixelLine. ^interpreterProxy primitiveFail].
>> interpreterProxy pop: 4. "args"
>> !
>>
>> Item was changed:
>> ----- Method: BMPReadWriterPlugin>>primitiveWrite24BmpLine (in category 'primitives') -----
>> primitiveWrite24BmpLine
>>
>
> <snip>
>
>
More information about the Vm-dev
mailing list