https://github.com/llvm/llvm-project/pull/201748 added a fast branch for small inputs to double precision sin/cos, but the Ziv error bounds were too tight. Fixes in this PR: - Updating the Ziv error bounds to accommodate rounding errors. - Copy binary64 sin/cos hard-to-round cases from the CORE-MATH project. - Add python tool to convert textual hard to round cases to binary files, and add those binary files. - Add hard-to-round tests for double precision sin/cos in the exhaustive test folder. Fixes https://github.com/llvm/llvm-project/issues/220934. Assisted-by: Gemini is used to generate the worst-case text-to-binary tool. (cherry picked from commit dbac421efa19a5901f2511958040e18e8188b112)
LLVM libc ========= This directory and its subdirectories contain source code for llvm-libc, a retargetable implementation of the C standard library. LLVM is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.