[Vm-dev] VM Maker: VMMaker-oscog-EstebanLorenzano.229.mcz

David T. Lewis lewis at mail.msen.com
Thu Jan 17 16:10:22 UTC 2013


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