Esempio n. 1
0
    def create_one_unit(self, fct_name, mode, part, platform):

        #     if self.verbose :
        print("%s with %s with %s" % (fct_name, mode, part))
        bg = Base_gen(self.tb_name, fct_name, mode)
        ghg = Global_header_gen(bg, part)
        r = ghg.get_gen_result()
        dl = bg.get_fct_dict_list()
        for rank, d in enumerate(dl):

            df = d.get('functor', False)
            if not df: df = self.Default_df
            if df.get('no_simd_tests', False): return []

            types = []
            if mode == 'simd':
                types = bg.recover('simd_types', df, [])
            if len(types) == 0:
                types = bg.recover('types', df, ['real_'])

            ret_arity = int(df["ret_arity"])
            d_unit = d.get("unit", {})
            for typ in types:
                thg = Type_header_test_gen(bg, d, typ, rank)
                r += thg.get_gen_beg()
                if self.verbose: print("part = %s" % part)
                if ("unit" == part) and d_unit.get("specific_values", None):
                    svt = Specific_values_test_gen(bg, d, typ, ret_arity,
                                                   platform)
                    s = svt.get_gen_result()
                    ##                    print(s)
                    ##                    raise SystemExit
                    ##                    if not s : return False
                    r += s
                if ("cover" == part) and d_unit.get("verif_test", None):
                    vtg = Random_verif_test_gen(bg, d, typ, platform)
                    s = vtg.get_gen_result()
                    ##                    print(s)
                    ##                    raise SystemExit
                    ##                    if not s : return False
                    r += s
                r += thg.get_gen_end()
        return r
Esempio n. 2
0
    def create_one_unit(self, fct_name, mode, part,platform) :

   #     if self.verbose :
        print("%s with %s with %s"%(fct_name,mode,part))
        bg = Base_gen(self.tb_name,fct_name,mode)
        ghg = Global_header_gen(bg,part)
        r = ghg.get_gen_result()
        dl = bg.get_fct_dict_list()
        for rank,d in enumerate(dl) :
            
            df = d.get('functor',False)
            if not df : df = self.Default_df
            if df.get('no_simd_tests',False) : return []
            
            types = []
            if mode == 'simd':
                types = bg.recover('simd_types',df,[])
            if len(types) == 0:
                types = bg.recover('types',df,['real_'])
            
            ret_arity = int(df["ret_arity"])
            d_unit = d.get("unit",{})
            for typ in types :
                thg = Type_header_test_gen(bg,d,typ,rank)
                r+=thg.get_gen_beg()
                if self.verbose : print("part = %s"%part)
                if ("unit"==part) and d_unit.get("specific_values",None) :
                    svt = Specific_values_test_gen(bg,d,typ,ret_arity,platform)
                    s = svt.get_gen_result()
##                    print(s)
##                    raise SystemExit
##                    if not s : return False
                    r += s    
                if ("cover" == part) and d_unit.get("verif_test",None) :
                    vtg = Random_verif_test_gen(bg,d,typ,platform)
                    s = vtg.get_gen_result()
##                    print(s)
##                    raise SystemExit
##                    if not s : return False
                    r += s    
                r+=thg.get_gen_end()
        return r
Esempio n. 3
0
def create_unit(tb_name,fct_name,mode) :
    bg = Base_gen(tb_name,fct_name,mode)
    ghg = Global_header_gen(bg)
    r = ghg.get_gen_result()
    dl = bg.get_fct_dict_list()
    for d in dl :
        types = bg.recover("types",d["functor"],[])
        d_unit = d["unit"]
        for typ in types :
            thg = Type_header_test_gen(bg,d,typ)
            r+=thg.get_gen_beg()
            if d_unit.get("specific_values",None) :
                print("specific")
                svt = Specific_values_test_gen(bg,d,typ)
                r += svt. get_gen_result()
            if d_unit.get("verif_test",None) :
                print("verif")
                vtg = Random_verif_test_gen(bg,d,typ)
                r += vtg. get_gen_result()
            r+=thg.get_gen_end()
    return r
Esempio n. 4
0
def create_unit(tb_name, fct_name, mode):
    bg = Base_gen(tb_name, fct_name, mode)
    ghg = Global_header_gen(bg)
    r = ghg.get_gen_result()
    if True:  #    try :
        dl = bg.get_fct_dict_list()
        for rank, d in enumerate(dl):
            origin = "types" if mode == 'scalar' else 'simd_types'
            types = bg.recover(origin, d["functor"], ["real_convert_"])
            ret_arity = int(d["functor"]["ret_arity"])
            d_unit = d["unit"]
            for typ in types:
                thg = Type_header_test_gen(bg, d, typ, rank)
                r += thg.get_gen_beg()
                if d_unit.get("specific_values", None):
                    svt = Specific_values_test_gen(bg, d, typ, ret_arity, mode)
                    r += svt.get_gen_result()
                if d_unit.get("verif_test", None):
                    vtg = Random_verif_test_gen(bg, d, typ, mode)
                    r += vtg.get_gen_result()
                r += thg.get_gen_end()
        return r
Esempio n. 5
0
def create_unit(tb_name,fct_name,mode,parts =["verif","values"]) :
    bg = Base_gen(tb_name,fct_name,mode)
    ghg = Global_header_gen(bg)
    r = ghg.get_gen_result()
    if True:#    try :
        dl = bg.get_fct_dict_list()
        for rank, d in enumerate(dl) :
            origin ="types" if mode == 'scalar' else 'simd_types'
            types = bg.recover(origin,d["functor"],["real_convert_"])
            ret_arity = int(d["functor"]["ret_arity"])
            d_unit = d["unit"]
            for typ in types :
                thg = Type_header_test_gen(bg,d,typ,rank)
                r+=thg.get_gen_beg()
                if ("values" in parts) and d_unit.get("specific_values",None) :
                    svt = Specific_values_test_gen(bg,d,typ,ret_arity,mode)
                    r += svt. get_gen_result()
                if ("verif" in parts) and d_unit.get("verif_test",None) :
                    vtg = Random_verif_test_gen(bg,d,typ,mode)
                    r += vtg. get_gen_result()
                r+=thg.get_gen_end()
        return r