#!/usr/bin/env python3 # Copyright 2021 The IREE Authors # # Licensed under the Apache License v2.0 with LLVM Exceptions. # See https://llvm.org/LICENSE.txt for license information. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception """Generates a flagfile for iree-benchmark-module.""" import argparse import os def parse_arguments(): """Parses command line arguments.""" parser = argparse.ArgumentParser() parser.add_argument( "--module", type=str, required=True, metavar="", help="The name of the module file", ) parser.add_argument( "--device", type=str, required=True, metavar="", help="The name of the HAL device", ) parser.add_argument( "--function", type=str, required=True, metavar="", help="The name of the entry function", ) parser.add_argument( "--inputs", type=str, required=True, metavar="", help="A list of comma-separated function inputs", ) parser.add_argument( "--additional_args", type=str, required=True, metavar="", help="Additional command-line arguments", ) parser.add_argument( "-o", "--output", type=str, required=True, metavar="", help="Output file to write to", ) return parser.parse_args() def main(args): lines = [ f"--device={args.device}", f"--module={args.module}", f"--function={args.function}", ] lines.extend([("--input=" + e) for e in args.inputs.split(",")]) lines.extend(args.additional_args.split(";")) content = "\n".join(lines) + "\n" with open(args.output, "w") as f: f.writelines(content) if __name__ == "__main__": main(parse_arguments())