X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=apps%2FHawk%2FCVEiCL%2FEiC%2Fsrc%2Fcallback.c;fp=apps%2FHawk%2FCVEiCL%2FEiC%2Fsrc%2Fcallback.c;h=0000000000000000000000000000000000000000;hb=e4c14cdbdf2fe805e79cd96ded236f57e7b89060;hp=de4aa6651d46fbd101d9ac1a98ef5d56dc8527fa;hpb=454138ff8a20f6edb9b65a910101403d8b520643;p=opencv diff --git a/apps/Hawk/CVEiCL/EiC/src/callback.c b/apps/Hawk/CVEiCL/EiC/src/callback.c deleted file mode 100644 index de4aa66..0000000 --- a/apps/Hawk/CVEiCL/EiC/src/callback.c +++ /dev/null @@ -1,145 +0,0 @@ -/* this code is for the automatic genteration - of call back parameters - */ -#include -#include - -#include "MachSet.h" -#include "global.h" -#include "func.h" -#include "xalloc.h" -#include "typesets.h" -#include "error.h" -#include "symbol.h" -#include "preproc.h" -#include "eic.h" -#include "emitter.h" - -#define getop(x,C) (C->inst[C->nextinst - 5 - 2 * x].opcode) - -void Auto_EiC_CallBack(code_t *callback, va_list ap) -{ - val_t v; - int i,N = callback->inst[callback->nextinst-3].val.ival; - - for(i=0;iType) == t_pointer) - Type = nextType(e1->Type); - else - Type = e1->Type; - - f = (func_t *) EiC_getInf(Type); - - if (f && getFNp(f) && !getFcallBack(f)) { - token_t e2; - EiC_inittoken(&e2); - - if(EiC_gettype(Type) == t_builtin) - e2.Val.vfunc = e1->Sym->val.vfunc; - else - e2.Val.p.p = e1->Sym; - - EiC_generate(&e2.Code,pushptr,&e2.Val,0); - - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,lineno); - - e2.Val.ival = 1; - EiC_generate(&e2.Code,bump,&e2.Val,0); - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,lineno); - - - /* watch for the void argument */ - if(EiC_gettype(getFPty(f,0)) != t_void) { - - e2.Val.ival = getFNp(f); - EiC_generate(&e2.Code,checkar,&e2.Val,1); - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,lineno); - - for (i = 0; i < getFNp(f); i++) { - e2.Pflag = 0; - e2.Type = getFPty(f,i); - - if(EiC_gettype(e2.Type) == t_var) - EiC_error("\n Sorry, you can't pass a variadic function through EiC's callBack interface"); - - setConst(e2.Type); - EiC_output(&e2); - EiC_generate(&e2.Code, stoval, &e2.Val, 0); - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,lineno); - unsetConst(e2.Type); - } - } else - e2.Val.ival = 0; - EiC_generate(&e2.Code, pushint, &e2.Val, 0); - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,lineno); - - - if(EiC_gettype(Type) == t_builtin) - EiC_generate(&e2.Code,call,&e2.Val,0); - else - EiC_generate(&e2.Code,eiccall,&e2.Val,0); - - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,0); - - e2.Val.p.p = NULL; - EiC_generate(&e2.Code,halt,&e2.Val,0); - setCodeLineNo(&e2.Code,e2.Code.nextinst-1,0); - - if(!EiC_ParseError) { - code_t *code = xcalloc(1,sizeof(*code)); - *code = e2.Code; - code->Filename=e1->Sym->fname; - code->prev=NULL; - if(EiC_gettype(Type) == t_builtin) - code->parent = e1->Sym->val.vfunc; - else - code->parent=e1->Sym; - setFcallBack(f,code); - - } - - e2.Type = NULL; - EiC_freetoken(&e2); - } - - return 1; -} - -#endif