11/* Automatically generated by
2- VMPluginCodeGenerator VMMaker.oscog-eem.3090 uuid: 3e2b8343-01bb-4169-ba4c-aecf82b4dcfc
2+ VMPluginCodeGenerator VMMaker.oscog-eem.3119 uuid: c0b40a55-50ca-4dd9-8b6f-d355a6dd5e1f
33 from
4- DESPlugin * CryptographyPlugins-eem.23 uuid: bc8a8db4-2e4d-458f-bac9-f007458fdd4d
4+ DESPlugin CryptographyPlugins-eem.27 uuid: 63bc0f04-a4d3-4347-84fc-20b64ea64093
55 */
6- static char __buildInfo [] = "DESPlugin * CryptographyPlugins-eem.23 uuid: bc8a8db4-2e4d-458f-bac9-f007458fdd4d " __DATE__ ;
6+ static char __buildInfo [] = "DESPlugin CryptographyPlugins-eem.27 uuid: 63bc0f04-a4d3-4347-84fc-20b64ea64093 " __DATE__ ;
77
88
99#include "config.h"
@@ -58,30 +58,40 @@ static unsigned short byteBit[8] = {
5858
5959#if !defined(SQUEAK_BUILTIN_PLUGIN )
6060static void * (* firstIndexableField )(sqInt oop );
61+ #if !defined(integerValueOf )
62+ static sqInt (* integerValueOf )(sqInt oop );
63+ #endif
6164static sqInt (* isBytes )(sqInt oop );
65+ #if !defined(isIntegerObject )
66+ static sqInt (* isIntegerObject )(sqInt objectPointer );
67+ #endif
6268static sqInt (* isWords )(sqInt oop );
6369static sqInt (* methodArgumentCount )(void );
6470static sqInt (* methodReturnBool )(sqInt boolean );
65- static sqInt (* pop )( sqInt nItems );
71+ static sqInt (* methodReturnReceiver )( void );
6672static sqInt (* primitiveFailFor )(sqInt reasonCode );
6773static sqInt (* stSizeOf )(sqInt oop );
68- static sqInt (* stackIntegerValue )(sqInt offset );
6974static sqInt (* stackValue )(sqInt offset );
7075#else /* !defined(SQUEAK_BUILTIN_PLUGIN) */
7176extern void * firstIndexableField (sqInt oop );
77+ #if !defined(integerValueOf )
78+ extern sqInt integerValueOf (sqInt oop );
79+ #endif
7280extern sqInt isBytes (sqInt oop );
81+ #if !defined(isIntegerObject )
82+ extern sqInt isIntegerObject (sqInt objectPointer );
83+ #endif
7384extern sqInt isWords (sqInt oop );
7485extern sqInt methodArgumentCount (void );
7586extern sqInt methodReturnBool (sqInt boolean );
76- extern sqInt pop ( sqInt nItems );
87+ extern sqInt methodReturnReceiver ( void );
7788extern sqInt primitiveFailFor (sqInt reasonCode );
7889extern sqInt stSizeOf (sqInt oop );
79- extern sqInt stackIntegerValue (sqInt offset );
8090extern sqInt stackValue (sqInt offset );
8191extern
8292#endif
8393struct VirtualMachine * interpreterProxy ;
84- static const char * moduleName = "DESPlugin * CryptographyPlugins-eem.23 " INT_EXT ;
94+ static const char * moduleName = "DESPlugin CryptographyPlugins-eem.27 " INT_EXT ;
8595static unsigned char pc1 [56 ] = {
8696 56 , 48 , 40 , 32 , 24 , 16 , 8 , 0 , 57 , 49 , 41 , 33 , 25 , 17 ,
8797 9 , 1 , 58 , 50 , 42 , 34 , 26 , 18 , 10 , 2 , 59 , 51 , 43 , 35 ,
@@ -376,18 +386,17 @@ primitiveDESCookKey(void)
376386 return primitiveFailFor (PrimErrBadNumArgs );
377387 }
378388 rawOop = stackValue (2 );
379- if (!((isBytes (rawOop ))
380- && ((stSizeOf (rawOop )) == 8 ))) {
381- return primitiveFailFor (PrimErrBadArgument );
382- }
383- encode = stackIntegerValue (1 );
389+ encode = stackValue (1 );
384390 cookedOop = stackValue (0 );
385- if (!((isWords (cookedOop ))
386- && ((stSizeOf (cookedOop )) == 32 ))) {
391+ if (!((isBytes (rawOop ))
392+ && (((stSizeOf (rawOop )) == 8 )
393+ && ((isIntegerObject (encode ))
394+ && ((isWords (cookedOop ))
395+ && ((stSizeOf (cookedOop )) == 32 )))))) {
387396 return primitiveFailFor (PrimErrBadArgument );
388397 }
389- processKeymodeto (firstIndexableField (rawOop ), encode != 0 , firstIndexableField (cookedOop ));
390- pop ( 3 );
398+ processKeymodeto (firstIndexableField (rawOop ), ( integerValueOf ( encode )) != 0 , firstIndexableField (cookedOop ));
399+ methodReturnReceiver ( );
391400 return 0 ;
392401}
393402
@@ -425,13 +434,11 @@ primitiveDESTransform(void)
425434 return primitiveFailFor (PrimErrBadNumArgs );
426435 }
427436 dataOop = stackValue (1 );
428- if (!((isBytes (dataOop ))
429- && ((stSizeOf (dataOop )) == 8 ))) {
430- return primitiveFailFor (PrimErrBadArgument );
431- }
432437 cookedOop = stackValue (0 );
433- if (!((isWords (cookedOop ))
434- && ((stSizeOf (cookedOop )) == 32 ))) {
438+ if (!((isBytes (dataOop ))
439+ && (((stSizeOf (dataOop )) == 8 )
440+ && ((isWords (cookedOop ))
441+ && ((stSizeOf (cookedOop )) == 32 ))))) {
435442 return primitiveFailFor (PrimErrBadArgument );
436443 }
437444 data = firstIndexableField (dataOop );
@@ -517,7 +524,7 @@ primitiveDESTransform(void)
517524 data [5 ] = ((((usqInt )((work [1 ]))) >> 16 ) & 0xFF );
518525 data [6 ] = ((((usqInt )((work [1 ]))) >> 8 ) & 0xFF );
519526 data [7 ] = ((work [1 ]) & 0xFF );
520- pop ( 2 );
527+ methodReturnReceiver ( );
521528 return 0 ;
522529}
523530
@@ -631,14 +638,19 @@ setInterpreter(struct VirtualMachine *anInterpreter)
631638
632639#if !defined(SQUEAK_BUILTIN_PLUGIN )
633640 firstIndexableField = interpreterProxy -> firstIndexableField ;
641+ #if !defined(integerValueOf )
642+ integerValueOf = interpreterProxy -> integerValueOf ;
643+ #endif
634644 isBytes = interpreterProxy -> isBytes ;
645+ #if !defined(isIntegerObject )
646+ isIntegerObject = interpreterProxy -> isIntegerObject ;
647+ #endif
635648 isWords = interpreterProxy -> isWords ;
636649 methodArgumentCount = interpreterProxy -> methodArgumentCount ;
637650 methodReturnBool = interpreterProxy -> methodReturnBool ;
638- pop = interpreterProxy -> pop ;
651+ methodReturnReceiver = interpreterProxy -> methodReturnReceiver ;
639652 primitiveFailFor = interpreterProxy -> primitiveFailFor ;
640653 stSizeOf = interpreterProxy -> stSizeOf ;
641- stackIntegerValue = interpreterProxy -> stackIntegerValue ;
642654 stackValue = interpreterProxy -> stackValue ;
643655#endif /* !defined(SQUEAK_BUILTIN_PLUGIN) */
644656 }
@@ -666,7 +678,7 @@ unscrunchto(unsigned int *wordPtr, unsigned char *bytePtr)
666678static char _m [] = "DESPlugin" ;
667679void * DESPlugin_exports [][3 ] = {
668680 {(void * )_m , "getModuleName" , (void * )getModuleName },
669- {(void * )_m , "primitiveDESCookKey\000\001\001 " , (void * )primitiveDESCookKey },
681+ {(void * )_m , "primitiveDESCookKey\000\001\003 " , (void * )primitiveDESCookKey },
670682 {(void * )_m , "primitiveDESPluginAvailable\000\377\001" , (void * )primitiveDESPluginAvailable },
671683 {(void * )_m , "primitiveDESTransform\000\001\001" , (void * )primitiveDESTransform },
672684 {(void * )_m , "setInterpreter" , (void * )setInterpreter },
@@ -676,7 +688,7 @@ void* DESPlugin_exports[][3] = {
676688#else // ifdef SQ_BUILTIN_PLUGIN
677689
678690#if SPURVM
679- EXPORT (signed short ) primitiveDESCookKeyMetadata = 0x101 ;
691+ EXPORT (signed short ) primitiveDESCookKeyMetadata = 259 ;
680692EXPORT (signed short ) primitiveDESPluginAvailableMetadata = -255 ;
681693EXPORT (signed short ) primitiveDESTransformMetadata = 0x101 ;
682694#endif // SPURVM
0 commit comments