def treat_variant(self,s,variant) : mode = "simd" tb_name = s[0] fct = Functor(tb_name,'modify','sys') for ss in s[1:] : ss = re.sub('\b',' ',ss) if len(ss) == 0 : continue l = ss.split() if len(l) == 0 : continue fct_name = l[0] arity = 1 if len(l) <=1 else int(l[1]) path = "simd/sse/"+variant fct.add_functor(fct_name,arity) st = fct.read_functor(fct_name,path) src = os.path.join(Recover.Pname,path,fct_name+'.hpp') if exist(src) and (os.path.getsize(src) > 1536) : print "adding functor %s of arity %d in variant %s (size %s)" % (fct_name, arity, variant,os.path.getsize(src)) sys.stdout.flush() # print"orig-----------------" #show(st) d = read(src) # print"src-----------------" #show(d) v = get_struct(d,"validate") c = get_struct(d,"call") i = self.get_includes(d,tb_name,mode,fct.get_path_to_nt2()) st = self.insert_variants(st,v,c,i, fct.get_tb_style(), fct.get_tb_name(), fct_name, mode) # print"avant-----------------" #show(st) # print"apr-Aès-----------------"-b fct.write_functor(fct_name,path,st,False)
def treat_one_tb(self,s,mode) : if mode == 'simd' : path = mode+'/common' else : path = mode tb_name = s[0] fct = Functor(tb_name,'modify','sys') for ss in s[1:] : ss = re.sub('\b',' ',ss) if len(ss) == 0 : continue l = ss.split() if len(l) == 0 : continue fct_name = l[0] arity = 1 if len(l) <=1 else int(l[1]) fct.add_functor(fct_name,arity) st = fct.read_functor(fct_name,path) print "in toolbox %s adding functor %s of arity %d" % (tb_name,fct_name, arity) sys.stdout.flush() src = os.path.join(Recover.Pname,path,fct_name+'.hpp') if exist(src) : d = read(src) v = get_struct(d,"validate") c = get_struct(d,"call") i = self.get_includes(d,tb_name,mode,fct.get_path_to_nt2()) st = self.insert_validate_and_call(st,v,c,i, fct.get_tb_style(), fct.get_tb_name(), fct_name, mode) # show(st) fct.write_functor(fct_name,path,st,False)