#!/usr/bin/env python3 # -*- coding: utf-8 -*- import argparse import os from gen_elemwise_utils import ARITIES, MODES def main(): parser = argparse.ArgumentParser( description="generate elemwise each mode", formatter_class=argparse.ArgumentDefaultsHelpFormatter, ) parser.add_argument("output", help="output directory") args = parser.parse_args() with open(args.output, "w") as fout: w = lambda s: print(s, file=fout) w("// generated by gen_elemwise_each_mode.py") keys = list(MODES.keys()) keys.sort() for (anum, ctype) in keys: w( "#define MEGDNN_FOREACH_ELEMWISE_MODE_{}_{}(cb) \\".format( ARITIES[anum], ctype ) ) for mode in MODES[(anum, ctype)]: w(" MEGDNN_ELEMWISE_MODE_ENABLE({}, cb) \\".format(mode)) w("") print("generated each_mode.inl") os.utime(args.output) if __name__ == "__main__": main()