| #!/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="<module>", |
| help="The name of the module file", |
| ) |
| parser.add_argument( |
| "--device", |
| type=str, |
| required=True, |
| metavar="<device>", |
| help="The name of the HAL device", |
| ) |
| parser.add_argument( |
| "--function", |
| type=str, |
| required=True, |
| metavar="<function>", |
| help="The name of the entry function", |
| ) |
| parser.add_argument( |
| "--inputs", |
| type=str, |
| required=True, |
| metavar="<inputs>", |
| help="A list of comma-separated function inputs", |
| ) |
| parser.add_argument( |
| "--additional_args", |
| type=str, |
| required=True, |
| metavar="<additional-cl-args>", |
| help="Additional command-line arguments", |
| ) |
| parser.add_argument( |
| "-o", |
| "--output", |
| type=str, |
| required=True, |
| metavar="<output-file>", |
| 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()) |