Skip to content

[libc][math] Implement issignaling macro. #109615

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
Sep 25, 2024
Merged

Conversation

Sh0g0-1758
Copy link
Member

@Sh0g0-1758 Sh0g0-1758 commented Sep 23, 2024

@Sh0g0-1758 Sh0g0-1758 marked this pull request as ready for review September 23, 2024 14:49
@llvmbot llvmbot added the libc label Sep 23, 2024
@llvmbot
Copy link
Member

llvmbot commented Sep 23, 2024

@llvm/pr-subscribers-libc

Author: Shourya Goel (Sh0g0-1758)

Changes

WIP: Tests pass in overlay mode but not in full-build mode.


Full diff: https://github.com/llvm/llvm-project/pull/109615.diff

7 Files Affected:

  • (modified) libc/include/llvm-libc-macros/math-function-macros.h (+1)
  • (modified) libc/test/include/CMakeLists.txt (+45)
  • (added) libc/test/include/IsSignalingTest.h (+49)
  • (added) libc/test/include/issignaling_test.c (+25)
  • (added) libc/test/include/issignaling_test.cpp (+12)
  • (added) libc/test/include/issignalingf_test.cpp (+12)
  • (added) libc/test/include/issignalingl_test.cpp (+12)
diff --git a/libc/include/llvm-libc-macros/math-function-macros.h b/libc/include/llvm-libc-macros/math-function-macros.h
index 68f9ff9d1c0330..8284f18ecca5a2 100644
--- a/libc/include/llvm-libc-macros/math-function-macros.h
+++ b/libc/include/llvm-libc-macros/math-function-macros.h
@@ -20,5 +20,6 @@
   __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, x)
 #define isnormal(x) __builtin_isnormal(x)
 #define issubnormal(x) (fpclassify(x) == FP_SUBNORMAL)
+#define issignaling(x) __builtin_issignaling(x)
 
 #endif // LLVM_LIBC_MACROS_MATH_FUNCTION_MACROS_H
diff --git a/libc/test/include/CMakeLists.txt b/libc/test/include/CMakeLists.txt
index 12692eed417c45..dd8f21bdd07aeb 100644
--- a/libc/test/include/CMakeLists.txt
+++ b/libc/test/include/CMakeLists.txt
@@ -81,6 +81,36 @@ add_libc_test(
     libc.include.llvm-libc-macros.stdckdint_macros
 )
 
