# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Package for tests of CHERI RiscV simulator code.

package(default_applicable_licenses = ["//:license"])

config_setting(
    name = "darwin_arm64_cpu",
    values = {"cpu": "darwin_arm64"},
)

cc_test(
    name = "cheriot_register_test",
    size = "small",
    srcs = ["cheriot_register_test.cc"],
    deps = [
        "//cheriot:cheriot_state",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/status",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:arch_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
    ],
)

cc_test(
    name = "cheriot_state_test",
    size = "small",
    srcs = ["cheriot_state_test.cc"],
    deps = [
        "//cheriot:cheriot_state",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/strings:str_format",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_instructions_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_instructions",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings:str_format",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_i_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_i_instructions_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_instructions",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_m_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_m_instructions_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_instructions",
        "@com_google_absl//absl/random",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_zicsr_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_zicsr_instructions_test.cc",
    ],
    tags = ["not_run:arm"],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_instructions",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_encoding_test",
    size = "small",
    srcs = [
        "riscv_cheriot_encoding_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_decoder",
        "//cheriot:riscv_cheriot_isa",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_a_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_a_instructions_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_instructions",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/strings:string_view",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "cheriot_load_filter_test",
    size = "small",
    srcs = [
        "cheriot_load_filter_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_load_filter",
        "//cheriot:cheriot_state",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:counters",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "cheriot_test_rig_test",
    size = "small",
    srcs = [
        "cheriot_test_rig_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_test_rig_lib",
        "@com_google_absl//absl/log:check",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "librenode_mpact_cheriot.so_test",
    size = "small",
    srcs = ["librenode_mpact_cheriot_so_test.cc"],
    data = [
        "//cheriot:renode_mpact_cheriot",
    ],
    deps = [
        "@com_google_absl//absl/debugging:leak_check",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cheriot_rvv_fp_decoder_test",
    size = "small",
    srcs = ["cheriot_rvv_fp_decoder_test.cc"],
    deps = [
        "//cheriot:riscv_cheriot_rvv_fp_decoder",
        "@com_google_absl//absl/log:log_sink_registry",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/util/other:log_sink",
    ],
)

cc_test(
    name = "cheriot_rvv_decoder_test",
    size = "small",
    srcs = ["cheriot_rvv_decoder_test.cc"],
    deps = [
        "//cheriot:riscv_cheriot_rvv_decoder",
        "@com_google_absl//absl/log:log_sink_registry",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/util/other:log_sink",
    ],
)

cc_library(
    name = "riscv_cheriot_vector_instructions_test_base",
    testonly = True,
    hdrs = ["riscv_cheriot_vector_instructions_test_base.h"],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/functional:bind_front",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:arch_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_library(
    name = "riscv_cheriot_vector_fp_test_utilities",
    testonly = True,
    hdrs = ["riscv_cheriot_vector_fp_test_utilities.h"],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_mpact-riscv//riscv:riscv_fp_state",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_true_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_true_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_memory_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_memory_instructions_test.cc",
    ],
    deps = [
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/functional:bind_front",
        "@com_google_absl//absl/log",
        "@com_google_absl//absl/numeric:bits",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:arch_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/util/memory",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_opi_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_opi_instructions_test.cc",
    ],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/functional:bind_front",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_opm_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_opm_instructions_test.cc",
    ],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/base",
        "@com_google_absl//absl/log:check",
        "@com_google_absl//absl/numeric:int128",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_reduction_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_reduction_instructions_test.cc",
    ],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_unary_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_unary_instructions_test.cc",
    ],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_fp_unary_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_fp_unary_instructions_test.cc",
    ],
    copts = [
        "-ffp-model=strict",
    ] + select({
        "darwin_arm64_cpu": [],
        "//conditions:default": ["-fprotect-parens"],
    }),
    deps = [
        ":riscv_cheriot_vector_fp_test_utilities",
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector_fp",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_fp_state",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:core",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_fp_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_fp_instructions_test.cc",
    ],
    copts = [
        "-ffp-model=strict",
    ] + select({
        "darwin_arm64_cpu": [],
        "//conditions:default": ["-fprotect-parens"],
    }),
    deps = [
        ":riscv_cheriot_vector_fp_test_utilities",
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:cheriot_vector_state",
        "//cheriot:riscv_cheriot_vector_fp",
        "@com_google_absl//absl/log",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_fp_state",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
        "@com_google_mpact-sim//mpact/sim/generic:type_helpers",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_fp_compare_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_fp_compare_instructions_test.cc",
    ],
    copts = [
        "-ffp-model=strict",
    ] + select({
        "darwin_arm64_cpu": [],
        "//conditions:default": ["-fprotect-parens"],
    }),
    deps = [
        ":riscv_cheriot_vector_fp_test_utilities",
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_vector_fp",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_fp_state",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_fp_reduction_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_fp_reduction_instructions_test.cc",
    ],
    copts = [
        "-ffp-model=strict",
    ] + select({
        "darwin_arm64_cpu": [],
        "//conditions:default": ["-fprotect-parens"],
    }),
    deps = [
        ":riscv_cheriot_vector_fp_test_utilities",
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_vector_fp",
        "@com_google_absl//absl/random",
        "@com_google_absl//absl/strings",
        "@com_google_absl//absl/types:span",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_fp_state",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
    ],
)

cc_test(
    name = "riscv_cheriot_vector_permute_instructions_test",
    size = "small",
    srcs = [
        "riscv_cheriot_vector_permute_instructions_test.cc",
    ],
    deps = [
        ":riscv_cheriot_vector_instructions_test_base",
        "//cheriot:cheriot_state",
        "//cheriot:riscv_cheriot_vector",
        "@com_google_absl//absl/random",
        "@com_google_googletest//:gtest_main",
        "@com_google_mpact-riscv//riscv:riscv_state",
        "@com_google_mpact-sim//mpact/sim/generic:instruction",
    ],
)
