# Copyright 2020 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

load("//iree/tools:compilation.bzl", "iree_bytecode_module")

package(
    default_visibility = ["//visibility:public"],
    features = ["layering_check"],
    licenses = ["notice"],  # Apache 2.0
)

iree_bytecode_module(
    name = "add_dynamic",
    testonly = True,
    src = "add_dynamic.mlir",
    c_identifier = "iree_tflite_testdata_add_dynamic",
    flags = [
        "--iree-input-type=mhlo",
        "-iree-native-bindings-support=false",
        "-iree-tflite-bindings-support",
        "-iree-mlir-to-vm-bytecode-module",
        "-iree-hal-target-backends=vmvx",
    ],
)

iree_bytecode_module(
    name = "add_multi",
    testonly = True,
    src = "add_multi.mlir",
    c_identifier = "iree_tflite_testdata_add_multi",
    flags = [
        "--iree-input-type=mhlo",
        "-iree-native-bindings-support=false",
        "-iree-tflite-bindings-support",
        "-iree-mlir-to-vm-bytecode-module",
        "-iree-hal-target-backends=vmvx",
    ],
)

iree_bytecode_module(
    name = "add_static",
    testonly = True,
    src = "add_static.mlir",
    c_identifier = "iree_tflite_testdata_add_static",
    flags = [
        "--iree-input-type=mhlo",
        "-iree-native-bindings-support=false",
        "-iree-tflite-bindings-support",
        "-iree-mlir-to-vm-bytecode-module",
        "-iree-hal-target-backends=vmvx",
    ],
)
