@@ -414,7 +414,7 @@ static stock Inline_FoundDescriptor(size, data[E_INLINE_DATA])
414414 }
415415 default :
416416 {
417- data[E_INLINE_DATA_PARAMETERS][data[E_INLINE_DATA_PARAMETER_COUNT]++ ] = size * cellbytes ;
417+ data[E_INLINE_DATA_PARAMETERS][data[E_INLINE_DATA_PARAMETER_COUNT]++ ] = size << __COMPILER_CELL_SHIFT ;
418418 data[E_INLINE_DATA_STATE] |= 8 ;
419419 }
420420 }
@@ -1174,7 +1174,7 @@ static stock Callback_InlineByName(const name[], tag)
11741174 frm = ptr + AMX_Read (ret + cellbytes),
11751175 args = Inline_NumArgs (frm),
11761176 size = frm - ptr + 12 + args,
1177- Alloc: closure = malloc (size / cellbytes + _: E_INLINE_CALL - 1 );
1177+ Alloc: closure = malloc (( size >>> __COMPILER_CELL_SHIFT) + ( _: E_INLINE_CALL - 1 ) );
11781178 if (! closure)
11791179 return 0 ;
11801180 mset (closure, _: E_INLINE_CALL_NULL, 0 );
@@ -1676,7 +1676,7 @@ static stock Inline_GenerateLocalsStore(ctx[AsmContext], const parameters[], cou
16761676 @emit STACK accumulate
16771677 accumulate = 0 ;
16781678 @emit POP.alt
1679- @emit SREF.S.alt count * cellbytes + 12
1679+ @emit SREF.S.alt ( count << __COMPILER_CELL_SHIFT) + 12
16801680 }
16811681 case 0 :
16821682 accumulate += cellbytes;
@@ -1962,7 +1962,7 @@ stock Inline_UI_(const &header)
19621962 // storage. The other option would be allocating it separately later
19631963 // when we determine it is needed, but that would be no faster in the
19641964 // common case, and slower in the uncommon case, so just do it together.
1965- Alloc: closure = malloc (size / cellbytes + _: E_INLINE_CALL - 1 );
1965+ Alloc: closure = malloc (( size >>> __COMPILER_CELL_SHIFT) + ( _: E_INLINE_CALL - 1 ) );
19661966 P: 5 (" Inline_UI_: %d %d %d %d %d " , ptr, frm, size, _: closure, AMX_Read (header));
19671967 if (! closure)
19681968 return 0 ;
0 commit comments