def igemm_flatten(args, config_content):
    asm_target = os.path.join(args.dir, (os.path.splitext(os.path.basename(args.config_file))[0] + '.s'))
    emitter = mc_emit_to_file_t(asm_target)
    sec_root = config_content.get_section('codegen')[0]
    arch = amdgpu_arch_config_t({'arch': amdgpu_string_to_arch(sec_root['arch']), 'data_type': AMDGPU_PRECISION_FP32, 'code_object': amdgpu_string_to_codeobj(sec_root['code_object'])})
    mc = mc_asm_printer_t(emitter, arch)
    mc_set_current(mc)
    tunable_dicts = [sec.to_dict() for sec in config_content if sec.get_name().startswith('igemm_')]
    for td in tunable_dicts:
        td['arch'] = sec_root['arch']
    codegen_driver_t(mc, tunable_dicts)(split_kernel=args.split_kernel)
def igemm_flatten(args, config_content):
    asm_target = os.path.join(args.dir, (os.path.splitext(os.path.basename(args.config_file))[0] + '.s'))
    emitter = mc_emit_to_file_t(asm_target)
    sec_root = config_content.get_section('codegen')[0]
    arch = amdgpu_arch_config_t({'arch': amdgpu_string_to_arch(sec_root['arch']), 'data_type': AMDGPU_PRECISION_FP32, 'code_object': amdgpu_string_to_codeobj(sec_root['code_object'])})
    mc = mc_asm_printer_t(emitter, arch)
    mc_set_current(mc)
    tunable_dicts = [sec.to_dict() for sec in config_content if sec.get_name().startswith('igemm_')]
    for td in tunable_dicts:
        td['arch'] = sec_root['arch']
    codegen_driver_t(mc, tunable_dicts)(split_kernel=args.split_kernel)