[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