/* generated by Id 1.1 at ,$ */ /* with the command: -I../stage1/ -c Smalltalk.st -o ../stage2/Smalltalk.o.c */ #include static struct __libid *_libid= 0; #ifdef ID_DEBUG # define _enter(info) void *__id_debug= _libid->enter(info) # define _line(lno) _libid->line(lno) # define _leave() _libid->leave(__id_debug) # define _backtrace() _libid->backtrace() #else # define _enter(info) (void)info # define _line(lno) # define _leave() # define _backtrace() "(no debugging information)\n" #endif #define _return _leave(); return #define _sendv(MSG, N, RCV, ARG...) ({ \ struct __send _s= { (MSG), (N), (RCV) }; \ ((_imp_t)(_libid->bindv(&_s)))(&_s, _s.receiver, _s.receiver, ##ARG); \ }) #define _superv(TYP, MSG, N, RCV, ARG...) ({ \ struct __send _s= { (MSG), (N), (TYP) }; \ _imp_t _imp= _libid->bindv(&_s); \ _s.receiver= (RCV); \ _imp(&_s, _s.receiver, _s.receiver, ##ARG); \ }) static oop s_new_5f_= 0; static oop s_new_= 0; static oop s__3e= 0; static oop s__3c_3d= 0; static oop s_at_= 0; static oop s_copyFrom_to_= 0; static oop s_value_5f_= 0; static oop s__5fimport_= 0; static oop s_ifNil_= 0; static oop s_arguments= 0; static oop s__5fslots= 0; static oop s_to_do_= 0; static oop s__2d= 0; static oop s__2c= 0; static oop s_ifTrue_= 0; static oop s_size= 0; static oop s_osWarning_= 0; static oop s__5fargumentCount= 0; static oop s__5fdebugName= 0; static oop s__5fargumentAt_5f_= 0; static oop s_new= 0; static oop s__5fosErrorString_5f_= 0; static oop s__5fdirectoryDelimiter= 0; static oop s_directoryDelimiter= 0; static oop s_osErrorString= 0; static oop s_osErrorString_5f_= 0; static oop s_osErrorString_= 0; static oop s__5fintegerValue= 0; static oop s_size_5f_value_5f_= 0; static oop s_quit= 0; static oop s_argumentCount= 0; static oop s__5fosError= 0; static oop s_osError= 0; static oop s_putln= 0; static oop s_function_5f_arity_5f_outer_state_nlr_5f_= 0; static oop s_argumentVector= 0; static oop s_makeArgumentVector= 0; static oop s_osError_= 0; static oop s_argumentAt_= 0; static oop s__5fsizeof= 0; static oop s_abort= 0; static oop s_at_put_= 0; static oop s_and_= 0; static struct _Selector { const char *name; oop *addr; } _Selectors[]= { { "new_:", &s_new_5f_ }, { "new:", &s_new_ }, { ">", &s__3e }, { "<=", &s__3c_3d }, { "at:", &s_at_ }, { "copyFrom:to:", &s_copyFrom_to_ }, { "value_:", &s_value_5f_ }, { "_import:", &s__5fimport_ }, { "ifNil:", &s_ifNil_ }, { "arguments", &s_arguments }, { "_slots", &s__5fslots }, { "to:do:", &s_to_do_ }, { "-", &s__2d }, { ",", &s__2c }, { "ifTrue:", &s_ifTrue_ }, { "size", &s_size }, { "osWarning:", &s_osWarning_ }, { "_argumentCount", &s__5fargumentCount }, { "_debugName", &s__5fdebugName }, { "_argumentAt_:", &s__5fargumentAt_5f_ }, { "new", &s_new }, { "_osErrorString_:", &s__5fosErrorString_5f_ }, { "_directoryDelimiter", &s__5fdirectoryDelimiter }, { "directoryDelimiter", &s_directoryDelimiter }, { "osErrorString", &s_osErrorString }, { "osErrorString_:", &s_osErrorString_5f_ }, { "osErrorString:", &s_osErrorString_ }, { "_integerValue", &s__5fintegerValue }, { "size_:value_:", &s_size_5f_value_5f_ }, { "quit", &s_quit }, { "argumentCount", &s_argumentCount }, { "_osError", &s__5fosError }, { "osError", &s_osError }, { "putln", &s_putln }, { "function_:arity_:outer:state:nlr_:", &s_function_5f_arity_5f_outer_state_nlr_5f_ }, { "argumentVector", &s_argumentVector }, { "makeArgumentVector", &s_makeArgumentVector }, { "osError:", &s_osError_ }, { "argumentAt:", &s_argumentAt_ }, { "_sizeof", &s__5fsizeof }, { "abort", &s_abort }, { "at:put:", &s_at_put_ }, { "and:", &s_and_ }, { 0, 0 } }; struct t__object { struct _vtable *_vtable[0]; }; struct t__selector { struct _vtable *_vtable[0]; oop v__size; oop v__elements; }; struct t__assoc { struct _vtable *_vtable[0]; oop v_key; oop v_value; }; struct t__closure { struct _vtable *_vtable[0]; oop v__method; oop v_data; }; struct t__vector { struct _vtable *_vtable[0]; oop v__size; }; struct t__vtable { struct _vtable *_vtable[0]; oop v__tally; oop v_bindings; oop v_delegate; }; struct t_Object { struct _vtable *_vtable[0]; }; struct t_UndefinedObject { struct _vtable *_vtable[0]; }; struct t_StaticBlockClosure { struct _vtable *_vtable[0]; oop v__function; oop v__arity; }; struct t_BlockClosure { struct _vtable *_vtable[0]; oop v__function; oop v__arity; oop v_outer; oop v_state; oop v__nlr; }; struct t_Magnitude { struct _vtable *_vtable[0]; }; struct t_Character { struct _vtable *_vtable[0]; oop v_value; }; struct t_Number { struct _vtable *_vtable[0]; }; struct t_Fraction { struct _vtable *_vtable[0]; oop v_numerator; oop v_denominator; }; struct t_Float { struct _vtable *_vtable[0]; }; struct t_Integer { struct _vtable *_vtable[0]; }; struct t_SmallInteger { struct _vtable *_vtable[0]; }; struct t_LargePositiveInteger { struct _vtable *_vtable[0]; oop v_bytes; }; struct t_LargeNegativeInteger { struct _vtable *_vtable[0]; oop v_bytes; }; struct t_Collection { struct _vtable *_vtable[0]; }; struct t_SequenceableCollection { struct _vtable *_vtable[0]; }; struct t_ArrayedCollection { struct _vtable *_vtable[0]; oop v_size; }; struct t_Array { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; struct t_ImmutableArray { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; struct t_WordArray { struct _vtable *_vtable[0]; oop v_size; oop v__words; }; struct t_ImmutableWordArray { struct _vtable *_vtable[0]; oop v_size; oop v__words; }; struct t_ByteArray { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_ImmutableByteArray { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_String { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_ImmutableString { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_Symbol { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_nil { struct _vtable *_vtable[0]; }; struct t_true { struct _vtable *_vtable[0]; }; struct t_false { struct _vtable *_vtable[0]; }; struct t_CharacterTable { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; struct t_Smalltalk { struct _vtable *_vtable[0]; oop v_argumentCount; oop v_argumentVector; }; static oop l_14= 0; static oop l_21= 0; static oop l_24= 0; static oop l_26= 0; static oop v__object= 0; static oop v__vector= 0; static oop v_Object= 0; static oop v_UndefinedObject= 0; static oop v_StaticBlockClosure= 0; static oop v_BlockClosure= 0; static oop v_Magnitude= 0; static oop v_Character= 0; static oop v_Number= 0; static oop v_Integer= 0; static oop v_SmallInteger= 0; static oop v_LargePositiveInteger= 0; static oop v_Collection= 0; static oop v_SequenceableCollection= 0; static oop v_ArrayedCollection= 0; static oop v_Array= 0; static oop v_WordArray= 0; static oop v_ByteArray= 0; static oop v_String= 0; static oop v_ImmutableString= 0; static oop v_true= 0; static oop v_false= 0; static oop v_Smalltalk= 0; static size_t Smalltalk___5fsizeof(oop _closure, oop v_self) { return sizeof(struct t_Smalltalk); } static char *Smalltalk___5fdebugName(oop _closure, oop v_self) { return "Smalltalk"; } static struct __slotinfo *Smalltalk___5fslots(oop _closure, oop v_self) { static struct __slotinfo info[]= { { "argumentCount", 0, 4 }, { "argumentVector", 4, 4 }, { 0, 0, 0 } }; return &info[0]; } static struct __methodinfo __info1= { "quit", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 35, 40, 0 }; static oop Smalltalk__quit(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info1); oop _1= 0; _line(35); { # define self ((struct t_Smalltalk *)v_self) exit(0); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info2= { "abort", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 40, 48, &__info1 }; static oop Smalltalk__abort(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info2); oop _1= 0; _line(40); { # define self ((struct t_Smalltalk *)v_self) fflush(stdout); fprintf(stderr, "\nSmalltalk abort\n"); fflush(stderr); abort(); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info3= { "_osError", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 48, 49, &__info2 }; static oop Smalltalk___5fosError(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info3); oop _1= 0; _line(48); { # define self ((struct t_Smalltalk *)v_self) return (oop)_libid->param(-1); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info4= { "_argumentCount", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 49, 50, &__info3 }; static oop Smalltalk___5fargumentCount(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info4); oop _1= 0; _line(49); { # define self ((struct t_Smalltalk *)v_self) return (oop)_libid->param(0); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info5= { "_argumentAt_:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 50, 51, &__info4 }; static oop Smalltalk___5fargumentAt_5f_(oop v__closure, oop v_stateful_self, oop v_self, oop v__index) { _enter(&__info5); oop _1= 0; _line(50); { # define self ((struct t_Smalltalk *)v_self) return (oop)(((char **)_libid->param(1))[(long)v__index]); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info6= { "_osErrorString_:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 51, 52, &__info5 }; static oop Smalltalk___5fosErrorString_5f_(oop v__closure, oop v_stateful_self, oop v_self, oop v__errno) { _enter(&__info6); oop _1= 0; _line(51); { # define self ((struct t_Smalltalk *)v_self) return (oop)strerror((long)v__errno); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info7= { "_directoryDelimiter", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 52, 54, &__info6 }; static oop Smalltalk___5fdirectoryDelimiter(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info7); oop _1= 0; _line(52); { # define self ((struct t_Smalltalk *)v_self) return (oop)_libid->param(7); # undef self } _1= 0; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info8= { "directoryDelimiter", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 54, 56, &__info7 }; static oop Smalltalk__directoryDelimiter(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info8); oop _1= 0; oop _2= 0; _line(54); _1= v_Character; _2= v_self; _line(54); _2=_sendv(s__5fdirectoryDelimiter, 1, _2); _line(54); _1=_sendv(s_value_5f_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info9= { "osError", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 56, 57, &__info8 }; static oop Smalltalk__osError(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info9); oop _1= 0; oop _2= 0; _line(56); _1= v_SmallInteger; _2= v_self; _line(56); _2=_sendv(s__5fosError, 1, _2); _line(56); _1=_sendv(s_value_5f_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info10= { "osErrorString", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 57, 58, &__info9 }; static oop Smalltalk__osErrorString(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info10); oop _1= 0; oop _2= 0; _line(57); _1= v_self; _2= v_self; _line(57); _2=_sendv(s__5fosError, 1, _2); _line(57); _1=_sendv(s_osErrorString_5f_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info11= { "osErrorString:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 58, 59, &__info10 }; static oop Smalltalk__osErrorString_(oop v__closure, oop v_stateful_self, oop v_self, oop v_errno) { _enter(&__info11); oop _1= 0; oop _2= 0; _line(58); _1= v_self; _2= v_errno; _line(58); _2=_sendv(s__5fintegerValue, 1, _2); _line(58); _1=_sendv(s_osErrorString_5f_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info12= { "osErrorString_:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 59, 61, &__info11 }; static oop Smalltalk__osErrorString_5f_(oop v__closure, oop v_stateful_self, oop v_self, oop v__errno) { _enter(&__info12); oop _1= 0; oop _2= 0; oop _3= 0; _line(59); _1= v_ImmutableString; _2= v_self; _3= v__errno; _line(59); _2=_sendv(s__5fosErrorString_5f_, 2, _2, _3); _line(59); _1=_sendv(s_value_5f_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info13= { "osWarning:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 61, 62, &__info12 }; static oop Smalltalk__osWarning_(oop v__closure, oop v_stateful_self, oop v_self, oop v_message) { _enter(&__info13); oop _1= 0; oop _2= 0; _line(61); _1= v_message; _2= l_14; _line(61); _1=_sendv(s__2c, 2, _1, _2); _2= v_self; _line(61); _2=_sendv(s_osErrorString, 1, _2); _line(61); _1=_sendv(s__2c, 2, _1, _2); _line(61); _1=_sendv(s_putln, 1, _1); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info15= { "osError:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 62, 64, &__info13 }; static oop Smalltalk__osError_(oop v__closure, oop v_stateful_self, oop v_self, oop v_message) { _enter(&__info15); oop _1= 0; oop _2= 0; _line(62); _1= v_self; _2= v_message; _line(62); _sendv(s_osWarning_, 2, _1, _2); _1=_sendv(s_quit, 1, _1); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info17= { "[] argumentCount", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 64, 65, &__info15 }; static oop b_17(oop v__closure, oop v__self) { _enter(&__info17); oop _1= 0; oop _2= 0; _line(64); _1= v_SmallInteger; _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* self */ _line(64); _2=_sendv(s__5fargumentCount, 1, _2); _line(64); _1=_sendv(s_value_5f_, 2, _1, _2); ((struct t_Smalltalk *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2])->v_argumentCount= _1; /* argumentCount */ _leave(); return _1; _leave(); } static struct __methodinfo __info16= { "argumentCount", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 64, 65, &__info17 }; static oop Smalltalk__argumentCount(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info16); oop _state1= _sendv(s_new_5f_, 2, v__vector, 5); oop _1= 0; oop _2= 0; ((oop *)_state1)[2]= v_stateful_self; ((oop *)_state1)[1]= v_self; _line(64); _1= ((struct t_Smalltalk *)((oop *)_state1)[2])->v_argumentCount; /* argumentCount */ /* Scope() */ /* Scope('stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode 'argumentCount'->SlotVariableNode 'argumentVector'->SlotVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_17, 0, 0, ((oop *)_state1), 0); _line(64); _1=_sendv(s_ifNil_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info19= { "[] argumentVector", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 65, 67, &__info16 }; static oop b_19(oop v__closure, oop v__self) { _enter(&__info19); oop _1= 0; _line(65); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* self */ _line(65); _1=_sendv(s_makeArgumentVector, 1, _1); ((struct t_Smalltalk *)((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2])->v_argumentVector= _1; /* argumentVector */ _leave(); return _1; _leave(); } static struct __methodinfo __info18= { "argumentVector", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 65, 67, &__info19 }; static oop Smalltalk__argumentVector(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info18); oop _state1= _sendv(s_new_5f_, 2, v__vector, 5); oop _1= 0; oop _2= 0; ((oop *)_state1)[2]= v_stateful_self; ((oop *)_state1)[1]= v_self; _line(65); _1= ((struct t_Smalltalk *)((oop *)_state1)[2])->v_argumentVector; /* argumentVector */ /* Scope() */ /* Scope('stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode 'argumentCount'->SlotVariableNode 'argumentVector'->SlotVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_19, 0, 0, ((oop *)_state1), 0); _line(65); _1=_sendv(s_ifNil_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info22= { "[] makeArgumentVector", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 67, 76, &__info18 }; static oop b_22(oop v__closure, oop v__self, oop v_i) { _enter(&__info22); oop _1= 0; oop _2= 0; oop _3= 0; oop _4= 0; oop _5= 0; oop _6= 0; _line(72); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* argv */ _2= v_i; _3= v_ImmutableString; _4= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]; /* self */ _5= v_i; _6= l_21; { int _l= (long)_5 >> 1; int _r= (long)_6 >> 1; int _s= (_l - _r); if ((1 & (long)_5) && ((_s ^ (_s << 1)) >= 0)) _5= (oop)(long)(_s << 1 | 1); else _5= _sendv(s__2d, 2, _5, _6); } _line(72); _5=_sendv(s__5fintegerValue, 1, _5); _line(72); _4=_sendv(s__5fargumentAt_5f_, 2, _4, _5); _line(72); _3=_sendv(s_value_5f_, 2, _3, _4); _line(72); _1=_sendv(s_at_put_, 3, _1, _2, _3); _leave(); return _1; _leave(); } static struct __methodinfo __info20= { "makeArgumentVector", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 67, 76, &__info22 }; static oop Smalltalk__makeArgumentVector(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info20); oop _state1= _sendv(s_new_5f_, 2, v__vector, 6); oop v_argc= 0; oop _1= 0; oop _2= 0; oop _3= 0; (void)v_argc; ((oop *)_state1)[3]= v_stateful_self; ((oop *)_state1)[2]= v_self; _line(67); _1= ((oop *)_state1)[2]; /* self */ _line(70); _1=_sendv(s_argumentCount, 1, _1); v_argc= _1; _1= v_Array; _2= v_argc; _line(71); _1=_sendv(s_new_, 2, _1, _2); ((oop *)_state1)[1]= _1; /* argv */ _1= l_21; _2= v_argc; /* Scope('i'->ArgumentVariableNode) */ /* Scope('argv'->TemporaryVariableNode 'argc'->TemporaryVariableNode 'self'->ArgumentVariableNode 'argumentVector'->SlotVariableNode 'stateful_self'->ArgumentVariableNode 'argumentCount'->SlotVariableNode) */ /* nil */ /* 2 */ /* 1 */ _3= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_22, 1, 0, ((oop *)_state1), 0); _line(72); _1=_sendv(s_to_do_, 3, _1, _2, _3); _1= ((oop *)_state1)[1]; /* argv */ _leave(); return _1; _leave(); } static struct __methodinfo __info23= { "argumentAt:", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 76, 77, &__info20 }; static oop Smalltalk__argumentAt_(oop v__closure, oop v_stateful_self, oop v_self, oop v_index) { _enter(&__info23); oop _1= 0; oop _2= 0; oop _3= 0; _line(76); /* ifTrue: */ _1= 0; /* and: */ _2= v_index; _3= l_24; if (1 & (long)_2) { _2= (((long)_2 > (long)_3) ? v_true : v_false); } else _2= _sendv(s__3e, 2, _2, _3); if (!_2) goto _l2; { _2= v_index; _3= v_self; _line(76); _3=_sendv(s_argumentVector, 1, _3); _line(76); _3=_sendv(s_size, 1, _3); if (1 & (long)_2 & (long)_3) { _2= (((long)_2 <= (long)_3) ? v_true : v_false); } else _2= _sendv(s__3c_3d, 2, _2, _3); } _l2:; if (!_2) goto _l1; { _1= ((struct t_Smalltalk *)v_stateful_self)->v_argumentVector; _2= v_index; _line(76); _1=_sendv(s_at_, 2, _1, _2); } _l1:; _leave(); return _1; _leave(); } static struct __methodinfo __info25= { "arguments", "Smalltalk", "/Users/piumarta/src/idst/object/st80/Smalltalk.st", 0, 77, 78, &__info23 }; static oop Smalltalk__arguments(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info25); oop _1= 0; oop _2= 0; oop _3= 0; _line(77); _1= v_self; _line(77); _1=_sendv(s_argumentVector, 1, _1); _2= l_26; _3= v_self; _line(77); _3=_sendv(s_argumentCount, 1, _3); _line(77); _1=_sendv(s_copyFrom_to_, 3, _1, _2, _3); _leave(); return _1; _leave(); } static struct __methodinfo __info= { "__id__init__", "", "Smalltalk.st", 0, 0, 0, &__info25 }; void __id__init__Smalltalk(struct __libid *__libid) { if (_libid) return; if (!(_libid= __libid)) { fprintf(stderr, "init _libid %p\n", __libid); abort(); } # define GC_add_roots _libid->gc_addRoots GC_INIT(); { struct _Selector *s= 0; for (s= _Selectors; s->name; ++s) *s->addr= _libid->intern(s->name); } _enter(&__info); _libid->infos(&__info, &__info1); _sendv(s__5fimport_, 3, _libid->_object, "Object", "__id__init__Object"); v__object= _libid->import("_object"); v__vector= _libid->import("_vector"); v_Object= _libid->import("Object"); v_UndefinedObject= _libid->import("UndefinedObject"); v_StaticBlockClosure= _libid->import("StaticBlockClosure"); v_BlockClosure= _libid->import("BlockClosure"); v_Magnitude= _libid->import("Magnitude"); v_Character= _libid->import("Character"); v_Number= _libid->import("Number"); v_Integer= _libid->import("Integer"); v_SmallInteger= _libid->import("SmallInteger"); v_LargePositiveInteger= _libid->import("LargePositiveInteger"); v_Collection= _libid->import("Collection"); v_SequenceableCollection= _libid->import("SequenceableCollection"); v_ArrayedCollection= _libid->import("ArrayedCollection"); v_Array= _libid->import("Array"); v_WordArray= _libid->import("WordArray"); v_ByteArray= _libid->import("ByteArray"); v_String= _libid->import("String"); v_ImmutableString= _libid->import("ImmutableString"); v_true= _libid->import("true"); v_false= _libid->import("false"); v_Smalltalk= _libid->proto2(v_Object, Smalltalk___5fsizeof(0, 0)); _libid->method(v_Smalltalk, s__5fsizeof, (_imp_t)Smalltalk___5fsizeof); _libid->method(v_Smalltalk, s__5fdebugName, (_imp_t)Smalltalk___5fdebugName); _libid->method(v_Smalltalk, s__5fslots, (_imp_t)Smalltalk___5fslots); _libid->export("Smalltalk", v_Smalltalk); { oop _1= 0; _1= v_Smalltalk; _line(32); _1=_sendv(s_new, 1, _1); v_Smalltalk= _1; _libid->export("Smalltalk", v_Smalltalk); } _libid->method(v_Smalltalk, s_quit, (_imp_t)Smalltalk__quit); _libid->method(v_Smalltalk, s_abort, (_imp_t)Smalltalk__abort); _libid->method(v_Smalltalk, s__5fosError, (_imp_t)Smalltalk___5fosError); _libid->method(v_Smalltalk, s__5fargumentCount, (_imp_t)Smalltalk___5fargumentCount); _libid->method(v_Smalltalk, s__5fargumentAt_5f_, (_imp_t)Smalltalk___5fargumentAt_5f_); _libid->method(v_Smalltalk, s__5fosErrorString_5f_, (_imp_t)Smalltalk___5fosErrorString_5f_); _libid->method(v_Smalltalk, s__5fdirectoryDelimiter, (_imp_t)Smalltalk___5fdirectoryDelimiter); _libid->method(v_Smalltalk, s_directoryDelimiter, (_imp_t)Smalltalk__directoryDelimiter); _libid->method(v_Smalltalk, s_osError, (_imp_t)Smalltalk__osError); _libid->method(v_Smalltalk, s_osErrorString, (_imp_t)Smalltalk__osErrorString); _libid->method(v_Smalltalk, s_osErrorString_, (_imp_t)Smalltalk__osErrorString_); _libid->method(v_Smalltalk, s_osErrorString_5f_, (_imp_t)Smalltalk__osErrorString_5f_); l_14= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 2, ": "); _libid->method(v_Smalltalk, s_osWarning_, (_imp_t)Smalltalk__osWarning_); _libid->method(v_Smalltalk, s_osError_, (_imp_t)Smalltalk__osError_); _libid->method(v_Smalltalk, s_argumentCount, (_imp_t)Smalltalk__argumentCount); _libid->method(v_Smalltalk, s_argumentVector, (_imp_t)Smalltalk__argumentVector); l_21= _sendv(s_value_5f_, 2, v_SmallInteger, 1); _libid->method(v_Smalltalk, s_makeArgumentVector, (_imp_t)Smalltalk__makeArgumentVector); l_24= _sendv(s_value_5f_, 2, v_SmallInteger, 0); _libid->method(v_Smalltalk, s_argumentAt_, (_imp_t)Smalltalk__argumentAt_); l_26= _sendv(s_value_5f_, 2, v_SmallInteger, 2); _libid->method(v_Smalltalk, s_arguments, (_imp_t)Smalltalk__arguments); _leave(); }