+add_libc_test(
+  issignaling_test
+  SUITE
+    libc_include_tests
+  SRCS
+    issignaling_test.cpp
+  DEPENDS
+    libc.include.llvm-libc-macros.math_function_macros
+)
+
+add_libc_test(
+  issignalingf_test
+  SUITE
+    libc_include_tests
+  SRCS
+    issignalingf_test.cpp
+  DEPENDS
+    libc.include.llvm-libc-macros.math_function_macros
+)
+
+add_libc_test(
+  issignalingl_test
+  SUITE
+    libc_include_tests
+  SRCS
+    issignalingl_test.cpp
+  DEPENDS
+    libc.include.llvm-libc-macros.math_function_macros
+)
+
 add_libc_test(
   issubnormal_test
   SUITE
@@ -366,6 +396,21 @@ add_libc_test(
     libc.include.llvm-libc-macros.math_function_macros
 )
 
+add_libc_test(
+  issignaling_c_test
+  C_TEST
+  UNIT_TEST_ONLY
+  SUITE
+    libc_include_tests
+  SRCS
+    issignaling_test.c
+  COMPILE_OPTIONS
+    -Wall
+    -Werror
+  DEPENDS
+    libc.include.llvm-libc-macros.math_function_macros
+)
+
 add_libc_test(
   isinf_c_test
   C_TEST
diff --git a/libc/test/include/IsSignalingTest.h b/libc/test/include/IsSignalingTest.h
new file mode 100644
index 00000000000000..c369cfe090ed30
--- /dev/null
+++ b/libc/test/include/IsSignalingTest.h
@@ -0,0 +1,49 @@
+//===-- Utility class to test the issignaling macro  ------------*- C++ -*-===//
+//
+// Part of the LLVM Project, 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
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_LIBC_TEST_INCLUDE_MATH_ISSIGNALING_H
+#define LLVM_LIBC_TEST_INCLUDE_MATH_ISSIGNALING_H
+
+#include "test/UnitTest/FPMatcher.h"
+#include "test/UnitTest/Test.h"
+
+#include "include/llvm-libc-macros/math-function-macros.h"
+
+template <typename T>
+class IsSignalingTest : public LIBC_NAMESPACE::testing::Test {
+  DECLARE_SPECIAL_CONSTANTS(T)
+
+public:
+  typedef int (*IsSignalingFunc)(T);
+
+  void testSpecialNumbers(IsSignalingFunc func) {
+    EXPECT_EQ(func(aNaN), 0);
+    EXPECT_EQ(func(neg_aNaN), 0);
+    EXPECT_EQ(func(sNaN), 1);
+    EXPECT_EQ(func(neg_sNaN), 1);
+    EXPECT_EQ(func(inf), 0);
+    EXPECT_EQ(func(neg_inf), 0);
+    EXPECT_EQ(func(min_normal), 0);
+    EXPECT_EQ(func(max_normal), 0);
+    EXPECT_EQ(func(neg_max_normal), 0);
+    EXPECT_EQ(func(min_denormal), 0);
+    EXPECT_EQ(func(neg_min_denormal), 0);
+    EXPECT_EQ(func(max_denormal), 0);
+    EXPECT_EQ(func(zero), 0);
+    EXPECT_EQ(func(neg_zero), 0);
+  }
+};
+
+#define LIST_ISSIGNALING_TESTS(T, func)                                        \
+  using LlvmLibcIsSignalingTest = IsSignalingTest<T>;                          \
+  TEST_F(LlvmLibcIsSignalingTest, SpecialNumbers) {                            \
+    auto issignaling_func = [](T x) { return func(x); };                       \
+    testSpecialNumbers(issignaling_func);                                      \
+  }
+
+#endif // LLVM_LIBC_TEST_INCLUDE_MATH_ISSIGNALING_H
diff --git a/libc/test/include/issignaling_test.c b/libc/test/include/issignaling_test.c
new file mode 100644
index 00000000000000..d65d3a818083e0
--- /dev/null
+++ b/libc/test/include/issignaling_test.c
@@ -0,0 +1,25 @@
+//===-- Unittests for issignaling macro -----------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDSList-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+#include "include/llvm-libc-macros/math-function-macros.h"
+
+#include <assert.h>
+
+// check if macro is defined
+#ifndef issignaling
+#error "issignaling macro is not defined"
+#else
+int main(void) {
+  assert(issignaling(__builtin_nans("")) == 1);
+  assert(issignaling(__builtin_nansf("")) == 1);
+  assert(issignaling(__builtin_nansl("")) == 1);
+  assert(issignaling(1.819f) == 0);
+  assert(issignaling(-1.726) == 0);
+  assert(issignaling(1.426L) == 0);
+  return 0;
+}
+#endif
diff --git a/libc/test/include/issignaling_test.cpp b/libc/test/include/issignaling_test.cpp
new file mode 100644
index 00000000000000..f8e5d82b9e2b3f
--- /dev/null
+++ b/libc/test/include/issignaling_test.cpp
@@ -0,0 +1,12 @@
+//===-- Unittest for issignaling[d] macro ---------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDSList-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "IsSignalingTest.h"
+#include "include/llvm-libc-macros/math-function-macros.h"
+
+LIST_ISSIGNALING_TESTS(double, issignaling)
diff --git a/libc/test/include/issignalingf_test.cpp b/libc/test/include/issignalingf_test.cpp
new file mode 100644
index 00000000000000..2377bed0513f7d
--- /dev/null
+++ b/libc/test/include/issignalingf_test.cpp
@@ -0,0 +1,12 @@
+//===-- Unittest for issignaling[f] macro ---------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDSList-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "IsSignalingTest.h"
+#include "include/llvm-libc-macros/math-function-macros.h"
+
+LIST_ISSIGNALING_TESTS(float, issignaling)
diff --git a/libc/test/include/issignalingl_test.cpp b/libc/test/include/issignalingl_test.cpp
new file mode 100644
index 00000000000000..3d7e793f89755e
--- /dev/null
+++ b/libc/test/include/issignalingl_test.cpp
@@ -0,0 +1,12 @@
+//===-- Unittest for issignaling[l] macro ---------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDSList-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "IsSignalingTest.h"
+#include "include/llvm-libc-macros/math-function-macros.h"
+
+LIST_ISSIGNALING_TESTS(long double, issignaling)

@lntue lntue merged commit ac802a3 into llvm:main Sep 25, 2024
7 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Sep 25, 2024

LLVM Buildbot has detected a new failure on builder libc-aarch64-ubuntu-fullbuild-dbg running on libc-aarch64-ubuntu while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/71/builds/7272

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[ RUN      ] LlvmLibcSignbitTest.SpecialNumbers
[       OK ] LlvmLibcSignbitTest.SpecialNumbers (2 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[79/928] Running unit test libc.test.include.isnormal_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNormalTest.SpecialNumbers
[       OK ] LlvmLibcIsNormalTest.SpecialNumbers (4 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[80/928] Linking CXX executable projects/libc/test/include/libc.test.include.isfinite_test.__unit__.__build__
[81/928] Running unit test libc.test.include.issignalingl_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/include && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignalingl_test.__unit__.__build__
No tests run.
[82/928] Running unit test libc.test.include.isnormalf_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNormalTest.SpecialNumbers
[       OK ] LlvmLibcIsNormalTest.SpecialNumbers (3 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[83/928] Running unit test libc.test.include.isfinite_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsFiniteTest.SpecialNumbers
[       OK ] LlvmLibcIsFiniteTest.SpecialNumbers (2 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[84/928] Running unit test libc.test.src.__support.str_to_float_test.__unit__
[==========] Running 22 tests from 1 test suite.
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32Simple
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32Simple (4 us)
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32ExtendedExp
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32ExtendedExp (2 us)
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32NegativeExp
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32NegativeExp (1 us)
[ RUN      ] LlvmLibcStrToFltTest.EiselLemireFallbackStates
[       OK ] LlvmLibcStrToFltTest.EiselLemireFallbackStates (1 us)
[ RUN      ] LlvmLibcStrToFltTest.SimpleDecimalConversion32SpecificFailures
[       OK ] LlvmLibcStrToFltTest.SimpleDecimalConversion32SpecificFailures (65 us)
[ RUN      ] LlvmLibcStrToFltTest.SimpleDecimalConversionExtraTypes
[       OK ] LlvmLibcStrToFltTest.SimpleDecimalConversionExtraTypes (11 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64Simple
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64Simple (3 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64ExtendedExp
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64ExtendedExp (1 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64NegativeExp
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64NegativeExp (1 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFloat64Simple
[       OK ] LlvmLibcStrToDblTest.EiselLemireFloat64Simple (1 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFloat64SpecificFailures
[       OK ] LlvmLibcStrToDblTest.EiselLemireFloat64SpecificFailures (2 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFallbackStates
[       OK ] LlvmLibcStrToDblTest.EiselLemireFallbackStates (1 us)
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[ RUN      ] LlvmLibcSignbitTest.SpecialNumbers
[       OK ] LlvmLibcSignbitTest.SpecialNumbers (2 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[79/928] Running unit test libc.test.include.isnormal_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNormalTest.SpecialNumbers
[       OK ] LlvmLibcIsNormalTest.SpecialNumbers (4 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[80/928] Linking CXX executable projects/libc/test/include/libc.test.include.isfinite_test.__unit__.__build__
[81/928] Running unit test libc.test.include.issignalingl_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/include && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignalingl_test.__unit__.__build__
No tests run.
[82/928] Running unit test libc.test.include.isnormalf_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNormalTest.SpecialNumbers
[       OK ] LlvmLibcIsNormalTest.SpecialNumbers (3 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[83/928] Running unit test libc.test.include.isfinite_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsFiniteTest.SpecialNumbers
[       OK ] LlvmLibcIsFiniteTest.SpecialNumbers (2 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[84/928] Running unit test libc.test.src.__support.str_to_float_test.__unit__
[==========] Running 22 tests from 1 test suite.
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32Simple
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32Simple (4 us)
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32ExtendedExp
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32ExtendedExp (2 us)
[ RUN      ] LlvmLibcStrToFltTest.ClingerFastPathFloat32NegativeExp
[       OK ] LlvmLibcStrToFltTest.ClingerFastPathFloat32NegativeExp (1 us)
[ RUN      ] LlvmLibcStrToFltTest.EiselLemireFallbackStates
[       OK ] LlvmLibcStrToFltTest.EiselLemireFallbackStates (1 us)
[ RUN      ] LlvmLibcStrToFltTest.SimpleDecimalConversion32SpecificFailures
[       OK ] LlvmLibcStrToFltTest.SimpleDecimalConversion32SpecificFailures (65 us)
[ RUN      ] LlvmLibcStrToFltTest.SimpleDecimalConversionExtraTypes
[       OK ] LlvmLibcStrToFltTest.SimpleDecimalConversionExtraTypes (11 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64Simple
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64Simple (3 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64ExtendedExp
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64ExtendedExp (1 us)
[ RUN      ] LlvmLibcStrToDblTest.ClingerFastPathFloat64NegativeExp
[       OK ] LlvmLibcStrToDblTest.ClingerFastPathFloat64NegativeExp (1 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFloat64Simple
[       OK ] LlvmLibcStrToDblTest.EiselLemireFloat64Simple (1 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFloat64SpecificFailures
[       OK ] LlvmLibcStrToDblTest.EiselLemireFloat64SpecificFailures (2 us)
[ RUN      ] LlvmLibcStrToDblTest.EiselLemireFallbackStates
[       OK ] LlvmLibcStrToDblTest.EiselLemireFallbackStates (1 us)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Sep 25, 2024

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-fullbuild-dbg-asan running on libc-x86_64-debian-fullbuild while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/171/builds/7120

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[ RUN      ] LlvmLibcLdExpTest.OverFlow
[       OK ] LlvmLibcLdExpTest.OverFlow (13 us)
[ RUN      ] LlvmLibcLdExpTest.UnderflowToZeroOnNormal
[       OK ] LlvmLibcLdExpTest.UnderflowToZeroOnNormal (7 us)
[ RUN      ] LlvmLibcLdExpTest.UnderflowToZeroOnSubnormal
[       OK ] LlvmLibcLdExpTest.UnderflowToZeroOnSubnormal (5 us)
[ RUN      ] LlvmLibcLdExpTest.NormalOperation
[       OK ] LlvmLibcLdExpTest.NormalOperation (174 us)
Ran 6 tests.  PASS: 6  FAIL: 0
[151/1169] Running unit test libc.test.include.issignalingl_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include/libc.test.include.issignalingl_test.__unit__.__build__
No tests run.
[152/1169] Running unit test libc.test.src.math.logb_test.__unit__
[==========] Running 4 tests from 1 test suite.
[ RUN      ] LlvmLibcLogbTest.SpecialNumbers
[       OK ] LlvmLibcLogbTest.SpecialNumbers (8 us)
[ RUN      ] LlvmLibcLogbTest.PowersOfTwo
[       OK ] LlvmLibcLogbTest.PowersOfTwo (7 us)
[ RUN      ] LlvmLibcLogbTest.SomeIntegers
[       OK ] LlvmLibcLogbTest.SomeIntegers (50 us)
[ RUN      ] LlvmLibcLogbTest.InRange
[       OK ] LlvmLibcLogbTest.InRange (3 ms)
Ran 4 tests.  PASS: 4  FAIL: 0
[153/1169] Running unit test libc.test.include.issignalingf_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingf_test.__unit__ /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignalingf_test.__unit__ 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/projects/libc/test/include/libc.test.include.issignalingf_test.__unit__.__build__
No tests run.
[154/1169] Running unit test libc.test.src.math.logbf_test.__unit__
[==========] Running 4 tests from 1 test suite.
[ RUN      ] LlvmLibcLogbTest.SpecialNumbers
[       OK ] LlvmLibcLogbTest.SpecialNumbers (9 us)
[ RUN      ] LlvmLibcLogbTest.PowersOfTwo
[       OK ] LlvmLibcLogbTest.PowersOfTwo (6 us)
[ RUN      ] LlvmLibcLogbTest.SomeIntegers
[       OK ] LlvmLibcLogbTest.SomeIntegers (5 us)
[ RUN      ] LlvmLibcLogbTest.InRange
[       OK ] LlvmLibcLogbTest.InRange (3 ms)
Ran 4 tests.  PASS: 4  FAIL: 0
[155/1169] Running unit test libc.test.src.math.logb_test.__unit__.__NO_FMA_OPT
[==========] Running 4 tests from 1 test suite.
[ RUN      ] LlvmLibcLogbTest.SpecialNumbers
[       OK ] LlvmLibcLogbTest.SpecialNumbers (11 us)
[ RUN      ] LlvmLibcLogbTest.PowersOfTwo
[       OK ] LlvmLibcLogbTest.PowersOfTwo (6 us)
[ RUN      ] LlvmLibcLogbTest.SomeIntegers
[       OK ] LlvmLibcLogbTest.SomeIntegers (7 us)
[ RUN      ] LlvmLibcLogbTest.InRange
[       OK ] LlvmLibcLogbTest.InRange (5 ms)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Sep 25, 2024

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-fullbuild-dbg running on libc-x86_64-debian-fullbuild while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/179/builds/7084

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[248/1173] Running unit test libc.test.src.math.smoke.canonicalize_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (5 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (3 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[249/1173] Running unit test libc.test.include.issignalingl_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignalingl_test.__unit__.__build__
No tests run.
[250/1173] Running unit test libc.test.src.math.smoke.canonicalizef_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (6 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (4 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[251/1173] Running unit test libc.test.src.math.smoke.canonicalizef_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (8 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (5 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[252/1173] Running unit test libc.test.src.math.smoke.canonicalizef128_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (7 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[253/1173] Running unit test libc.test.src.math.smoke.canonicalizef128_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (7 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[254/1173] Running unit test libc.test.src.math.smoke.canonicalizel_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (9 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
[ RUN      ] LlvmLibcCanonicalizeTest.X64_80SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.X64_80SpecialNumbers (54 us)
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[248/1173] Running unit test libc.test.src.math.smoke.canonicalize_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (5 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (3 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[249/1173] Running unit test libc.test.include.issignalingl_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignalingl_test.__unit__ 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignalingl_test.__unit__.__build__
No tests run.
[250/1173] Running unit test libc.test.src.math.smoke.canonicalizef_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (6 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (4 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[251/1173] Running unit test libc.test.src.math.smoke.canonicalizef_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (8 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (5 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[252/1173] Running unit test libc.test.src.math.smoke.canonicalizef128_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (7 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[253/1173] Running unit test libc.test.src.math.smoke.canonicalizef128_test.__unit__.__NO_FMA_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (7 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
Ran 2 tests.  PASS: 2  FAIL: 0
[254/1173] Running unit test libc.test.src.math.smoke.canonicalizel_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCanonicalizeTest.SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.SpecialNumbers (9 us)
[ RUN      ] LlvmLibcCanonicalizeTest.RegularNubmers
[       OK ] LlvmLibcCanonicalizeTest.RegularNubmers (6 us)
[ RUN      ] LlvmLibcCanonicalizeTest.X64_80SpecialNumbers
[       OK ] LlvmLibcCanonicalizeTest.X64_80SpecialNumbers (54 us)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Sep 25, 2024

LLVM Buildbot has detected a new failure on builder libc-riscv64-debian-fullbuild-dbg running on libc-riscv64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/183/builds/4415

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcStdCkdIntTest.Add
[       OK ] LlvmLibcStdCkdIntTest.Add (7 us)
[ RUN      ] LlvmLibcStdCkdIntTest.Sub
[       OK ] LlvmLibcStdCkdIntTest.Sub (3 us)
[ RUN      ] LlvmLibcStdCkdIntTest.Mul
[       OK ] LlvmLibcStdCkdIntTest.Mul (4 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[72/1070] Building CXX object projects/libc/test/include/CMakeFiles/libc.test.include.isfinitel_test.__unit__.__build__.dir/isfinitel_test.cpp.o
[73/1070] Running unit test libc.test.include.issignaling_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignaling_test.__unit__ /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignaling_test.__unit__ 
cd /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include && /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignaling_test.__unit__.__build__
No tests run.
[74/1070] Linking C executable projects/libc/test/include/libc.test.include.fpclassify_c_test.__unit__.__build__
[75/1070] Linking C executable projects/libc/test/include/libc.test.include.iszero_c_test.__unit__.__build__
[76/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinite_test.__unit__.__build__
[77/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinitef_test.__unit__.__build__
[78/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinitel_test.__unit__.__build__
ninja: build stopped: subcommand failed.
['ninja', 'libc-unit-tests'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 164, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 132, in main
    run_command(['ninja', 'libc-unit-tests'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 179, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc-unit-tests']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-api-test@@@
Running: ninja libc-api-test
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcStdCkdIntTest.Add
[       OK ] LlvmLibcStdCkdIntTest.Add (7 us)
[ RUN      ] LlvmLibcStdCkdIntTest.Sub
[       OK ] LlvmLibcStdCkdIntTest.Sub (3 us)
[ RUN      ] LlvmLibcStdCkdIntTest.Mul
[       OK ] LlvmLibcStdCkdIntTest.Mul (4 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[72/1070] Building CXX object projects/libc/test/include/CMakeFiles/libc.test.include.isfinitel_test.__unit__.__build__.dir/isfinitel_test.cpp.o
[73/1070] Running unit test libc.test.include.issignaling_test.__unit__
FAILED: projects/libc/test/include/CMakeFiles/libc.test.include.issignaling_test.__unit__ /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include/CMakeFiles/libc.test.include.issignaling_test.__unit__ 
cd /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include && /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/projects/libc/test/include/libc.test.include.issignaling_test.__unit__.__build__
No tests run.
[74/1070] Linking C executable projects/libc/test/include/libc.test.include.fpclassify_c_test.__unit__.__build__
[75/1070] Linking C executable projects/libc/test/include/libc.test.include.iszero_c_test.__unit__.__build__
[76/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinite_test.__unit__.__build__
[77/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinitef_test.__unit__.__build__
[78/1070] Linking CXX executable projects/libc/test/include/libc.test.include.isfinitel_test.__unit__.__build__
ninja: build stopped: subcommand failed.
['ninja', 'libc-unit-tests'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 164, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 132, in main
    run_command(['ninja', 'libc-unit-tests'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 179, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc-unit-tests']' returned non-zero exit status 1.

lntue added a commit that referenced this pull request Sep 25, 2024
@llvm-ci
Copy link
Collaborator

llvm-ci commented Sep 25, 2024

LLVM Buildbot has detected a new failure on builder libc-arm32-debian-dbg running on libc-arm32-debian while building libc at step 3 "checkout".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/182/builds/3748

Here is the relevant piece of the build log for the reference
Step 3 (checkout) failure: update (failure)
git version 2.39.2
remote: git: 'lariat' is not a git command. See 'git --help'.        
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header
remote: git: 'lariat' is not a git command. See 'git --help'.        
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header

lntue pushed a commit that referenced this pull request Sep 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants