[Vm-dev] [commit] r2441 - Get two loops in ALien marshalling consistent (albeit completely wrong).

Bert Freudenberg bert at freudenbergs.de
Tue Jul 5 09:16:16 UTC 2011


On 05.07.2011, at 03:44, commits at squeakvm.org wrote:

> 
> Author: eliot
> Date: 2011-07-04 18:44:47 -0700 (Mon, 04 Jul 2011)
> New Revision: 2441
> 
> Modified:
>   trunk/platforms/Cross/plugins/IA32ABI/dabusiness.h
> Log:
> Get two loops in ALien marshalling consistent (albeit completely wrong).

Are you applying for the obfuscated-snippet-of-the-week award? ;)

> Modified: trunk/platforms/Cross/plugins/IA32ABI/dabusiness.h
> ===================================================================
> --- trunk/platforms/Cross/plugins/IA32ABI/dabusiness.h	2011-07-05 01:44:26 UTC (rev 2440)
> +++ trunk/platforms/Cross/plugins/IA32ABI/dabusiness.h	2011-07-05 01:44:47 UTC (rev 2441)
> @@ -18,7 +18,7 @@
> 
> #if STACKVM /* Need to access args downwards from first arg */
>   if (numArgs < 0)
> -	for (i = size = 0; --i > numArgs;) {
> +	for (i = size = 0; --i >= numArgs;) {
> 		sqInt arg = argVector[i];
> 		if (objIsAlien(arg) && sizeField(arg))
> 			size += moduloPOT(sizeof(long),abs(sizeField(arg)));
> @@ -57,7 +57,7 @@
> 
> #if STACKVM /* Need to access args downwards from first arg */
>   if (numArgs < 0)
> -	for (i = size = 0; --i > numArgs;) {
> +	for (i = size = 0; --i >= numArgs;) {
> 		sqInt arg = argVector[i];
> 		if (isSmallInt(arg)) {
> 			*(long *)argvec = intVal(arg);
> 

- Bert -




More information about the Vm-dev mailing list