Diff for /gforth/prim between versions 1.190 and 1.191

version 1.190, 2006/03/11 22:22:40 version 1.191, 2006/03/11 23:05:09
Line 2587  alloc-callback ( a_ip -- c_addr ) gforth Line 2587  alloc-callback ( a_ip -- c_addr ) gforth
 c_addr = (char *)alloc_callback(gforth_callback, (Xt *)a_ip);  c_addr = (char *)alloc_callback(gforth_callback, (Xt *)a_ip);
   
 va-start-void   ( -- )  gforth  va_start_void  va-start-void   ( -- )  gforth  va_start_void
 va_start_void(clist);  va_start_void(gforth_clist);
   
 va-start-int    ( -- )  gforth  va_start_int  va-start-int    ( -- )  gforth  va_start_int
 va_start_int(clist);  va_start_int(gforth_clist);
   
 va-start-longlong       ( -- )  gforth  va_start_longlong  va-start-longlong       ( -- )  gforth  va_start_longlong
 va_start_longlong(clist);  va_start_longlong(gforth_clist);
   
 va-start-ptr    ( -- )  gforth  va_start_ptr  va-start-ptr    ( -- )  gforth  va_start_ptr
 va_start_ptr(clist, (char *));  va_start_ptr(gforth_clist, (char *));
   
 va-start-float  ( -- )  gforth  va_start_float  va-start-float  ( -- )  gforth  va_start_float
 va_start_float(clist);  va_start_float(gforth_clist);
   
 va-start-double ( -- )  gforth  va_start_double  va-start-double ( -- )  gforth  va_start_double
 va_start_double(clist);  va_start_double(gforth_clist);
   
 va-arg-int      ( -- w )        gforth  va_arg_int  va-arg-int      ( -- w )        gforth  va_arg_int
 w = va_arg_int(clist);  w = va_arg_int(gforth_clist);
   
 va-arg-longlong ( -- d )        gforth  va_arg_longlong  va-arg-longlong ( -- d )        gforth  va_arg_longlong
 #ifdef BUGGY_LONG_LONG  #ifdef BUGGY_LONG_LONG
 DLO_IS(d, va_arg_longlong(clist));  DLO_IS(d, va_arg_longlong(gforth_clist));
 DHI_IS(d, 0);  DHI_IS(d, 0);
 #else  #else
 d = va_arg_longlong(clist);  d = va_arg_longlong(gforth_clist);
 #endif  #endif
   
 va-arg-ptr      ( -- c_addr )   gforth  va_arg_ptr  va-arg-ptr      ( -- c_addr )   gforth  va_arg_ptr
 c_addr = (char *)va_arg_ptr(clist,char*);  c_addr = (char *)va_arg_ptr(gforth_clist,char*);
   
 va-arg-float    ( -- r )        gforth  va_arg_float  va-arg-float    ( -- r )        gforth  va_arg_float
 r = va_arg_float(clist);  r = va_arg_float(gforth_clist);
   
 va-arg-double   ( -- r )        gforth  va_arg_double  va-arg-double   ( -- r )        gforth  va_arg_double
 r = va_arg_double(clist);  r = va_arg_double(gforth_clist);
   
 va-return-void ( -- )   gforth va_return_void  va-return-void ( -- )   gforth va_return_void
 va_return_void(clist);  va_return_void(gforth_clist);
 return 0;  return 0;
   
 va-return-int ( w -- )  gforth va_return_int  va-return-int ( w -- )  gforth va_return_int
 va_return_int(clist, w);  va_return_int(gforth_clist, w);
 return 0;  return 0;
   
 va-return-ptr ( c_addr -- )     gforth va_return_ptr  va-return-ptr ( c_addr -- )     gforth va_return_ptr
 va_return_ptr(clist, void *, c_addr);  va_return_ptr(gforth_clist, void *, c_addr);
 return 0;  return 0;
   
 va-return-longlong ( d -- )     gforth va_return_longlong  va-return-longlong ( d -- )     gforth va_return_longlong
 #ifdef BUGGY_LONG_LONG  #ifdef BUGGY_LONG_LONG
 va_return_longlong(clist, d.lo);  va_return_longlong(gforth_clist, d.lo);
 #else  #else
 va_return_longlong(clist, d);  va_return_longlong(gforth_clist, d);
 #endif  #endif
 return 0;  return 0;
   
 va-return-float ( r -- )        gforth va_return_float  va-return-float ( r -- )        gforth va_return_float
 va_return_float(clist, r);  va_return_float(gforth_clist, r);
 return 0;  return 0;
   
 va-return-double ( r -- )       gforth va_return_double  va-return-double ( r -- )       gforth va_return_double
 va_return_double(clist, r);  va_return_double(gforth_clist, r);
 return 0;  return 0;
   
 \+  \+
