ladybird/Userland/Libraries/LibC/fenv.cpp
kleines Filmröllchen 24af4f1882 LibC: Start on fenv support for RISC-V
Co-Authored-By: Sönke Holz <sholz8530@gmail.com>
2024-04-23 19:18:09 -06:00

29 lines
522 B
C++

/*
* Copyright (c) 2021, Mițca Dumitru <dumitru0mitca@gmail.com>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <AK/Types.h>
#include <fenv.h>
extern "C" {
int feupdateenv(fenv_t const* env)
{
auto currently_raised_exceptions = fetestexcept(FE_ALL_EXCEPT);
fesetenv(env);
feraiseexcept(currently_raised_exceptions);
return 0;
}
int fegetexceptflag(fexcept_t* except, int exceptions)
{
if (!except)
return 1;
*except = (uint16_t)fetestexcept(exceptions);
return 0;
}
}