• Bug#1062361: marked as done (gnss-sdr: add support for loongarch64) (4/

    From Debian Bug Tracking System@1:229/2 to All on Tue Dec 10 12:40:02 2024
    [continued from previous message]

    add_test(NAME cpuinfo_aarch64_test COMMAND cpuinfo_aarch64_test)
    endif()
    ##------------------------------------------------------------------------------
    +## cpuinfo_loongarch64_test
    +if(PROCESSOR_IS_LOONGARCH64)
    + add_executable(cpuinfo_loongarch64_test cpuinfo_loongarch64_test.cc ../src/impl_loongarch64_linux.c)
    + target_link_libraries(cpuinfo_loongarch64_test all_libraries)
    + add_test(NAME cpuinfo_loongarch64_test COMMAND cpuinfo_loongarch64_test) +endif() +##------------------------------------------------------------------------------
    ## cpuinfo_mips_test
    if(PROCESSOR_IS_MIPS)
    add_executable(cpuinfo_mips_test cpuinfo_mips_test.cc ../src/impl_mips_linux_or_android.c)
    @@ -109,4 +116,4 @@ if(PROCESSOR_IS_RISCV)
    add_executable(cpuinfo_riscv_test cpuinfo_riscv_test.cc ../src/impl_riscv_linux.c)
    target_link_libraries(cpuinfo_riscv_test all_libraries)
    add_test(NAME cpuinfo_riscv_test COMMAND cpuinfo_riscv_test)
    -endif()
    \ No newline at end of file
    +endif()
    --- /dev/null
    +++ gnss-sdr-0.0.18/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/cpu_features/test/cpuinfo_loongarch64_test.cc
    @@ -0,0 +1,113 @@
    +// SPDX-FileCopyrightText: 2023 Google LLC
    +// SPDX-License-Identifier: Apache-2.0
    +
    +#include "cpuinfo_loongarch64.h"
    +#include "filesystem_for_testing.h"
    +#include "gtest/gtest.h"
    +#include "hwcaps_for_testing.h"
    +
    +namespace cpu_features
    +{
    +namespace
    +{
    +
    +TEST(CpuinfoLoongarch64Test, Loongarch64FeaturesEnum)
    +{
    + const char* last_name = GetLoongarch64FeaturesEnumName(LOONGARCH64_LAST_); + EXPECT_STREQ(last_name, "unknown_feature");
    + for (int i = static_cast<int>(LOONGARCH64_CPUCFG); i != static_cast<int>(LOONGARCH64_LAST_); ++i)
    + {
    + const auto feature = static_cast<Loongarch64FeaturesEnum>(i);
    + const char* name = GetLoongarch64FeaturesEnumName(feature);
    + ASSERT_FALSE(name == nullptr);
    + EXPECT_STRNE(name, "");
    + EXPECT_STRNE(name, last_name);
    + }