Line 2700  ffi-2! ( d a_addr -- ) gforth ffi_2store Line 2700  ffi-2! ( d a_addr -- ) gforth ffi_2store
 #endif  #endif
   
 ffi-arg-int ( -- w )    gforth ffi_arg_int  ffi-arg-int ( -- w )    gforth ffi_arg_int
 w = *(int *)(*clist++);  w = *(int *)(*gforth_clist++);
   
 ffi-arg-longlong ( -- d )       gforth ffi_arg_longlong  ffi-arg-longlong ( -- d )       gforth ffi_arg_longlong
 #ifdef BUGGY_LONG_LONG  #ifdef BUGGY_LONG_LONG
 DLO_IS(d, (Cell*)(*clist++));  DLO_IS(d, (Cell*)(*gforth_clist++));
 DHI_IS(d, 0);  DHI_IS(d, 0);
 #else  #else
 d = *(DCell*)(*clist++);  d = *(DCell*)(*gforth_clist++);
 #endif  #endif
   
 ffi-arg-ptr ( -- c_addr )       gforth ffi_arg_ptr  ffi-arg-ptr ( -- c_addr )       gforth ffi_arg_ptr
 c_addr = *(Char **)(*clist++);  c_addr = *(Char **)(*gforth_clist++);
   
 ffi-arg-float ( -- r )  gforth ffi_arg_float  ffi-arg-float ( -- r )  gforth ffi_arg_float
 r = *(float*)(*clist++);  r = *(float*)(*gforth_clist++);
   
 ffi-arg-double ( -- r ) gforth ffi_arg_double  ffi-arg-double ( -- r ) gforth ffi_arg_double
 r = *(double*)(*clist++);  r = *(double*)(*gforth_clist++);
   
 ffi-ret-void ( -- )     gforth ffi_ret_void  ffi-ret-void ( -- )     gforth ffi_ret_void
 return 0;  return 0;
   
 ffi-ret-int ( w -- )    gforth ffi_ret_int  ffi-ret-int ( w -- )    gforth ffi_ret_int
 *(int*)(ritem) = w;  *(int*)(gforth_ritem) = w;
 return 0;  return 0;
   
 ffi-ret-longlong ( d -- )       gforth ffi_ret_longlong  ffi-ret-longlong ( d -- )       gforth ffi_ret_longlong
 #ifdef BUGGY_LONG_LONG  #ifdef BUGGY_LONG_LONG
 *(Cell*)(ritem) = DLO(d);  *(Cell*)(gforth_ritem) = DLO(d);
 #else  #else
 *(DCell*)(ritem) = d;  *(DCell*)(gforth_ritem) = d;
 #endif  #endif
 return 0;  return 0;
   
 ffi-ret-ptr ( c_addr -- )       gforth ffi_ret_ptr  ffi-ret-ptr ( c_addr -- )       gforth ffi_ret_ptr
 *(Char **)(ritem) = c_addr;  *(Char **)(gforth_ritem) = c_addr;
 return 0;  return 0;
   
 ffi-ret-float ( r -- )  gforth ffi_ret_float  ffi-ret-float ( r -- )  gforth ffi_ret_float
 *(float*)(ritem) = r;  *(float*)(gforth_ritem) = r;
 return 0;  return 0;
   
 ffi-ret-double ( r -- ) gforth ffi_ret_double  ffi-ret-double ( r -- ) gforth ffi_ret_double
 *(double*)(ritem) = r;  *(double*)(gforth_ritem) = r;
 return 0;  return 0;
   
 \+  \+

Removed from v.1.190  
changed lines
  Added in v.1.191


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>