From ac703eb5d22793ecf8e3c170312a2ddfa853898f Mon Sep 17 00:00:00 2001 From: Tim Hutt Date: Tue, 28 Jan 2025 12:50:43 +0000 Subject: [PATCH 1/2] Move softfloat into dependencies directory Move the softfloat library to a dependencies directory. In future we can add GMP there too to reduce the number of external dependencies needed and to support static linking. The directory was renamed from `SoftFloat-3e` to `berkeley-softfloat-3` because that's how the latest version is named. It hasn't been upgraded in this commit to make it simpler to review and help Git track history. A future commit will upgrade it. --- .pre-commit-config.yaml | 2 +- Makefile | 2 +- .../softfloat/berkeley-softfloat-3}/.clang-format | 0 .../softfloat/berkeley-softfloat-3}/COPYING.txt | 0 .../softfloat/berkeley-softfloat-3}/README.html | 0 .../softfloat/berkeley-softfloat-3}/README.txt | 0 .../berkeley-softfloat-3}/build/Linux-386-GCC/Makefile | 0 .../berkeley-softfloat-3}/build/Linux-386-GCC/platform.h | 0 .../berkeley-softfloat-3}/build/Linux-386-SSE2-GCC/Makefile | 0 .../berkeley-softfloat-3}/build/Linux-386-SSE2-GCC/platform.h | 0 .../berkeley-softfloat-3}/build/Linux-ARM-VFPv2-GCC/Makefile | 0 .../berkeley-softfloat-3}/build/Linux-ARM-VFPv2-GCC/platform.h | 0 .../berkeley-softfloat-3}/build/Linux-RISCV-GCC/Makefile | 0 .../berkeley-softfloat-3}/build/Linux-RISCV-GCC/platform.h | 0 .../berkeley-softfloat-3}/build/Linux-x86_64-GCC/Makefile | 0 .../berkeley-softfloat-3}/build/Linux-x86_64-GCC/platform.h | 0 .../softfloat/berkeley-softfloat-3}/build/Win32-MinGW/Makefile | 0 .../berkeley-softfloat-3}/build/Win32-MinGW/platform.h | 0 .../berkeley-softfloat-3}/build/Win32-SSE2-MinGW/Makefile | 0 .../berkeley-softfloat-3}/build/Win32-SSE2-MinGW/platform.h | 0 .../berkeley-softfloat-3}/build/Win64-MinGW-w64/Makefile | 0 .../berkeley-softfloat-3}/build/Win64-MinGW-w64/platform.h | 0 .../berkeley-softfloat-3}/build/template-FAST_INT64/Makefile | 0 .../berkeley-softfloat-3}/build/template-FAST_INT64/platform.h | 0 .../build/template-not-FAST_INT64/Makefile | 0 .../build/template-not-FAST_INT64/platform.h | 0 .../softfloat/berkeley-softfloat-3}/doc/SoftFloat-history.html | 0 .../softfloat/berkeley-softfloat-3}/doc/SoftFloat-source.html | 0 .../softfloat/berkeley-softfloat-3}/doc/SoftFloat.html | 0 .../source/8086-SSE/extF80M_isSignalingNaN.c | 0 .../source/8086-SSE/f128M_isSignalingNaN.c | 0 .../source/8086-SSE/s_commonNaNToExtF80M.c | 0 .../source/8086-SSE/s_commonNaNToExtF80UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF128M.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF128UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF16UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF32UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF64UI.c | 0 .../source/8086-SSE/s_extF80MToCommonNaN.c | 0 .../source/8086-SSE/s_extF80UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_f128MToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_f128UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_f16UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_f32UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_f64UIToCommonNaN.c | 0 .../source/8086-SSE/s_propagateNaNExtF80M.c | 0 .../source/8086-SSE/s_propagateNaNExtF80UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF128M.c | 0 .../source/8086-SSE/s_propagateNaNF128UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF16UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF32UI.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF64UI.c | 0 .../source/8086-SSE/softfloat_raiseFlags.c | 0 .../berkeley-softfloat-3}/source/8086-SSE/specialize.h | 0 .../berkeley-softfloat-3}/source/8086/extF80M_isSignalingNaN.c | 0 .../berkeley-softfloat-3}/source/8086/f128M_isSignalingNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToExtF80M.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToExtF80UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToF128M.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToF128UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToF16UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToF32UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_commonNaNToF64UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_extF80MToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_extF80UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_f128MToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_f128UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_f16UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_f32UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_f64UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNExtF80M.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNExtF80UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNF128M.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNF128UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNF16UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNF32UI.c | 0 .../berkeley-softfloat-3}/source/8086/s_propagateNaNF64UI.c | 0 .../berkeley-softfloat-3}/source/8086/softfloat_raiseFlags.c | 0 .../softfloat/berkeley-softfloat-3}/source/8086/specialize.h | 0 .../source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c | 0 .../source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c | 0 .../source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c | 0 .../source/ARM-VFPv2-defaultNaN/specialize.h | 0 .../source/ARM-VFPv2/extF80M_isSignalingNaN.c | 0 .../source/ARM-VFPv2/f128M_isSignalingNaN.c | 0 .../source/ARM-VFPv2/s_commonNaNToExtF80M.c | 0 .../source/ARM-VFPv2/s_commonNaNToExtF80UI.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF128M.c | 0 .../source/ARM-VFPv2/s_commonNaNToF128UI.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF16UI.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF32UI.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF64UI.c | 0 .../source/ARM-VFPv2/s_extF80MToCommonNaN.c | 0 .../source/ARM-VFPv2/s_extF80UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_f128MToCommonNaN.c | 0 .../source/ARM-VFPv2/s_f128UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_f16UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_f32UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/s_f64UIToCommonNaN.c | 0 .../source/ARM-VFPv2/s_propagateNaNExtF80M.c | 0 .../source/ARM-VFPv2/s_propagateNaNExtF80UI.c | 0 .../source/ARM-VFPv2/s_propagateNaNF128M.c | 0 .../source/ARM-VFPv2/s_propagateNaNF128UI.c | 0 .../source/ARM-VFPv2/s_propagateNaNF16UI.c | 0 .../source/ARM-VFPv2/s_propagateNaNF32UI.c | 0 .../source/ARM-VFPv2/s_propagateNaNF64UI.c | 0 .../source/ARM-VFPv2/softfloat_raiseFlags.c | 0 .../berkeley-softfloat-3}/source/ARM-VFPv2/specialize.h | 0 .../berkeley-softfloat-3}/source/RISCV/s_commonNaNToF32UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_commonNaNToF64UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_f32UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_f64UIToCommonNaN.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_propagateNaNF128UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_propagateNaNF16UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_propagateNaNF32UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/s_propagateNaNF64UI.c | 0 .../berkeley-softfloat-3}/source/RISCV/softfloat_raiseFlags.c | 0 .../softfloat/berkeley-softfloat-3}/source/RISCV/specialize.h | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_eq.c | 0 .../berkeley-softfloat-3}/source/extF80M_eq_signaling.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_i32.c | 0 .../berkeley-softfloat-3}/source/extF80M_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_i64.c | 0 .../berkeley-softfloat-3}/source/extF80M_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_ui32.c | 0 .../berkeley-softfloat-3}/source/extF80M_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80M_to_ui64.c | 0 .../berkeley-softfloat-3}/source/extF80M_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_eq.c | 0 .../berkeley-softfloat-3}/source/extF80_eq_signaling.c | 0 .../berkeley-softfloat-3}/source/extF80_isSignalingNaN.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_i32.c | 0 .../berkeley-softfloat-3}/source/extF80_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_i64.c | 0 .../berkeley-softfloat-3}/source/extF80_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_ui32.c | 0 .../berkeley-softfloat-3}/source/extF80_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/extF80_to_ui64.c | 0 .../berkeley-softfloat-3}/source/extF80_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_eq.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_eq_signaling.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_mulAdd.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_i32.c | 0 .../berkeley-softfloat-3}/source/f128M_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_i64.c | 0 .../berkeley-softfloat-3}/source/f128M_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_ui32.c | 0 .../berkeley-softfloat-3}/source/f128M_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128M_to_ui64.c | 0 .../berkeley-softfloat-3}/source/f128M_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_eq.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_eq_signaling.c | 0 .../berkeley-softfloat-3}/source/f128_isSignalingNaN.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_mulAdd.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_i32.c | 0 .../berkeley-softfloat-3}/source/f128_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_i64.c | 0 .../berkeley-softfloat-3}/source/f128_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_ui32.c | 0 .../berkeley-softfloat-3}/source/f128_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f128_to_ui64.c | 0 .../berkeley-softfloat-3}/source/f128_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_eq.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_eq_signaling.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_isSignalingNaN.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_mulAdd.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_i32.c | 0 .../berkeley-softfloat-3}/source/f16_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_i64.c | 0 .../berkeley-softfloat-3}/source/f16_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_ui32.c | 0 .../berkeley-softfloat-3}/source/f16_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f16_to_ui64.c | 0 .../berkeley-softfloat-3}/source/f16_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_eq.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_eq_signaling.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_isSignalingNaN.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_mulAdd.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_i32.c | 0 .../berkeley-softfloat-3}/source/f32_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_i64.c | 0 .../berkeley-softfloat-3}/source/f32_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_ui32.c | 0 .../berkeley-softfloat-3}/source/f32_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f32_to_ui64.c | 0 .../berkeley-softfloat-3}/source/f32_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_add.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_div.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_eq.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_eq_signaling.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_isSignalingNaN.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_le.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_le_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_lt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_lt_quiet.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_mul.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_mulAdd.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_rem.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_roundToInt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_sqrt.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_sub.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_i32.c | 0 .../berkeley-softfloat-3}/source/f64_to_i32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_i64.c | 0 .../berkeley-softfloat-3}/source/f64_to_i64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_ui32.c | 0 .../berkeley-softfloat-3}/source/f64_to_ui32_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/f64_to_ui64.c | 0 .../berkeley-softfloat-3}/source/f64_to_ui64_r_minMag.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/i32_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/i64_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/include/internals.h | 0 .../softfloat/berkeley-softfloat-3}/source/include/opts-GCC.h | 0 .../berkeley-softfloat-3}/source/include/primitiveTypes.h | 0 .../softfloat/berkeley-softfloat-3}/source/include/primitives.h | 0 .../softfloat/berkeley-softfloat-3}/source/include/softfloat.h | 0 .../berkeley-softfloat-3}/source/include/softfloat_types.h | 0 .../softfloat/berkeley-softfloat-3}/source/s_add128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_add256M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addCarryM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addComplCarryM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addExtF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addMagsExtF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addMagsF128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addMagsF16.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addMagsF32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_addMagsF64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_approxRecip32_1.c | 0 .../berkeley-softfloat-3}/source/s_approxRecipSqrt32_1.c | 0 .../berkeley-softfloat-3}/source/s_approxRecipSqrt_1Ks.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_approxRecip_1Ks.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_compare128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_compare96M.c | 0 .../berkeley-softfloat-3}/source/s_compareNonnormExtF80M.c | 0 .../berkeley-softfloat-3}/source/s_countLeadingZeros16.c | 0 .../berkeley-softfloat-3}/source/s_countLeadingZeros32.c | 0 .../berkeley-softfloat-3}/source/s_countLeadingZeros64.c | 0 .../berkeley-softfloat-3}/source/s_countLeadingZeros8.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_eq128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_invalidExtF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_invalidF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_isNaNF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_le128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_lt128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mul128By32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mul128MTo256M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mul128To256M.c | 0 .../berkeley-softfloat-3}/source/s_mul64ByShifted32To128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mul64To128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mul64To128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mulAddF128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mulAddF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mulAddF16.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mulAddF32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_mulAddF64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_negXM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_normExtF80SigM.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackMToExtF80M.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackMToF128M.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackToExtF80.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackToF128.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackToF16.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackToF32.c | 0 .../berkeley-softfloat-3}/source/s_normRoundPackToF64.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalExtF80Sig.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalF128Sig.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalF128SigM.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalF16Sig.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalF32Sig.c | 0 .../berkeley-softfloat-3}/source/s_normSubnormalF64Sig.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_remStepMBy32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundMToI64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundMToUI64.c | 0 .../berkeley-softfloat-3}/source/s_roundPackMToExtF80M.c | 0 .../berkeley-softfloat-3}/source/s_roundPackMToF128M.c | 0 .../berkeley-softfloat-3}/source/s_roundPackToExtF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundPackToF128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundPackToF16.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundPackToF32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundPackToF64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundToI32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundToI64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundToUI32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_roundToUI64.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftLeftM.c | 0 .../berkeley-softfloat-3}/source/s_shiftNormSigF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftRightJam128.c | 0 .../berkeley-softfloat-3}/source/s_shiftRightJam128Extra.c | 0 .../berkeley-softfloat-3}/source/s_shiftRightJam256M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftRightJam32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftRightJam64.c | 0 .../berkeley-softfloat-3}/source/s_shiftRightJam64Extra.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftRightJamM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shiftRightM.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftLeft128.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftLeft64To96M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shortShiftLeftM.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRight128.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightExtendM.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightJam128.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightJam128Extra.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightJam64.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightJam64Extra.c | 0 .../berkeley-softfloat-3}/source/s_shortShiftRightJamM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_shortShiftRightM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_sub128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_sub1XM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_sub256M.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subM.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subMagsExtF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subMagsF128.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subMagsF16.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subMagsF32.c | 0 .../softfloat/berkeley-softfloat-3}/source/s_subMagsF64.c | 0 .../berkeley-softfloat-3}/source/s_tryPropagateNaNExtF80M.c | 0 .../berkeley-softfloat-3}/source/s_tryPropagateNaNF128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/softfloat_state.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui32_to_f64.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_extF80.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_extF80M.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_f128.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_f128M.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_f16.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_f32.c | 0 .../softfloat/berkeley-softfloat-3}/source/ui64_to_f64.c | 0 466 files changed, 2 insertions(+), 2 deletions(-) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/.clang-format (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/COPYING.txt (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/README.html (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/README.txt (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-386-GCC/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-386-GCC/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-386-SSE2-GCC/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-386-SSE2-GCC/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-ARM-VFPv2-GCC/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-ARM-VFPv2-GCC/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-RISCV-GCC/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-RISCV-GCC/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-x86_64-GCC/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Linux-x86_64-GCC/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win32-MinGW/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win32-MinGW/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win32-SSE2-MinGW/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win32-SSE2-MinGW/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win64-MinGW-w64/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/Win64-MinGW-w64/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/template-FAST_INT64/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/template-FAST_INT64/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/template-not-FAST_INT64/Makefile (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/build/template-not-FAST_INT64/platform.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/doc/SoftFloat-history.html (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/doc/SoftFloat-source.html (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/doc/SoftFloat.html (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/extF80M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/f128M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_commonNaNToF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_extF80MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_extF80UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_f128MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_f128UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_f16UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_f32UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_f64UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/s_propagateNaNF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/softfloat_raiseFlags.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086-SSE/specialize.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/extF80M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/f128M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_commonNaNToF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_extF80MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_extF80UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_f128MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_f128UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_f16UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_f32UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_f64UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/s_propagateNaNF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/softfloat_raiseFlags.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/8086/specialize.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2-defaultNaN/specialize.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/extF80M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/f128M_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_commonNaNToF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_extF80MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_extF80UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_f128MToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_f128UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_f16UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_f32UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_f64UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNExtF80UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/s_propagateNaNF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/softfloat_raiseFlags.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ARM-VFPv2/specialize.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_commonNaNToF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_commonNaNToF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_f32UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_f64UIToCommonNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_propagateNaNF128UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_propagateNaNF16UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_propagateNaNF32UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/s_propagateNaNF64UI.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/softfloat_raiseFlags.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/RISCV/specialize.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80M_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/extF80_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_mulAdd.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128M_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_mulAdd.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f128_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_mulAdd.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f16_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_mulAdd.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f32_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_add.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_div.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_eq.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_eq_signaling.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_isSignalingNaN.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_le.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_le_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_lt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_lt_quiet.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_mul.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_mulAdd.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_rem.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_roundToInt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_sqrt.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_sub.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_i32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_i32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_i64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_i64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_ui32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_ui32_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_ui64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/f64_to_ui64_r_minMag.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i32_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/i64_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/internals.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/opts-GCC.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/primitiveTypes.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/primitives.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/softfloat.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/include/softfloat_types.h (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_add128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_add256M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addCarryM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addComplCarryM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addMagsExtF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addMagsF128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addMagsF16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addMagsF32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_addMagsF64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_approxRecip32_1.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_approxRecipSqrt32_1.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_approxRecipSqrt_1Ks.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_approxRecip_1Ks.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_compare128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_compare96M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_compareNonnormExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_countLeadingZeros16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_countLeadingZeros32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_countLeadingZeros64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_countLeadingZeros8.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_eq128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_invalidExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_invalidF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_isNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_le128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_lt128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul128By32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul128MTo256M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul128To256M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul64ByShifted32To128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul64To128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mul64To128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mulAddF128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mulAddF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mulAddF16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mulAddF32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_mulAddF64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_negXM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normExtF80SigM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackMToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackMToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackToExtF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackToF128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackToF16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackToF32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normRoundPackToF64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalExtF80Sig.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalF128Sig.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalF128SigM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalF16Sig.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalF32Sig.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_normSubnormalF64Sig.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_remStepMBy32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundMToI64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundMToUI64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackMToExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackMToF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackToExtF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackToF128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackToF16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackToF32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundPackToF64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundToI32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundToI64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundToUI32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_roundToUI64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftLeftM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftNormSigF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam128Extra.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam256M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJam64Extra.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightJamM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shiftRightM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftLeft128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftLeft64To96M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftLeftM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRight128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightExtendM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightJam128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightJam128Extra.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightJam64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightJam64Extra.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightJamM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_shortShiftRightM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_sub128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_sub1XM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_sub256M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subM.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subMagsExtF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subMagsF128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subMagsF16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subMagsF32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_subMagsF64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_tryPropagateNaNExtF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/s_tryPropagateNaNF128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/softfloat_state.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui32_to_f64.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_extF80.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_extF80M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_f128.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_f128M.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_f16.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_f32.c (100%) rename {c_emulator/SoftFloat-3e => dependencies/softfloat/berkeley-softfloat-3}/source/ui64_to_f64.c (100%) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d8791c06f..2b0f185cd 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks -exclude: '^(prover_snapshots)|(generated_definitions)|(c_emulator/SoftFloat-3e)' +exclude: '^(prover_snapshots)|(generated_definitions)|(dependencies/softfloat/berkeley-softfloat-3)' minimum_pre_commit_version: 2.10.0 repos: - repo: https://github.com/pre-commit/pre-commit-hooks diff --git a/Makefile b/Makefile index 07675708e..627859181 100644 --- a/Makefile +++ b/Makefile @@ -148,7 +148,7 @@ C_WARNINGS ?= C_INCS = $(addprefix c_emulator/,riscv_prelude.h riscv_platform_impl.h riscv_platform.h riscv_softfloat.h) C_SRCS = $(addprefix c_emulator/,riscv_prelude.c riscv_platform_impl.c riscv_platform.c riscv_softfloat.c riscv_sim.c) -SOFTFLOAT_DIR = c_emulator/SoftFloat-3e +SOFTFLOAT_DIR = dependencies/softfloat/berkeley-softfloat-3 SOFTFLOAT_INCDIR = $(SOFTFLOAT_DIR)/source/include SOFTFLOAT_LIBDIR = $(SOFTFLOAT_DIR)/build/Linux-RISCV-GCC SOFTFLOAT_FLAGS = -I $(SOFTFLOAT_INCDIR) diff --git a/c_emulator/SoftFloat-3e/.clang-format b/dependencies/softfloat/berkeley-softfloat-3/.clang-format similarity index 100% rename from c_emulator/SoftFloat-3e/.clang-format rename to dependencies/softfloat/berkeley-softfloat-3/.clang-format diff --git a/c_emulator/SoftFloat-3e/COPYING.txt b/dependencies/softfloat/berkeley-softfloat-3/COPYING.txt similarity index 100% rename from c_emulator/SoftFloat-3e/COPYING.txt rename to dependencies/softfloat/berkeley-softfloat-3/COPYING.txt diff --git a/c_emulator/SoftFloat-3e/README.html b/dependencies/softfloat/berkeley-softfloat-3/README.html similarity index 100% rename from c_emulator/SoftFloat-3e/README.html rename to dependencies/softfloat/berkeley-softfloat-3/README.html diff --git a/c_emulator/SoftFloat-3e/README.txt b/dependencies/softfloat/berkeley-softfloat-3/README.txt similarity index 100% rename from c_emulator/SoftFloat-3e/README.txt rename to dependencies/softfloat/berkeley-softfloat-3/README.txt diff --git a/c_emulator/SoftFloat-3e/build/Linux-386-GCC/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-GCC/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-386-GCC/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-GCC/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Linux-386-GCC/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-GCC/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-386-GCC/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-GCC/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Linux-386-SSE2-GCC/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-SSE2-GCC/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-386-SSE2-GCC/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-SSE2-GCC/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Linux-386-SSE2-GCC/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-SSE2-GCC/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-386-SSE2-GCC/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-386-SSE2-GCC/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-ARM-VFPv2-GCC/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-ARM-VFPv2-GCC/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-ARM-VFPv2-GCC/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-ARM-VFPv2-GCC/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Linux-RISCV-GCC/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-RISCV-GCC/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-RISCV-GCC/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-RISCV-GCC/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Linux-RISCV-GCC/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-RISCV-GCC/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-RISCV-GCC/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-RISCV-GCC/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Linux-x86_64-GCC/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-x86_64-GCC/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-x86_64-GCC/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-x86_64-GCC/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Linux-x86_64-GCC/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Linux-x86_64-GCC/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Linux-x86_64-GCC/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Linux-x86_64-GCC/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Win32-MinGW/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Win32-MinGW/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win32-MinGW/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Win32-MinGW/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Win32-MinGW/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Win32-MinGW/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win32-MinGW/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Win32-MinGW/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Win32-SSE2-MinGW/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Win32-SSE2-MinGW/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win32-SSE2-MinGW/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Win32-SSE2-MinGW/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Win32-SSE2-MinGW/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Win32-SSE2-MinGW/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win32-SSE2-MinGW/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Win32-SSE2-MinGW/platform.h diff --git a/c_emulator/SoftFloat-3e/build/Win64-MinGW-w64/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/Win64-MinGW-w64/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win64-MinGW-w64/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/Win64-MinGW-w64/Makefile diff --git a/c_emulator/SoftFloat-3e/build/Win64-MinGW-w64/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/Win64-MinGW-w64/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/Win64-MinGW-w64/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/Win64-MinGW-w64/platform.h diff --git a/c_emulator/SoftFloat-3e/build/template-FAST_INT64/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/template-FAST_INT64/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/template-FAST_INT64/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/template-FAST_INT64/Makefile diff --git a/c_emulator/SoftFloat-3e/build/template-FAST_INT64/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/template-FAST_INT64/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/template-FAST_INT64/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/template-FAST_INT64/platform.h diff --git a/c_emulator/SoftFloat-3e/build/template-not-FAST_INT64/Makefile b/dependencies/softfloat/berkeley-softfloat-3/build/template-not-FAST_INT64/Makefile similarity index 100% rename from c_emulator/SoftFloat-3e/build/template-not-FAST_INT64/Makefile rename to dependencies/softfloat/berkeley-softfloat-3/build/template-not-FAST_INT64/Makefile diff --git a/c_emulator/SoftFloat-3e/build/template-not-FAST_INT64/platform.h b/dependencies/softfloat/berkeley-softfloat-3/build/template-not-FAST_INT64/platform.h similarity index 100% rename from c_emulator/SoftFloat-3e/build/template-not-FAST_INT64/platform.h rename to dependencies/softfloat/berkeley-softfloat-3/build/template-not-FAST_INT64/platform.h diff --git a/c_emulator/SoftFloat-3e/doc/SoftFloat-history.html b/dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat-history.html similarity index 100% rename from c_emulator/SoftFloat-3e/doc/SoftFloat-history.html rename to dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat-history.html diff --git a/c_emulator/SoftFloat-3e/doc/SoftFloat-source.html b/dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat-source.html similarity index 100% rename from c_emulator/SoftFloat-3e/doc/SoftFloat-source.html rename to dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat-source.html diff --git a/c_emulator/SoftFloat-3e/doc/SoftFloat.html b/dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat.html similarity index 100% rename from c_emulator/SoftFloat-3e/doc/SoftFloat.html rename to dependencies/softfloat/berkeley-softfloat-3/doc/SoftFloat.html diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/extF80M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/extF80M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/extF80M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/extF80M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/f128M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/f128M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/f128M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/f128M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_commonNaNToF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_commonNaNToF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_extF80MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_extF80MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_extF80MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_extF80MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_extF80UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_extF80UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_extF80UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_extF80UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_f128MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f128MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_f128MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f128MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_f128UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f128UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_f128UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f128UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_f16UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f16UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_f16UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f16UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_f32UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f32UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_f32UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f32UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_f64UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f64UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_f64UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_f64UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/s_propagateNaNF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/s_propagateNaNF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/softfloat_raiseFlags.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/softfloat_raiseFlags.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/softfloat_raiseFlags.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/softfloat_raiseFlags.c diff --git a/c_emulator/SoftFloat-3e/source/8086-SSE/specialize.h b/dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/specialize.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086-SSE/specialize.h rename to dependencies/softfloat/berkeley-softfloat-3/source/8086-SSE/specialize.h diff --git a/c_emulator/SoftFloat-3e/source/8086/extF80M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/extF80M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/extF80M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/extF80M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/f128M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/f128M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/f128M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/f128M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_commonNaNToF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_commonNaNToF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_extF80MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_extF80MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_extF80MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_extF80MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_extF80UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_extF80UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_extF80UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_extF80UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_f128MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f128MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_f128MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f128MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_f128UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f128UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_f128UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f128UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_f16UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f16UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_f16UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f16UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_f32UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f32UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_f32UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f32UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_f64UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f64UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_f64UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_f64UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/s_propagateNaNF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/s_propagateNaNF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/8086/softfloat_raiseFlags.c b/dependencies/softfloat/berkeley-softfloat-3/source/8086/softfloat_raiseFlags.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/softfloat_raiseFlags.c rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/softfloat_raiseFlags.c diff --git a/c_emulator/SoftFloat-3e/source/8086/specialize.h b/dependencies/softfloat/berkeley-softfloat-3/source/8086/specialize.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/8086/specialize.h rename to dependencies/softfloat/berkeley-softfloat-3/source/8086/specialize.h diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/extF80M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/f128M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_commonNaNToF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_extF80MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_extF80UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f128MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f128UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f16UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f32UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_f64UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/s_propagateNaNF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/softfloat_raiseFlags.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/specialize.h b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/specialize.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2-defaultNaN/specialize.h rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2-defaultNaN/specialize.h diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/extF80M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/extF80M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/extF80M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/extF80M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/f128M_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/f128M_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/f128M_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/f128M_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_commonNaNToF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_commonNaNToF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_extF80MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_extF80MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_extF80MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_extF80MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_extF80UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_extF80UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_extF80UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_extF80UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f128MToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f128MToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f128MToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f128MToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f128UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f128UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f128UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f128UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f16UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f16UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f16UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f16UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f32UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f32UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f32UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f32UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f64UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f64UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_f64UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_f64UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNExtF80UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNExtF80UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNExtF80UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNExtF80UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/s_propagateNaNF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/softfloat_raiseFlags.c b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/softfloat_raiseFlags.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/softfloat_raiseFlags.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/softfloat_raiseFlags.c diff --git a/c_emulator/SoftFloat-3e/source/ARM-VFPv2/specialize.h b/dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/specialize.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/ARM-VFPv2/specialize.h rename to dependencies/softfloat/berkeley-softfloat-3/source/ARM-VFPv2/specialize.h diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_commonNaNToF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_commonNaNToF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_commonNaNToF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_commonNaNToF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_commonNaNToF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_commonNaNToF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_commonNaNToF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_commonNaNToF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_f32UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_f32UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_f32UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_f32UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_f64UIToCommonNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_f64UIToCommonNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_f64UIToCommonNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_f64UIToCommonNaN.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF128UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF128UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF128UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF128UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF16UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF16UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF16UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF16UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF32UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF32UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF32UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF32UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF64UI.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF64UI.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/s_propagateNaNF64UI.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/s_propagateNaNF64UI.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/softfloat_raiseFlags.c b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/softfloat_raiseFlags.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/softfloat_raiseFlags.c rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/softfloat_raiseFlags.c diff --git a/c_emulator/SoftFloat-3e/source/RISCV/specialize.h b/dependencies/softfloat/berkeley-softfloat-3/source/RISCV/specialize.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/RISCV/specialize.h rename to dependencies/softfloat/berkeley-softfloat-3/source/RISCV/specialize.h diff --git a/c_emulator/SoftFloat-3e/source/extF80M_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_add.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_div.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_eq.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_le.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_lt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_mul.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_rem.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_sub.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80M_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80M_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80M_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_add.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_div.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_eq.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_le.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_lt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_mul.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_rem.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_sub.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/extF80_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/extF80_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/extF80_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_add.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_div.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_eq.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_le.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_lt.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_mul.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_mulAdd.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_mulAdd.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_mulAdd.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_mulAdd.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_rem.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_sub.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/f128M_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128M_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128M_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_add.c diff --git a/c_emulator/SoftFloat-3e/source/f128_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_div.c diff --git a/c_emulator/SoftFloat-3e/source/f128_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_eq.c diff --git a/c_emulator/SoftFloat-3e/source/f128_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/f128_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/f128_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_le.c diff --git a/c_emulator/SoftFloat-3e/source/f128_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f128_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_lt.c diff --git a/c_emulator/SoftFloat-3e/source/f128_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f128_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_mul.c diff --git a/c_emulator/SoftFloat-3e/source/f128_mulAdd.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_mulAdd.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_mulAdd.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_mulAdd.c diff --git a/c_emulator/SoftFloat-3e/source/f128_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_rem.c diff --git a/c_emulator/SoftFloat-3e/source/f128_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/f128_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/f128_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_sub.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/f128_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f128_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f128_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f16_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_add.c diff --git a/c_emulator/SoftFloat-3e/source/f16_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_div.c diff --git a/c_emulator/SoftFloat-3e/source/f16_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_eq.c diff --git a/c_emulator/SoftFloat-3e/source/f16_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/f16_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/f16_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_le.c diff --git a/c_emulator/SoftFloat-3e/source/f16_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f16_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_lt.c diff --git a/c_emulator/SoftFloat-3e/source/f16_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f16_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_mul.c diff --git a/c_emulator/SoftFloat-3e/source/f16_mulAdd.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_mulAdd.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_mulAdd.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_mulAdd.c diff --git a/c_emulator/SoftFloat-3e/source/f16_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_rem.c diff --git a/c_emulator/SoftFloat-3e/source/f16_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/f16_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/f16_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_sub.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/f16_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f16_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f16_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f32_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_add.c diff --git a/c_emulator/SoftFloat-3e/source/f32_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_div.c diff --git a/c_emulator/SoftFloat-3e/source/f32_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_eq.c diff --git a/c_emulator/SoftFloat-3e/source/f32_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/f32_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/f32_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_le.c diff --git a/c_emulator/SoftFloat-3e/source/f32_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f32_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_lt.c diff --git a/c_emulator/SoftFloat-3e/source/f32_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f32_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_mul.c diff --git a/c_emulator/SoftFloat-3e/source/f32_mulAdd.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_mulAdd.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_mulAdd.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_mulAdd.c diff --git a/c_emulator/SoftFloat-3e/source/f32_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_rem.c diff --git a/c_emulator/SoftFloat-3e/source/f32_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/f32_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/f32_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_sub.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/f32_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f32_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f32_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f64_add.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_add.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_add.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_add.c diff --git a/c_emulator/SoftFloat-3e/source/f64_div.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_div.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_div.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_div.c diff --git a/c_emulator/SoftFloat-3e/source/f64_eq.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_eq.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_eq.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_eq.c diff --git a/c_emulator/SoftFloat-3e/source/f64_eq_signaling.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_eq_signaling.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_eq_signaling.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_eq_signaling.c diff --git a/c_emulator/SoftFloat-3e/source/f64_isSignalingNaN.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_isSignalingNaN.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_isSignalingNaN.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_isSignalingNaN.c diff --git a/c_emulator/SoftFloat-3e/source/f64_le.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_le.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_le.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_le.c diff --git a/c_emulator/SoftFloat-3e/source/f64_le_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_le_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_le_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_le_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f64_lt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_lt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_lt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_lt.c diff --git a/c_emulator/SoftFloat-3e/source/f64_lt_quiet.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_lt_quiet.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_lt_quiet.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_lt_quiet.c diff --git a/c_emulator/SoftFloat-3e/source/f64_mul.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_mul.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_mul.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_mul.c diff --git a/c_emulator/SoftFloat-3e/source/f64_mulAdd.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_mulAdd.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_mulAdd.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_mulAdd.c diff --git a/c_emulator/SoftFloat-3e/source/f64_rem.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_rem.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_rem.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_rem.c diff --git a/c_emulator/SoftFloat-3e/source/f64_roundToInt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_roundToInt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_roundToInt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_roundToInt.c diff --git a/c_emulator/SoftFloat-3e/source/f64_sqrt.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_sqrt.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_sqrt.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_sqrt.c diff --git a/c_emulator/SoftFloat-3e/source/f64_sub.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_sub.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_sub.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_sub.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_i32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_i32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i32.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_i32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_i32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_i64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_i64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i64.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_i64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_i64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_i64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_ui32.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_ui32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui32.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_ui32_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui32_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_ui32_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui32_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_ui64.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_ui64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui64.c diff --git a/c_emulator/SoftFloat-3e/source/f64_to_ui64_r_minMag.c b/dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui64_r_minMag.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/f64_to_ui64_r_minMag.c rename to dependencies/softfloat/berkeley-softfloat-3/source/f64_to_ui64_r_minMag.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/i32_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i32_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i32_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/i64_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/i64_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/i64_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/include/internals.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/internals.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/internals.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/internals.h diff --git a/c_emulator/SoftFloat-3e/source/include/opts-GCC.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/opts-GCC.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/opts-GCC.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/opts-GCC.h diff --git a/c_emulator/SoftFloat-3e/source/include/primitiveTypes.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/primitiveTypes.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/primitiveTypes.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/primitiveTypes.h diff --git a/c_emulator/SoftFloat-3e/source/include/primitives.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/primitives.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/primitives.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/primitives.h diff --git a/c_emulator/SoftFloat-3e/source/include/softfloat.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/softfloat.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/softfloat.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/softfloat.h diff --git a/c_emulator/SoftFloat-3e/source/include/softfloat_types.h b/dependencies/softfloat/berkeley-softfloat-3/source/include/softfloat_types.h similarity index 100% rename from c_emulator/SoftFloat-3e/source/include/softfloat_types.h rename to dependencies/softfloat/berkeley-softfloat-3/source/include/softfloat_types.h diff --git a/c_emulator/SoftFloat-3e/source/s_add128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_add128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_add128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_add128.c diff --git a/c_emulator/SoftFloat-3e/source/s_add256M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_add256M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_add256M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_add256M.c diff --git a/c_emulator/SoftFloat-3e/source/s_addCarryM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addCarryM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addCarryM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addCarryM.c diff --git a/c_emulator/SoftFloat-3e/source/s_addComplCarryM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addComplCarryM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addComplCarryM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addComplCarryM.c diff --git a/c_emulator/SoftFloat-3e/source/s_addExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_addF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_addM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addM.c diff --git a/c_emulator/SoftFloat-3e/source/s_addMagsExtF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsExtF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addMagsExtF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsExtF80.c diff --git a/c_emulator/SoftFloat-3e/source/s_addMagsF128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addMagsF128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF128.c diff --git a/c_emulator/SoftFloat-3e/source/s_addMagsF16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addMagsF16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF16.c diff --git a/c_emulator/SoftFloat-3e/source/s_addMagsF32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addMagsF32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF32.c diff --git a/c_emulator/SoftFloat-3e/source/s_addMagsF64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_addMagsF64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_addMagsF64.c diff --git a/c_emulator/SoftFloat-3e/source/s_approxRecip32_1.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecip32_1.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_approxRecip32_1.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecip32_1.c diff --git a/c_emulator/SoftFloat-3e/source/s_approxRecipSqrt32_1.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecipSqrt32_1.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_approxRecipSqrt32_1.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecipSqrt32_1.c diff --git a/c_emulator/SoftFloat-3e/source/s_approxRecipSqrt_1Ks.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecipSqrt_1Ks.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_approxRecipSqrt_1Ks.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecipSqrt_1Ks.c diff --git a/c_emulator/SoftFloat-3e/source/s_approxRecip_1Ks.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecip_1Ks.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_approxRecip_1Ks.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_approxRecip_1Ks.c diff --git a/c_emulator/SoftFloat-3e/source/s_compare128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_compare128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_compare128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_compare128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_compare96M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_compare96M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_compare96M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_compare96M.c diff --git a/c_emulator/SoftFloat-3e/source/s_compareNonnormExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_compareNonnormExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_compareNonnormExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_compareNonnormExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_countLeadingZeros16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_countLeadingZeros16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros16.c diff --git a/c_emulator/SoftFloat-3e/source/s_countLeadingZeros32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_countLeadingZeros32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros32.c diff --git a/c_emulator/SoftFloat-3e/source/s_countLeadingZeros64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_countLeadingZeros64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros64.c diff --git a/c_emulator/SoftFloat-3e/source/s_countLeadingZeros8.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros8.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_countLeadingZeros8.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_countLeadingZeros8.c diff --git a/c_emulator/SoftFloat-3e/source/s_eq128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_eq128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_eq128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_eq128.c diff --git a/c_emulator/SoftFloat-3e/source/s_invalidExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_invalidExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_invalidExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_invalidExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_invalidF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_invalidF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_invalidF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_invalidF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_isNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_isNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_isNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_isNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_le128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_le128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_le128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_le128.c diff --git a/c_emulator/SoftFloat-3e/source/s_lt128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_lt128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_lt128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_lt128.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul128By32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul128By32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul128By32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul128By32.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul128MTo256M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul128MTo256M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul128MTo256M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul128MTo256M.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul128To256M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul128To256M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul128To256M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul128To256M.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul64ByShifted32To128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul64ByShifted32To128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul64ByShifted32To128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul64ByShifted32To128.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul64To128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul64To128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul64To128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul64To128.c diff --git a/c_emulator/SoftFloat-3e/source/s_mul64To128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mul64To128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mul64To128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mul64To128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_mulAddF128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mulAddF128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF128.c diff --git a/c_emulator/SoftFloat-3e/source/s_mulAddF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mulAddF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_mulAddF16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mulAddF16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF16.c diff --git a/c_emulator/SoftFloat-3e/source/s_mulAddF32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mulAddF32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF32.c diff --git a/c_emulator/SoftFloat-3e/source/s_mulAddF64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_mulAddF64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_mulAddF64.c diff --git a/c_emulator/SoftFloat-3e/source/s_negXM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_negXM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_negXM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_negXM.c diff --git a/c_emulator/SoftFloat-3e/source/s_normExtF80SigM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normExtF80SigM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normExtF80SigM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normExtF80SigM.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackMToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackMToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackMToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackMToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackMToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackMToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackMToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackMToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackToExtF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToExtF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackToExtF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToExtF80.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackToF128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackToF128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF128.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackToF16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackToF16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF16.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackToF32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackToF32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF32.c diff --git a/c_emulator/SoftFloat-3e/source/s_normRoundPackToF64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normRoundPackToF64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normRoundPackToF64.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalExtF80Sig.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalExtF80Sig.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalExtF80Sig.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalExtF80Sig.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalF128Sig.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF128Sig.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalF128Sig.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF128Sig.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalF128SigM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF128SigM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalF128SigM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF128SigM.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalF16Sig.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF16Sig.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalF16Sig.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF16Sig.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalF32Sig.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF32Sig.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalF32Sig.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF32Sig.c diff --git a/c_emulator/SoftFloat-3e/source/s_normSubnormalF64Sig.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF64Sig.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_normSubnormalF64Sig.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_normSubnormalF64Sig.c diff --git a/c_emulator/SoftFloat-3e/source/s_remStepMBy32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_remStepMBy32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_remStepMBy32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_remStepMBy32.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundMToI64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundMToI64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundMToI64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundMToI64.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundMToUI64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundMToUI64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundMToUI64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundMToUI64.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackMToExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackMToExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackMToExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackMToExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackMToF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackMToF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackMToF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackMToF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackToExtF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToExtF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackToExtF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToExtF80.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackToF128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackToF128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF128.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackToF16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackToF16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF16.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackToF32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackToF32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF32.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundPackToF64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundPackToF64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundPackToF64.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundToI32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundToI32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundToI32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundToI32.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundToI64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundToI64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundToI64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundToI64.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundToUI32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundToUI32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundToUI32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundToUI32.c diff --git a/c_emulator/SoftFloat-3e/source/s_roundToUI64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_roundToUI64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_roundToUI64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_roundToUI64.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftLeftM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftLeftM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftLeftM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftLeftM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftNormSigF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftNormSigF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftNormSigF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftNormSigF128M.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam128.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam128Extra.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam128Extra.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam128Extra.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam128Extra.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam256M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam256M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam256M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam256M.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam32.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam64.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJam64Extra.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam64Extra.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJam64Extra.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJam64Extra.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightJamM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJamM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightJamM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightJamM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shiftRightM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shiftRightM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shiftRightM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftLeft128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeft128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftLeft128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeft128.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftLeft64To96M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeft64To96M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftLeft64To96M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeft64To96M.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftLeftM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeftM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftLeftM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftLeftM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRight128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRight128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRight128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRight128.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightExtendM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightExtendM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightExtendM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightExtendM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightJam128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightJam128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam128.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightJam128Extra.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam128Extra.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightJam128Extra.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam128Extra.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightJam64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightJam64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam64.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightJam64Extra.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam64Extra.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightJam64Extra.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJam64Extra.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightJamM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJamM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightJamM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightJamM.c diff --git a/c_emulator/SoftFloat-3e/source/s_shortShiftRightM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_shortShiftRightM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_shortShiftRightM.c diff --git a/c_emulator/SoftFloat-3e/source/s_sub128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_sub128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_sub128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_sub128.c diff --git a/c_emulator/SoftFloat-3e/source/s_sub1XM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_sub1XM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_sub1XM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_sub1XM.c diff --git a/c_emulator/SoftFloat-3e/source/s_sub256M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_sub256M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_sub256M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_sub256M.c diff --git a/c_emulator/SoftFloat-3e/source/s_subM.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subM.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subM.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subM.c diff --git a/c_emulator/SoftFloat-3e/source/s_subMagsExtF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsExtF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subMagsExtF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsExtF80.c diff --git a/c_emulator/SoftFloat-3e/source/s_subMagsF128.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subMagsF128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF128.c diff --git a/c_emulator/SoftFloat-3e/source/s_subMagsF16.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subMagsF16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF16.c diff --git a/c_emulator/SoftFloat-3e/source/s_subMagsF32.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subMagsF32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF32.c diff --git a/c_emulator/SoftFloat-3e/source/s_subMagsF64.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_subMagsF64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_subMagsF64.c diff --git a/c_emulator/SoftFloat-3e/source/s_tryPropagateNaNExtF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_tryPropagateNaNExtF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_tryPropagateNaNExtF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_tryPropagateNaNExtF80M.c diff --git a/c_emulator/SoftFloat-3e/source/s_tryPropagateNaNF128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/s_tryPropagateNaNF128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/s_tryPropagateNaNF128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/s_tryPropagateNaNF128M.c diff --git a/c_emulator/SoftFloat-3e/source/softfloat_state.c b/dependencies/softfloat/berkeley-softfloat-3/source/softfloat_state.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/softfloat_state.c rename to dependencies/softfloat/berkeley-softfloat-3/source/softfloat_state.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/ui32_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui32_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui32_to_f64.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_extF80.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_extF80.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_extF80.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_extF80.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_extF80M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_extF80M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_extF80M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_extF80M.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_f128.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f128.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_f128.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f128.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_f128M.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f128M.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_f128M.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f128M.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_f16.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f16.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_f16.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f16.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_f32.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f32.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_f32.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f32.c diff --git a/c_emulator/SoftFloat-3e/source/ui64_to_f64.c b/dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f64.c similarity index 100% rename from c_emulator/SoftFloat-3e/source/ui64_to_f64.c rename to dependencies/softfloat/berkeley-softfloat-3/source/ui64_to_f64.c From b4cdbd9fbe70c60dc101a73223ac45362f76b8ee Mon Sep 17 00:00:00 2001 From: Tim Hutt Date: Tue, 28 Jan 2025 12:50:43 +0000 Subject: [PATCH 2/2] Implement CMake build system Switch from Makefiles to CMake. Some formal outputs are not yet fully supported by the CMake so the old Makefile is retained. This also adds a manual Github actions workflow to generate the JSON doc bundle, to allow inclusion of Sail snippets in the ISA manual. Fix generate-json.yml --- .github/workflows/compile.yml | 16 +- .github/workflows/generate-json.yml | 30 ++ .gitignore | 7 +- .pre-commit-config.yaml | 2 +- CMakeLists.txt | 95 ++++++ Makefile => Makefile.old | 26 +- README.md | 44 +-- build_simulators.sh | 14 +- c_emulator/CMakeLists.txt | 67 ++++ cmake/modules/FindGMP.cmake | 46 +++ dependencies/softfloat/CMakeLists.txt | 44 +++ model/CMakeLists.txt | 421 ++++++++++++++++++++++++++ sail-riscv.install | 2 - sail_runtime/CMakeLists.txt | 36 +++ test/get_perf.py | 42 --- test/riscv-tests/.gitignore | 2 - test/riscv-tests/CMakeLists.txt | 18 ++ test/run_fp_tests.sh | 97 ------ test/run_tests.sh | 125 -------- 19 files changed, 805 insertions(+), 329 deletions(-) create mode 100644 .github/workflows/generate-json.yml create mode 100644 CMakeLists.txt rename Makefile => Makefile.old (96%) create mode 100644 c_emulator/CMakeLists.txt create mode 100644 cmake/modules/FindGMP.cmake create mode 100644 dependencies/softfloat/CMakeLists.txt create mode 100644 model/CMakeLists.txt delete mode 100644 sail-riscv.install create mode 100644 sail_runtime/CMakeLists.txt delete mode 100755 test/get_perf.py delete mode 100644 test/riscv-tests/.gitignore create mode 100644 test/riscv-tests/CMakeLists.txt delete mode 100755 test/run_fp_tests.sh delete mode 100755 test/run_tests.sh diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index 333d8ee79..341b9710e 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Install packages - run: sudo apt install -y --no-install-recommends zlib1g-dev pkg-config libgmp-dev curl + run: sudo apt install -y --no-install-recommends zlib1g-dev pkg-config libgmp-dev curl ninja-build - name: Check out repository code uses: actions/checkout@HEAD with: @@ -19,13 +19,23 @@ jobs: sudo mkdir -p /usr/local curl --location https://github.com/rems-project/sail/releases/download/0.18-linux-binary/sail.tar.gz | sudo tar xvz --directory=/usr/local --strip-components=1 - name: Build and test simulators - run: test/run_tests.sh + run: | + # Ninja is used because the CMake Makefile generator doesn't + # build top-level targets in parallel unfortunately. + cmake -S . -B build -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo + # By default only the rv32d and rv64d emulators are build, + # but we want to build more targets here to ensure they + # can at least build without errors. + ninja -C build all riscv_sim_rv32d_rvfi generated_smt_rv64f generated_docs_rv64d + # These targets do not work with Sail 0.18: generated_rmem_rv32d_rmem generated_coq_rv64f_coq + ctest --test-dir build --output-junit tests.xml - name: Upload test results if: always() uses: actions/upload-artifact@v4 with: name: tests.xml - path: test/tests.xml + path: build/tests.xml + if-no-files-found: error - name: Upload event payload if: always() uses: actions/upload-artifact@v4 diff --git a/.github/workflows/generate-json.yml b/.github/workflows/generate-json.yml new file mode 100644 index 000000000..6b791b78f --- /dev/null +++ b/.github/workflows/generate-json.yml @@ -0,0 +1,30 @@ +name: Generate Doc JSON + +on: [workflow_dispatch] + +jobs: + build: + runs-on: ubuntu-22.04 + steps: + - name: Install packages + run: sudo apt install -y --no-install-recommends zlib1g-dev pkg-config libgmp-dev curl ninja-build + - name: Check out repository code + uses: actions/checkout@HEAD + with: + submodules: true + - name: Install sail from binary + run: | + sudo mkdir -p /usr/local + curl --location https://github.com/rems-project/sail/releases/download/0.18-linux-binary/sail.tar.gz | sudo tar xvz --directory=/usr/local --strip-components=1 + - name: Build JSON doc bundle + run: | + mkdir build + cd build + cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. + ninja generated_docs_rv64d + - name: Upload JSON doc bundle + uses: actions/upload-artifact@v4 + with: + name: riscv_model_rv64d.json + path: build/model/riscv_model_rv64d.json + if-no-files-found: error diff --git a/.gitignore b/.gitignore index 0079a6798..a9dbfa32d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,9 @@ _build/ _sbuild/ *.o *.a -/z3_problems +z3_problems + +# Typical CMake build directory. +/build +# CMake build directories used by CLion. +/cmake-build-* diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 2b0f185cd..c94176e87 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks -exclude: '^(prover_snapshots)|(generated_definitions)|(dependencies/softfloat/berkeley-softfloat-3)' +exclude: '^(prover_snapshots)|(generated_definitions)|(dependencies/[^/]+/)' minimum_pre_commit_version: 2.10.0 repos: - repo: https://github.com/pre-commit/pre-commit-hooks diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 000000000..f9412a07d --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,95 @@ +cmake_minimum_required(VERSION 3.20) + +project(sail_riscv) + +# Make users explicitly pick a build type so they don't get +# surprised when the default gives a very slow emulator. +if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + message(FATAL_ERROR " +No build type selected. You need to pass -DCMAKE_BUILD_TYPE= in order to configure the build. + * -DCMAKE_BUILD_TYPE=Release - Optimized build with no debug info. + * -DCMAKE_BUILD_TYPE=RelWithDebInfo - Optimized build with debug info. + * -DCMAKE_BUILD_TYPE=Debug - Unoptimized build with debug info. + * -DCMAKE_BUILD_TYPE=MinSizeRel - Optimized for size instead of speed.") +endif() + +# Enable CTest +enable_testing() + +# Export compile_commands.json for IDE support. +set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE) + +# Always use Position Independent Code. By default it is only used for +# shared libraries (which require it), but you also need it for static +# libraries if you link them into shared libraries. +# Generally it just simplifies everything for a negligable performance cost. +set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) + +# Don't allow undefined symbols. This is generally a pain. +include(CheckLinkerFlag) + +check_linker_flag(C "-Wl,--no-undefined" LINKER_SUPPORTS_NO_UNDEFINED) +if (LINKER_SUPPORTS_NO_UNDEFINED) + add_link_options("-Wl,--no-undefined") +endif() + +# Extra CMake files. +set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") + +# These are the main requirements. +# Don't use `REQUIRED` so that we can print custom help messages. +find_package(ZLIB) +if (NOT ZLIB_FOUND) + if (APPLE) + message(FATAL_ERROR "Zlib not found. Try 'brew install zlib'.") + elseif (UNIX) + message(FATAL_ERROR "Zlib not found. Try 'sudo apt install zlib1g-dev' or 'sudo dnf install zlib-devel'.") + else() + message(FATAL_ERROR "Zlib not found.") + endif() +endif() + +find_package(GMP) +if (NOT GMP_FOUND) + if (APPLE) + message(FATAL_ERROR "GMP not found. Try 'brew install gmp'.") + elseif (UNIX) + message(FATAL_ERROR "GMP not found. Try 'sudo apt install libgmp-dev' or 'sudo dnf install gmp-devel'.") + else() + message(FATAL_ERROR "GMP not found.") + endif() +endif() + +find_program(SAIL_BIN "sail") +if (NOT SAIL_BIN) + message(FATAL_ERROR "Sail not found. See README.md for installation instructions.") +endif() + +set(DEFAULT_ARCHITECTURES "rv32d;rv64d" CACHE STRING "Architectures to build by default (rv32f|rv64f|rv32d|rv64d)(_rvfi)? " ) + +option(COVERAGE "Compile with Sail coverage collection enabled.") + +# Softfloat support. +add_subdirectory("dependencies/softfloat") + +# Sail C runtime. +add_subdirectory("sail_runtime") + +# Sail model generated C code. +add_subdirectory("model") + +# Emulator binary. +add_subdirectory("c_emulator") + +# Old pre-compiled riscv-tests. +add_subdirectory("test/riscv-tests") + +# Convenience targets. +add_custom_target(csim DEPENDS riscv_sim_rv32d riscv_sim_rv64d) +add_custom_target(check DEPENDS generated_model_rv32d generated_model_rv64d) + +# TODO: Support static linking. +# TODO: Add `interpret` target. +# TODO: Add isabelle target. +# TODO: Add lem target. +# TODO: Add hol4 target. diff --git a/Makefile b/Makefile.old similarity index 96% rename from Makefile rename to Makefile.old index 627859181..2c843112d 100644 --- a/Makefile +++ b/Makefile.old @@ -1,3 +1,9 @@ +# WARNING! This Makefile is deprecated and has been *mostly* replaced by CMake. +# There are some targets related to formal backends (Coq, Hol4, etc.) that have +# not been fully transitioned, so this is kept for posterity. +# +# To build the emulators you can use the usual CMake flow, or `./build_simulators.sh`. + # Select architecture: RV32 or RV64. ARCH ?= RV64 @@ -220,7 +226,7 @@ all: c_emulator/riscv_sim_$(ARCH) # break future builds if sail exits badly .DELETE_ON_ERROR: generated_definitions/c/%.c -check: $(SAIL_SRCS) model/main.sail Makefile +check: $(SAIL_SRCS) model/main.sail Makefile.old $(SAIL) $(SAIL_FLAGS) $(SAIL_SRCS) model/main.sail interpret: $(SAIL_SRCS) model/main.sail @@ -230,7 +236,7 @@ sail_doc/riscv_$(ARCH).json: $(SAIL_SRCS) model/main.sail $(SAIL) -doc -doc_bundle riscv_$(ARCH).json -o sail_doc $(SAIL_FLAGS) $(SAIL_DOC_FLAGS) $(SAIL_SRCS) model/main.sail riscv.smt_model: $(SAIL_SRCS) - $(SAIL) -smt_serialize $(SAIL_FLAGS) $(SAIL_SRCS) -o riscv + $(SAIL) -smt $(SAIL_FLAGS) $(SAIL_SRCS) -o riscv cloc: cloc --by-file --force-lang C,sail $(SAIL_SRCS) @@ -238,7 +244,7 @@ cloc: gcovr: gcovr -r . --html --html-detail -o index.html -generated_definitions/c/riscv_model_$(ARCH).c: $(SAIL_SRCS) model/main.sail Makefile +generated_definitions/c/riscv_model_$(ARCH).c: $(SAIL_SRCS) model/main.sail Makefile.old mkdir -p generated_definitions/c $(SAIL) $(SAIL_FLAGS) -O -Oconstant_fold -memo_z3 -c -c_include riscv_prelude.h -c_include riscv_platform.h -c_no_main $(SAIL_SRCS) model/main.sail -o $(basename $@) @@ -251,7 +257,7 @@ csim: c_emulator/riscv_sim_$(ARCH) .PHONY: rvfi rvfi: c_emulator/riscv_rvfi_$(ARCH) -c_emulator/riscv_sim_$(ARCH): generated_definitions/c/riscv_model_$(ARCH).c $(C_INCS) $(C_SRCS) $(SOFTFLOAT_LIBS) Makefile +c_emulator/riscv_sim_$(ARCH): generated_definitions/c/riscv_model_$(ARCH).c $(C_INCS) $(C_SRCS) $(SOFTFLOAT_LIBS) Makefile.old $(CC) -g $(C_WARNINGS) $(C_FLAGS) $< $(C_SRCS) $(SAIL_LIB_DIR)/*.c $(C_LIBS_WRAPPED) -o $@ # Note: We have to add -c_preserve since the functions might be optimized out otherwise @@ -270,16 +276,16 @@ rvfi_preserve_fns=-c_preserve rvfi_set_instr_packet \ -c_preserve print_rvfi_exec # sed -i isn't posix compliant, unfortunately -generated_definitions/c/riscv_rvfi_model_$(ARCH).c: $(SAIL_RVFI_SRCS) model/main.sail Makefile +generated_definitions/c/riscv_rvfi_model_$(ARCH).c: $(SAIL_RVFI_SRCS) model/main.sail Makefile.old mkdir -p generated_definitions/c $(SAIL) $(rvfi_preserve_fns) $(SAIL_FLAGS) -O -Oconstant_fold -memo_z3 -c -c_include riscv_prelude.h -c_include riscv_platform.h -c_no_main $(SAIL_RVFI_SRCS) model/main.sail -o $(basename $@) sed -e '/^[[:space:]]*$$/d' $@ > $@.new mv $@.new $@ -c_emulator/riscv_rvfi_$(ARCH): generated_definitions/c/riscv_rvfi_model_$(ARCH).c $(C_INCS) $(C_SRCS) $(SOFTFLOAT_LIBS) Makefile +c_emulator/riscv_rvfi_$(ARCH): generated_definitions/c/riscv_rvfi_model_$(ARCH).c $(C_INCS) $(C_SRCS) $(SOFTFLOAT_LIBS) Makefile.old $(CC) -g $(C_WARNINGS) $(C_FLAGS) $< -DRVFI_DII $(C_SRCS) $(SAIL_LIB_DIR)/*.c $(C_LIBS_WRAPPED) -o $@ -latex: $(SAIL_SRCS) Makefile +latex: $(SAIL_SRCS) Makefile.old mkdir -p generated_definitions/latex $(SAIL) -latex -latex_prefix sail -o generated_definitions/latex $(SAIL_SRCS) @@ -299,13 +305,13 @@ endif .PHONY: riscv_isa riscv_isa_build -generated_definitions/lem/$(ARCH)/riscv.lem: $(SAIL_SRCS) Makefile +generated_definitions/lem/$(ARCH)/riscv.lem: $(SAIL_SRCS) Makefile.old mkdir -p generated_definitions/lem/$(ARCH) generated_definitions/isabelle/$(ARCH) $(SAIL) $(SAIL_FLAGS) -lem -lem_output_dir generated_definitions/lem/$(ARCH) -isa_output_dir generated_definitions/isabelle/$(ARCH) -o riscv -lem_lib Riscv_extras -lem_lib Riscv_extras_fdext -lem_lib Mem_metadata $(SAIL_SRCS) echo "declare {isabelle} rename field sync_exception_ext = sync_exception_ext_exception" >> generated_definitions/lem/$(ARCH)/riscv_types.lem # sed -i isn't posix compliant, unfortunately -generated_definitions/isabelle/$(ARCH)/Riscv.thy: generated_definitions/isabelle/$(ARCH)/ROOT generated_definitions/lem/$(ARCH)/riscv.lem $(RISCV_EXTRAS_LEM) Makefile +generated_definitions/isabelle/$(ARCH)/Riscv.thy: generated_definitions/isabelle/$(ARCH)/ROOT generated_definitions/lem/$(ARCH)/riscv.lem $(RISCV_EXTRAS_LEM) Makefile.old lem -wl ign -isa -outdir generated_definitions/isabelle/$(ARCH) -lib Sail=$(SAIL_SRC_DIR)/lem_interp -lib Sail=$(SAIL_SRC_DIR)/gen_lib \ $(RISCV_EXTRAS_LEM) \ generated_definitions/lem/$(ARCH)/riscv_types.lem \ @@ -348,7 +354,7 @@ riscv_coq: $(addprefix generated_definitions/coq/$(ARCH)/,riscv.v riscv_types.v) riscv_coq_build: generated_definitions/coq/$(ARCH)/riscv.vo .PHONY: riscv_coq riscv_coq_build -$(addprefix generated_definitions/coq/$(ARCH)/,riscv.v riscv_types.v): $(SAIL_COQ_SRCS) Makefile +$(addprefix generated_definitions/coq/$(ARCH)/,riscv.v riscv_types.v): $(SAIL_COQ_SRCS) Makefile.old mkdir -p generated_definitions/coq/$(ARCH) $(SAIL) $(SAIL_FLAGS) -dcoq_undef_axioms -coq -coq_output_dir generated_definitions/coq/$(ARCH) -o riscv -coq_lib riscv_extras -coq_lib mem_metadata $(SAIL_COQ_SRCS) diff --git a/README.md b/README.md index 00ff14b45..90577ddf7 100644 --- a/README.md +++ b/README.md @@ -47,53 +47,38 @@ Getting started Install [Sail](https://github.com/rems-project/sail/). On Linux you can download a [binary release](https://github.com/rems-project/sail/releases) (strongly recommended), or you can install from source [using opam](https://github.com/rems-project/sail/blob/sail2/INSTALL.md). Then: ``` -$ make +$ ./build_simulators.sh ``` -will build the simulator in `c_emulator/riscv_sim_RV64`. +will build the simulators in `build/c_emulator/riscv_sim_rv{32,64}d`. If you get an error message saying `sail: unknown option '--require-version'.` it's because your Sail compiler is too old. You need version 0.18 or later. -One can build either the RV32 or the RV64 model by specifying -`ARCH=RV32` or `ARCH=RV64` on the `make` line, and using the matching -target suffix. RV64 is built by default, but the RV32 model can be -built using: +By default the RV32D and RV64D emulators are built, without RVFI-DII support. +You can see a complete list of targets by running `make help` in the +build directory, then e.g. ``` -$ ARCH=RV32 make +$ make -C build riscv_sim_rv64f_rvfi ``` -which creates the simulator in `c_emulator/riscv_sim_RV32`. - -The Makefile targets `riscv_isa_build`, `riscv_coq_build`, and -`riscv_hol_build` invoke the respective prover to process the -definitions and produce the Isabelle model in -`generated_definitions/isabelle/RV64/Riscv.thy`, the Coq model in -`generated_definitions/coq/RV64/riscv.v`, or the HOL4 model in -`generated_definitions/hol4/RV64/riscvScript.sml` respectively. -We have tested Isabelle 2018, Coq 8.8.1, and HOL4 -Kananaskis-12. When building these targets, please make sure the -corresponding prover libraries in the Sail directory -(`$SAIL_DIR/lib/$prover`) are up-to-date and built, e.g. by running -`make` in those directories. - ### Executing test binaries The simulator can be used to execute small test binaries. ``` -$ ./c_emulator/riscv_sim_ +$ build/c_emulator/riscv_sim_ ``` A suite of RV32 and RV64 test programs derived from the [`riscv-tests`](https://github.com/riscv/riscv-tests) test-suite is included under [test/riscv-tests/](test/riscv-tests/). The test-suite -can be run using `test/run_tests.sh`. +can be run using `make test` or `ctest` in the build directory. ### Configuring platform options Information on configuration options for the simulator is available from -`./c_emulator/riscv_sim_ -h`. +`build/c_emulator/riscv_sim_ -h`. Some useful options are: configuring whether misaligned accesses trap (`--enable-misaligned`), and @@ -104,10 +89,6 @@ whether page-table walks update PTE bits (`--enable-dirty-update`). For booting operating system images, see the information under the [os-boot/](os-boot/) subdirectory. -### Using development versions of Sail - -Rarely, the release version of Sail may not meet your needs. This could happen if you need a bug fix or new feature not yet in the released Sail version, or you are actively working on Sail. In this case you can tell the `sail-riscv` `Makefile` to use a local copy of Sail by setting `SAIL_DIR` to the root of a checkout of the Sail repo when you invoke `make`. Alternatively, you can use `opam pin` to install Sail from a local checkout of the Sail repo as described in the Sail installation instructions. - Supported RISC-V ISA features ----------------------------- #### The Sail specification currently captures the following ISA extensions and features: @@ -330,13 +311,6 @@ Directory Structure ``` sail-riscv - model // Sail specification modules -- generated_definitions // files generated by Sail, in RV32 and RV64 subdirectories - - c - - lem - - isabelle - - coq - - hol4 - - latex - prover_snapshots // snapshots of generated theorem prover definitions - handwritten_support // prover support files - c_emulator // supporting platform files for C emulator diff --git a/build_simulators.sh b/build_simulators.sh index 8fb76414f..5796c749e 100755 --- a/build_simulators.sh +++ b/build_simulators.sh @@ -1,14 +1,6 @@ #!/bin/bash -function test_build () { - declare -i rc=0 - eval $* - rc=$? - if [ $rc -ne 0 ]; then - echo "Failure to execute: $*" - exit $rc - fi -} +set -e -test_build make ARCH=RV32 c_emulator/riscv_sim_RV32 -test_build make ARCH=RV64 c_emulator/riscv_sim_RV64 +cmake -S . -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo +cmake --build build -j2 diff --git a/c_emulator/CMakeLists.txt b/c_emulator/CMakeLists.txt new file mode 100644 index 000000000..4cc78e02f --- /dev/null +++ b/c_emulator/CMakeLists.txt @@ -0,0 +1,67 @@ +set(EMULATOR_COMMON_SRCS + riscv_config.h + riscv_platform.c + riscv_platform.h + riscv_platform_impl.c + riscv_platform_impl.h + riscv_prelude.c + riscv_prelude.h + riscv_sail.h + riscv_sim.c + riscv_softfloat.c + riscv_softfloat.h +) + +foreach (xlen IN ITEMS 32 64) + foreach (flen IN ITEMS 32 64) + foreach (variant IN ITEMS "" "rvfi") + set(arch "rv${xlen}") + if (flen EQUAL 32) + string(APPEND arch "f") + else() + string(APPEND arch "d") + endif() + if (variant) + string(APPEND arch "_${variant}") + endif() + + add_executable(riscv_sim_${arch} + "${CMAKE_BINARY_DIR}/riscv_model_${arch}.c" + ${EMULATOR_COMMON_SRCS} + ) + + if (NOT arch IN_LIST DEFAULT_ARCHITECTURES) + set_target_properties(riscv_sim_${arch} PROPERTIES EXCLUDE_FROM_ALL TRUE) + endif() + + add_dependencies(riscv_sim_${arch} generated_model_${arch}) + + target_link_libraries(riscv_sim_${arch} + PRIVATE softfloat sail_runtime GMP::GMP ZLIB::ZLIB + ) + + target_include_directories(riscv_sim_${arch} + # So the generated C can find riscv_platform/prelude.h" + PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}" + ) + + if (arch MATCHES "rvfi") + target_compile_definitions(riscv_sim_${arch} + PRIVATE RVFI_DII + ) + endif() + + # TODO: Enable warnings when we use the #include trick + # to include the generated Sail code. Currently it + # generates too many warnings to turn these on globally. + + # target_compile_options(riscv_sim_${arch} PRIVATE + # -Wall -Wextra + # # Too annoying at the moment. + # -Wno-unused-parameter + # ) + + install(TARGETS riscv_sim_${arch}) + endforeach() + endforeach() +endforeach() diff --git a/cmake/modules/FindGMP.cmake b/cmake/modules/FindGMP.cmake new file mode 100644 index 000000000..7c2c8ca2b --- /dev/null +++ b/cmake/modules/FindGMP.cmake @@ -0,0 +1,46 @@ +# From https://github.com/Z3Prover/z3/blob/7f8e2a9f75f6c8b4b8ab05b87ea6a343d9a0b88d/cmake/modules/FindGMP.cmake +# with minor simplication to remove gmp++ and try pkg-config. + +# Tries to find an install of the GNU multiple precision library +# +# Once done this will define +# GMP_FOUND - BOOL: System has the GMP library installed +# GMP_C_LIBRARIES - LIST: The libraries needed to use GMP via it's C interface +# GMP_C_INCLUDES - LIST: The GMP include directories + +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig) +if (PKG_CONFIG_FOUND) + pkg_check_modules(PC_GMP QUIET gmp) +endif() + +# Try to find libraries +find_library(GMP_C_LIBRARIES + NAMES gmp + PATHS ${PC_GMP_LIBRARY_DIRS} + DOC "GMP C libraries" +) + +# Try to find headers +find_path(GMP_C_INCLUDES + NAMES gmp.h + PATHS ${PC_GMP_INCLUDE_DIRS} + DOC "GMP C header" +) + +# TODO: We should check we can link some simple code against libgmp + +# Handle QUIET and REQUIRED and check the necessary variables were set and if so +# set ``GMP_FOUND`` +find_package_handle_standard_args(GMP + REQUIRED_VARS GMP_C_LIBRARIES GMP_C_INCLUDES) + +if (GMP_FOUND) + if (NOT TARGET GMP::GMP) + add_library(GMP::GMP UNKNOWN IMPORTED) + set_target_properties(GMP::GMP PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${GMP_C_INCLUDES}" + IMPORTED_LOCATION "${GMP_C_LIBRARIES}") + endif() +endif() diff --git a/dependencies/softfloat/CMakeLists.txt b/dependencies/softfloat/CMakeLists.txt new file mode 100644 index 000000000..665017009 --- /dev/null +++ b/dependencies/softfloat/CMakeLists.txt @@ -0,0 +1,44 @@ +SET(source_dir "${CMAKE_CURRENT_SOURCE_DIR}/berkeley-softfloat-3") + +# Generic source plus RISC-V specific source. +file(GLOB riscv_source + "${source_dir}/source/*.c" + "${source_dir}/source/include/*.h" + "${source_dir}/source/RISCV/*.c" + "${source_dir}/source/RISCV/*.h" + "${source_dir}/build/Linux-RISCV-GCC/platform.h" +) + +# Some files do not work with SOFTFLOAT_FAST_INT64 +list(REMOVE_ITEM riscv_source + "${source_dir}/source/s_addExtF80M.c" + "${source_dir}/source/s_addF128M.c" + "${source_dir}/source/s_compareNonnormExtF80M.c" + "${source_dir}/source/s_invalidF128M.c" + "${source_dir}/source/s_mulAddF128M.c" + "${source_dir}/source/s_normRoundPackMToExtF80M.c" + "${source_dir}/source/s_normRoundPackMToF128M.c" + "${source_dir}/source/s_normSubnormalF128SigM.c" + "${source_dir}/source/s_roundPackMToExtF80M.c" + "${source_dir}/source/s_roundPackMToF128M.c" + "${source_dir}/source/s_shiftLeftM.c" + "${source_dir}/source/s_shiftNormSigF128M.c" + "${source_dir}/source/s_shiftRightJamM.c" + "${source_dir}/source/s_shiftRightM.c" + "${source_dir}/source/s_tryPropagateNaNExtF80M.c" + "${source_dir}/source/s_tryPropagateNaNF128M.c" + "${source_dir}/source/RISCV/s_propagateNaNF128M.c" + "${source_dir}/source/RISCV/s_commonNaNToF128M.c" +) + +add_library(softfloat + ${riscv_source} +) + +target_include_directories(softfloat PUBLIC + "${source_dir}/source/include" + "${source_dir}/source/RISCV" + "${source_dir}/build/Linux-RISCV-GCC" +) + +target_compile_options(softfloat PRIVATE "-Werror=implicit-function-declaration" "-DSOFTFLOAT_ROUND_ODD") diff --git a/model/CMakeLists.txt b/model/CMakeLists.txt new file mode 100644 index 000000000..8cf55dfb5 --- /dev/null +++ b/model/CMakeLists.txt @@ -0,0 +1,421 @@ +foreach (xlen IN ITEMS 32 64) + foreach (flen IN ITEMS 32 64) + foreach (variant IN ITEMS "" "rvfi" "coq" "rmem") + set(arch "rv${xlen}") + if (flen EQUAL 32) + string(APPEND arch "f") + else() + string(APPEND arch "d") + endif() + if (variant) + string(APPEND arch "_${variant}") + endif() + + set(sail_xlen + "riscv_xlen${xlen}.sail" + "riscv_xlen.sail" + ) + + # TODO: Unfortunately 32 or 64 bit float support is a compile time. + # See https://github.com/riscv/sail-riscv/issues/348 + if (flen EQUAL 64) + set(sail_flen "riscv_flen_D.sail") + else() + set(sail_flen "riscv_flen_F.sail") + endif() + list(APPEND sail_flen "riscv_flen.sail") + + set(sail_vlen "riscv_vlen.sail") + + # Instruction sources, depending on target + set(sail_check_srcs + "riscv_addr_checks_common.sail" + "riscv_addr_checks.sail" + "riscv_misa_ext.sail" + ) + + set(vext_srcs + "riscv_insts_vext_utils.sail" + "riscv_insts_vext_fp_utils.sail" + "riscv_insts_vext_vset.sail" + "riscv_insts_vext_arith.sail" + "riscv_insts_vext_fp.sail" + "riscv_insts_vext_mem.sail" + "riscv_insts_vext_mask.sail" + "riscv_insts_vext_vm.sail" + "riscv_insts_vext_fp_vm.sail" + "riscv_insts_vext_red.sail" + "riscv_insts_vext_fp_red.sail" + ) + + set(sail_default_inst + "riscv_insts_base.sail" + "riscv_insts_zifencei.sail" + "riscv_insts_aext.sail" + "riscv_insts_zca.sail" + "riscv_insts_mext.sail" + "riscv_insts_zicsr.sail" + "riscv_insts_hints.sail" + "riscv_insts_fext.sail" + "riscv_insts_zcf.sail" + "riscv_insts_dext.sail" + "riscv_insts_zcd.sail" + "riscv_insts_svinval.sail" + "riscv_insts_zba.sail" + "riscv_insts_zbb.sail" + "riscv_insts_zbc.sail" + "riscv_insts_zbs.sail" + "riscv_insts_zcb.sail" + "riscv_insts_zfh.sail" + # Zfa needs to be added after fext, dext and Zfh (as it needs + # definitions from those) + "riscv_insts_zfa.sail" + "riscv_insts_zkn.sail" + "riscv_insts_zks.sail" + "riscv_insts_zbkb.sail" + "riscv_insts_zbkx.sail" + "riscv_insts_zicond.sail" + ${vext_srcs} + "riscv_insts_zicbom.sail" + "riscv_insts_zicboz.sail" + ) + + if (variant STREQUAL "rmem") + set(sail_seq_inst + ${sail_default_inst} + "riscv_jalr_rmem.sail" + "riscv_insts_rmem.sail" + ) + else() + set(sail_seq_inst + ${sail_default_inst} + "riscv_jalr_seq.sail" + ) + endif() + + set(sail_seq_inst_srcs + "riscv_insts_begin.sail" + ${sail_seq_inst} + "riscv_insts_end.sail" + "riscv_csr_end.sail" + ) + + set(sail_sys_srcs + "riscv_vext_control.sail" + "riscv_sys_exceptions.sail" + "riscv_sync_exception.sail" + "riscv_zihpm.sail" + "riscv_zkr_control.sail" + "riscv_zicntr_control.sail" + "riscv_softfloat_interface.sail" + "riscv_fdext_regs.sail" + "riscv_fdext_control.sail" + "riscv_sys_control.sail" + ) + + set(sail_vm_srcs + "riscv_vmem_common.sail" + "riscv_vmem_pte.sail" + "riscv_vmem_ptw.sail" + "riscv_vmem_tlb.sail" + "riscv_vmem.sail" + ) + + set(prelude + "prelude.sail" + "riscv_errors.sail" + ${sail_xlen} + ${sail_flen} + ${sail_vlen} + "prelude_mem_addrtype.sail" + "prelude_mem_metadata.sail" + "prelude_mem.sail" + ) + + if (variant STREQUAL "rvfi") + list(APPEND prelude "rvfi_dii.sail") + endif() + + set(sail_regs_srcs + "riscv_csr_begin.sail" + "riscv_reg_type.sail" + "riscv_freg_type.sail" + "riscv_regs.sail" + "riscv_pc_access.sail" + "riscv_sys_regs.sail" + "riscv_pmp_regs.sail" + "riscv_pmp_control.sail" + "riscv_ext_regs.sail" + ${sail_check_srcs} + "riscv_vreg_type.sail" + "riscv_vext_regs.sail" + ) + + set(sail_arch_srcs + ${prelude} + "riscv_extensions.sail" + "riscv_types_common.sail" + "riscv_types_ext.sail" + "riscv_types.sail" + "riscv_vmem_types.sail" + ${sail_regs_srcs} + ${sail_sys_srcs} + "riscv_platform.sail" + "riscv_mem.sail" + ${sail_vm_srcs} + # Shared/common code for the cryptography extension. + "riscv_types_kext.sail" + ) + + if (variant STREQUAL "rvfi") + set(riscv_step_ext "riscv_step_rvfi.sail") + set(riscv_fetch "riscv_fetch_rvfi.sail") + else() + set(riscv_step_ext "riscv_step_ext.sail") + set(riscv_fetch "riscv_fetch.sail") + endif() + + set(sail_step_srcs + "riscv_step_common.sail" + ${riscv_step_ext} + "riscv_decode_ext.sail" + ${riscv_fetch} + "riscv_step.sail" + ) + + if (variant STREQUAL "coq") + list(APPEND sail_step_srcs + "riscv_termination.sail" + ) + endif() + + # Final file list. + set(sail_srcs + ${sail_arch_srcs} + ${sail_seq_inst_srcs} + ${sail_step_srcs} + "main.sail" + ) + + # Convert to absolute paths, so we can run + + # Generate C code from Sail model with & without RVFI-DII support. + if (NOT variant OR variant STREQUAL "rvfi") + set(c_model_no_ext "${CMAKE_BINARY_DIR}/riscv_model_${arch}") + set(c_model "${c_model_no_ext}.c") + + if (COVERAGE) + set(branch_info_file "${c_model_no_ext}.branch_info") + set(coverage_args "--c-coverage" ${branch_info_file}) + else() + set(branch_info_file) + set(coverage_args) + endif() + + add_custom_command( + DEPENDS ${sail_srcs} + OUTPUT ${c_model} ${branch_info_file} + VERBATIM + COMMENT "Building C code from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + sail + # Output file (without extension). + -o ${c_model_no_ext} + # Generate a file containing information about all possible branches. + # See https://github.com/rems-project/sail/blob/sail2/sailcov/README.md + ${coverage_args} + # Don't allow implicit var declaration (like Python). This is + # deprecated because it is error-prone. + --strict-var + # Minimum required Sail compiler version. + --require-version 0.18 + # Optimisations. + -O --Oconstant-fold + # Cache Z3 results in z3_problems file to speed up incremental compilation. + --memo-z3 + # Output C code. + -c + # Don't generate a main() function. + --c-no-main + # Extra #include's. + --c-include riscv_prelude.h + --c-include riscv_platform.h + # Don't dead-code eliminate these functions. These should match the + # ones used from riscv_sail.h + --c-preserve init_model + --c-preserve step + --c-preserve tick_clock + --c-preserve tick_platform + # Preserve RVFI functions. + --c-preserve rvfi_set_instr_packet + --c-preserve rvfi_get_cmd + --c-preserve rvfi_get_insn + --c-preserve rvfi_get_v2_trace_size + --c-preserve rvfi_get_v2_support_packet + --c-preserve rvfi_get_exec_packet_v1 + --c-preserve rvfi_get_exec_packet_v2 + --c-preserve rvfi_get_mem_data + --c-preserve rvfi_get_int_data + --c-preserve rvfi_zero_exec_packet + --c-preserve rvfi_halt_exec_packet + --c-preserve print_instr_packet + --c-preserve print_rvfi_exec + # Input files. + ${sail_srcs} + ) + + add_custom_target(generated_model_${arch} DEPENDS ${c_model}) + endif() + + if (NOT variant) + # Generate JSON snippets file. + set(model_doc "riscv_model_${arch}.json") + + add_custom_command( + DEPENDS ${sail_srcs} + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${model_doc}" + VERBATIM + COMMENT "Building documentation JSON from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + # Generate JSON documentation file. + --doc + # Format to interpret comments as. You can also use 'asciidoc' + # in which case it will interpret them as Markdown and output them + # as Asciidoc, but there's a bug in the Sail compiler so it can't + # parse the Markdown and it doesn't seem to output the comments + # anyway. + --doc-format identity + # Don't pretty-print the JSON output. It's too big to be readable anyway. + --doc-compact + # Actually embed the code snippets in the JSON as plain text rather + # than referencing them. The other option is base64. + --doc-embed plain + # The directory that the JSON will be saved in. + -o ${CMAKE_CURRENT_BINARY_DIR} + # The name of the JSON file. + --doc-bundle ${model_doc} + # Input files. + ${sail_srcs} + ) + + add_custom_target(generated_docs_${arch} DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${model_doc}") + + # Generate smtlib2 code from the Sail code. + # A separate .smt2 file is created for each $property or $counterexample. + # Since the true output files are unknown we need to manually + # generate a file to indicate that we have run this command. + set(smt_stamp_file "${CMAKE_CURRENT_BINARY_DIR}/smt_${arch}.stamp") + add_custom_command( + DEPENDS ${sail_srcs} + VERBATIM + OUTPUT ${smt_stamp_file} + COMMENT "Building smtlib2 from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + # Generate SMT files. + --smt + # The prefix of the output files. + -o "${CMAKE_CURRENT_BINARY_DIR}/model" + # Input files. + ${sail_srcs} + COMMAND ${CMAKE_COMMAND} -E touch ${smt_stamp_file} + ) + + add_custom_target(generated_smt_${arch} DEPENDS ${smt_stamp_file}) + endif() + + if (variant STREQUAL "rmem") + # Generate riscv.lem, riscv_toFromInterp2.ml and riscv.defs + # These are used for "rmem". + add_custom_command( + DEPENDS ${sail_srcs} + VERBATIM + OUTPUT "rmem_${arch}.lem" + COMMENT "Building rmem lem from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + # Generate lem files. + --lem + --lem-mwords + --lem-lib Riscv_extras + --lem-lib Riscv_extras_fdext + --lem-lib Mem_metadata + # Output dir for Lem. + --lem-output-dir ${CMAKE_CURRENT_BINARY_DIR} + # Output dir for ISabelle auxiliary theories. + # We do not need the Isabelle .thy files, but sail always generates them. + --isa-output-dir ${CMAKE_CURRENT_BINARY_DIR} + # The prefix of the output files. + -o "lem_${arch}" + # Input files. + ${sail_srcs} + ) + add_custom_command( + DEPENDS ${sail_srcs} + VERBATIM + OUTPUT "rmem_${arch}_toFromInterp2.ml" + COMMENT "Building rmem toFromInterp2.ml from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + --tofrominterp + --tofrominterp-lem + --tofrominterp-mwords + --tofrominterp-output-dir ${CMAKE_CURRENT_BINARY_DIR} + # The prefix of the output files. + -o "rmem_${arch}" + # Input files. + ${sail_srcs} + ) + add_custom_command( + DEPENDS ${sail_srcs} + VERBATIM + OUTPUT "rmem_${arch}.defs" + COMMENT "Building rmem defs from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + --marshal + # The prefix of the output files. + -o "rmem_${arch}" + # Input files. + ${sail_srcs} + ) + + add_custom_target(generated_rmem_${arch} DEPENDS + "rmem_${arch}.lem" + "rmem_${arch}_toFromInterp2.ml" + "rmem_${arch}.defs" + ) + endif() + + # Build Coq definitions. + if (variant STREQUAL "coq") + add_custom_command( + DEPENDS ${sail_srcs} + VERBATIM + OUTPUT "coq_${arch}.?" + COMMENT "Building Coq definitions from Sail model (${arch})" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND + ${SAIL_BIN} + -dcoq_undef_axioms + --coq + --coq-lib riscv_extras + --coq-lib mem_metadata + --coq-output-dir ${CMAKE_CURRENT_BINARY_DIR} + # The prefix of the output files. + -o "riscv_${arch}" + # Input files. + ${sail_srcs} + ) + add_custom_target(generated_coq_${arch} DEPENDS "coq_${arch}.?") + endif() + endforeach() + endforeach() +endforeach() diff --git a/sail-riscv.install b/sail-riscv.install deleted file mode 100644 index 7a539dfb5..000000000 --- a/sail-riscv.install +++ /dev/null @@ -1,2 +0,0 @@ -bin: ["c_emulator/riscv_sim_RV64" "c_emulator/riscv_sim_RV32"] -share: [ "model/main.sail" {"model/main.sail"} "model/prelude.sail" {"model/prelude.sail"} "model/prelude_mem.sail" {"model/prelude_mem.sail"} "model/prelude_mem_metadata.sail" {"model/prelude_mem_metadata.sail"} "model/riscv_addr_checks.sail" {"model/riscv_addr_checks.sail"} "model/riscv_addr_checks_common.sail" {"model/riscv_addr_checks_common.sail"} "model/riscv_analysis.sail" {"model/riscv_analysis.sail"} "model/riscv_csr_ext.sail" {"model/riscv_csr_ext.sail"} "model/riscv_csr_map.sail" {"model/riscv_csr_map.sail"} "model/riscv_decode_ext.sail" {"model/riscv_decode_ext.sail"} "model/riscv_ext_regs.sail" {"model/riscv_ext_regs.sail"} "model/riscv_fdext_control.sail" {"model/riscv_fdext_control.sail"} "model/riscv_fdext_regs.sail" {"model/riscv_fdext_regs.sail"} "model/riscv_fetch.sail" {"model/riscv_fetch.sail"} "model/riscv_fetch_rvfi.sail" {"model/riscv_fetch_rvfi.sail"} "model/riscv_flen_D.sail" {"model/riscv_flen_D.sail"} "model/riscv_flen_F.sail" {"model/riscv_flen_F.sail"} "model/riscv_freg_type.sail" {"model/riscv_freg_type.sail"} "model/riscv_insts_aext.sail" {"model/riscv_insts_aext.sail"} "model/riscv_insts_base.sail" {"model/riscv_insts_base.sail"} "model/riscv_insts_begin.sail" {"model/riscv_insts_begin.sail"} "model/riscv_insts_cdext.sail" {"model/riscv_insts_cdext.sail"} "model/riscv_insts_cext.sail" {"model/riscv_insts_cext.sail"} "model/riscv_insts_cfext.sail" {"model/riscv_insts_cfext.sail"} "model/riscv_insts_dext.sail" {"model/riscv_insts_dext.sail"} "model/riscv_insts_end.sail" {"model/riscv_insts_end.sail"} "model/riscv_insts_fext.sail" {"model/riscv_insts_fext.sail"} "model/riscv_insts_hints.sail" {"model/riscv_insts_hints.sail"} "model/riscv_insts_mext.sail" {"model/riscv_insts_mext.sail"} "model/riscv_insts_next.sail" {"model/riscv_insts_next.sail"} "model/riscv_insts_rmem.sail" {"model/riscv_insts_rmem.sail"} "model/riscv_insts_zba.sail" {"model/riscv_insts_zba.sail"} "model/riscv_insts_zbb.sail" {"model/riscv_insts_zbb.sail"} "model/riscv_insts_zbc.sail" {"model/riscv_insts_zbc.sail"} "model/riscv_insts_zbkb.sail" {"model/riscv_insts_zbkb.sail"} "model/riscv_insts_zbkx.sail" {"model/riscv_insts_zbkx.sail"} "model/riscv_insts_zbs.sail" {"model/riscv_insts_zbs.sail"} "model/riscv_insts_zfh.sail" {"model/riscv_insts_zfh.sail"} "model/riscv_insts_zicsr.sail" {"model/riscv_insts_zicsr.sail"} "model/riscv_insts_zkn.sail" {"model/riscv_insts_zkn.sail"} "model/riscv_insts_zks.sail" {"model/riscv_insts_zks.sail"} "model/riscv_jalr_rmem.sail" {"model/riscv_jalr_rmem.sail"} "model/riscv_jalr_seq.sail" {"model/riscv_jalr_seq.sail"} "model/riscv_mem.sail" {"model/riscv_mem.sail"} "model/riscv_misa_ext.sail" {"model/riscv_misa_ext.sail"} "model/riscv_next_control.sail" {"model/riscv_next_control.sail"} "model/riscv_next_regs.sail" {"model/riscv_next_regs.sail"} "model/riscv_pc_access.sail" {"model/riscv_pc_access.sail"} "model/riscv_platform.sail" {"model/riscv_platform.sail"} "model/riscv_pmp_control.sail" {"model/riscv_pmp_control.sail"} "model/riscv_pmp_regs.sail" {"model/riscv_pmp_regs.sail"} "model/riscv_pte.sail" {"model/riscv_pte.sail"} "model/riscv_ptw.sail" {"model/riscv_ptw.sail"} "model/riscv_reg_type.sail" {"model/riscv_reg_type.sail"} "model/riscv_regs.sail" {"model/riscv_regs.sail"} "model/riscv_softfloat_interface.sail" {"model/riscv_softfloat_interface.sail"} "model/riscv_step.sail" {"model/riscv_step.sail"} "model/riscv_step_common.sail" {"model/riscv_step_common.sail"} "model/riscv_step_ext.sail" {"model/riscv_step_ext.sail"} "model/riscv_step_rvfi.sail" {"model/riscv_step_rvfi.sail"} "model/riscv_sync_exception.sail" {"model/riscv_sync_exception.sail"} "model/riscv_sys_control.sail" {"model/riscv_sys_control.sail"} "model/riscv_sys_exceptions.sail" {"model/riscv_sys_exceptions.sail"} "model/riscv_sys_regs.sail" {"model/riscv_sys_regs.sail"} "model/riscv_termination_common.sail" {"model/riscv_termination_common.sail"} "model/riscv_termination_rv32.sail" {"model/riscv_termination_rv32.sail"} "model/riscv_termination_rv64.sail" {"model/riscv_termination_rv64.sail"} "model/riscv_types.sail" {"model/riscv_types.sail"} "model/riscv_types_common.sail" {"model/riscv_types_common.sail"} "model/riscv_types_ext.sail" {"model/riscv_types_ext.sail"} "model/riscv_types_kext.sail" {"model/riscv_types_kext.sail"} "model/riscv_vmem_common.sail" {"model/riscv_vmem_common.sail"} "model/riscv_vmem_rv32.sail" {"model/riscv_vmem_rv32.sail"} "model/riscv_vmem_rv64.sail" {"model/riscv_vmem_rv64.sail"} "model/riscv_vmem_sv32.sail" {"model/riscv_vmem_sv32.sail"} "model/riscv_vmem_sv39.sail" {"model/riscv_vmem_sv39.sail"} "model/riscv_vmem_sv48.sail" {"model/riscv_vmem_sv48.sail"} "model/riscv_vmem_tlb.sail" {"model/riscv_vmem_tlb.sail"} "model/riscv_vmem_types.sail" {"model/riscv_vmem_types.sail"} "model/riscv_xlen32.sail" {"model/riscv_xlen32.sail"} "model/riscv_xlen64.sail" {"model/riscv_xlen64.sail"} "model/rvfi_dii.sail" {"model/rvfi_dii.sail"} "c_emulator/riscv_platform.c" {"c_emulator/riscv_platform.c"} "c_emulator/riscv_platform_impl.c" {"c_emulator/riscv_platform_impl.c"} "c_emulator/riscv_prelude.c" {"c_emulator/riscv_prelude.c"} "c_emulator/riscv_sim.c" {"c_emulator/riscv_sim.c"} "c_emulator/riscv_softfloat.c" {"c_emulator/riscv_softfloat.c"} "c_emulator/riscv_config.h" {"c_emulator/riscv_config.h"} "c_emulator/riscv_platform.h" {"c_emulator/riscv_platform.h"} "c_emulator/riscv_platform_impl.h" {"c_emulator/riscv_platform_impl.h"} "c_emulator/riscv_prelude.h" {"c_emulator/riscv_prelude.h"} "c_emulator/riscv_sail.h" {"c_emulator/riscv_sail.h"} "c_emulator/riscv_softfloat.h" {"c_emulator/riscv_softfloat.h"} "handwritten_support/mem_metadata.lem" {"handwritten_support/mem_metadata.lem"} "handwritten_support/riscv_extras.lem" {"handwritten_support/riscv_extras.lem"} "handwritten_support/riscv_extras_fdext.lem" {"handwritten_support/riscv_extras_fdext.lem"} "handwritten_support/riscv_extras_sequential.lem" {"handwritten_support/riscv_extras_sequential.lem"} "handwritten_support/hgen/ast.hgen" {"handwritten_support/hgen/ast.hgen"} "handwritten_support/hgen/fold.hgen" {"handwritten_support/hgen/fold.hgen"} "handwritten_support/hgen/herdtools_ast_to_shallow_ast.hgen" {"handwritten_support/hgen/herdtools_ast_to_shallow_ast.hgen"} "handwritten_support/hgen/herdtools_types_to_shallow_types.hgen" {"handwritten_support/hgen/herdtools_types_to_shallow_types.hgen"} "handwritten_support/hgen/lexer.hgen" {"handwritten_support/hgen/lexer.hgen"} "handwritten_support/hgen/lexer_regexps.hgen" {"handwritten_support/hgen/lexer_regexps.hgen"} "handwritten_support/hgen/map.hgen" {"handwritten_support/hgen/map.hgen"} "handwritten_support/hgen/parser.hgen" {"handwritten_support/hgen/parser.hgen"} "handwritten_support/hgen/pretty.hgen" {"handwritten_support/hgen/pretty.hgen"} "handwritten_support/hgen/pretty_xml.hgen" {"handwritten_support/hgen/pretty_xml.hgen"} "handwritten_support/hgen/sail_trans_out.hgen" {"handwritten_support/hgen/sail_trans_out.hgen"} "handwritten_support/hgen/shallow_ast_to_herdtools_ast.hgen" {"handwritten_support/hgen/shallow_ast_to_herdtools_ast.hgen"} "handwritten_support/hgen/shallow_types_to_herdtools_types.hgen" {"handwritten_support/hgen/shallow_types_to_herdtools_types.hgen"} "handwritten_support/hgen/token_types.hgen" {"handwritten_support/hgen/token_types.hgen"} "handwritten_support/hgen/tokens.hgen" {"handwritten_support/hgen/tokens.hgen"} "handwritten_support/hgen/trans_sail.hgen" {"handwritten_support/hgen/trans_sail.hgen"} "handwritten_support/hgen/types.hgen" {"handwritten_support/hgen/types.hgen"} "handwritten_support/hgen/types_sail_trans_out.hgen" {"handwritten_support/hgen/types_sail_trans_out.hgen"} "handwritten_support/hgen/types_trans_sail.hgen" {"handwritten_support/hgen/types_trans_sail.hgen"} "handwritten_support/0.11/mem_metadata.lem" {"handwritten_support/0.11/mem_metadata.lem"} "handwritten_support/0.11/riscv_extras.lem" {"handwritten_support/0.11/riscv_extras.lem"} "handwritten_support/0.11/riscv_extras_fdext.lem" {"handwritten_support/0.11/riscv_extras_fdext.lem"} "handwritten_support/0.11/riscv_extras_sequential.lem" {"handwritten_support/0.11/riscv_extras_sequential.lem"} "generated_definitions/for-rmem/riscv.lem" {"generated_definitions/for-rmem/riscv.lem"} "generated_definitions/for-rmem/riscv_types.lem" {"generated_definitions/for-rmem/riscv_types.lem"} "generated_definitions/for-rmem/riscv_toFromInterp2.ml" {"generated_definitions/for-rmem/riscv_toFromInterp2.ml"} "generated_definitions/for-rmem/riscv.defs" {"generated_definitions/for-rmem/riscv.defs"} ] diff --git a/sail_runtime/CMakeLists.txt b/sail_runtime/CMakeLists.txt new file mode 100644 index 000000000..d92f354ca --- /dev/null +++ b/sail_runtime/CMakeLists.txt @@ -0,0 +1,36 @@ +execute_process( + COMMAND ${SAIL_BIN} --dir + OUTPUT_VARIABLE sail_dir + OUTPUT_STRIP_TRAILING_WHITESPACE + COMMAND_ERROR_IS_FATAL ANY +) + +add_library(sail_runtime + "${sail_dir}/lib/elf.c" + "${sail_dir}/lib/elf.h" + "${sail_dir}/lib/rts.c" + "${sail_dir}/lib/rts.h" + "${sail_dir}/lib/sail.c" + "${sail_dir}/lib/sail.h" + "${sail_dir}/lib/sail_failure.c" + "${sail_dir}/lib/sail_failure.h" + "${sail_dir}/lib/sail_coverage.h" + "${sail_dir}/lib/sail_state.h" +) + +target_include_directories(sail_runtime + PUBLIC "${sail_dir}/lib" +) + +if (COVERAGE) + find_package(Threads REQUIRED) + + # Note, you must run `make` in the ${sail_dir}/lib/coverage + # directory; it doesn't come precompiled. + target_link_libraries(sail_runtime + PUBLIC + "${sail_dir}/lib/coverage/libsail_coverage.a" + Threads::Threads + ${CMAKE_DL_LIBS} + ) +endif() diff --git a/test/get_perf.py b/test/get_perf.py deleted file mode 100755 index 1570cac4f..000000000 --- a/test/get_perf.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/python -# Estimates the performance of the C backend based on aggregating the unit-tests. -# Assumes a complete run over the unit-tests has been done. - -import os, glob - -def test_perf(d, test_pat, test_type): - couts = glob.glob(os.path.join(d, test_pat)) - if len(couts) == 0: return - - total_insts = 0 - total_msecs = 0 - for c in couts: - with open(c, "r") as f: - insts = 0 - msecs = 0 - perf = None - for l in f.readlines(): - if l.startswith("Instructions:"): insts = int(l.split()[1]) - if l.startswith("Execution:"): msecs = int(l.split()[1]) - if l.startswith("Perf:"): perf = l - #print("Test {0}: {1} insts, {2} msecs".format(c, insts, msecs)) - #if perf: print(perf) - total_insts += insts - total_msecs += msecs - - Kips = total_insts/total_msecs if total_msecs != 0 else float("nan") - print("Average {0} performance: {1} Kips".format(test_type, Kips)) - -def get_test_pat(iset, emode): - return "rv64{0}-{1}-*.cout".format(iset, emode) - -if __name__ == '__main__': - test_dir = os.path.join(os.path.dirname(__file__), "riscv-tests") - for mode in ["p", "v"]: - test_perf(test_dir, get_test_pat("ui", mode), "ui-{0}".format(mode)) - test_perf(test_dir, get_test_pat("um", mode), "um-{0}".format(mode)) - test_perf(test_dir, get_test_pat("ua", mode), "ua-{0}".format(mode)) - test_perf(test_dir, get_test_pat("uc", mode), "uc-{0}".format(mode)) - test_perf(test_dir, get_test_pat("si", mode), "si-{0}".format(mode)) - test_perf(test_dir, get_test_pat("mi", mode), "mi-{0}".format(mode)) - test_perf(test_dir, get_test_pat("*", mode), mode) diff --git a/test/riscv-tests/.gitignore b/test/riscv-tests/.gitignore deleted file mode 100644 index 72a5e441e..000000000 --- a/test/riscv-tests/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.out -*.cout diff --git a/test/riscv-tests/CMakeLists.txt b/test/riscv-tests/CMakeLists.txt new file mode 100644 index 000000000..2ac187fe6 --- /dev/null +++ b/test/riscv-tests/CMakeLists.txt @@ -0,0 +1,18 @@ +# Run the emulator with all the ELF files in lib/sail-riscv/test/riscv-tests/rv32*.elf etc. +# +# On success or failure they write to the `tohost` symbol. See this code: +# https://github.com/riscv/riscv-test-env/blob/4fabfb4e0d3eacc1dc791da70e342e4b68ea7e46/p/riscv_test.h#L200 + +file(GLOB elfs_rv32d CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/rv32*.elf") +file(GLOB elfs_rv64d CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/rv64*.elf") + +foreach (arch IN ITEMS "rv32d" "rv64d") + foreach(elf IN LISTS elfs_${arch}) + file(RELATIVE_PATH elf_name "${CMAKE_CURRENT_SOURCE_DIR}" ${elf}) + + add_test( + NAME "${arch}_${elf_name}" + COMMAND $ ${elf} + ) + endforeach() +endforeach() diff --git a/test/run_fp_tests.sh b/test/run_fp_tests.sh deleted file mode 100755 index bbc7adbc3..000000000 --- a/test/run_fp_tests.sh +++ /dev/null @@ -1,97 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -cd $DIR -RISCVDIR="$DIR/.." - -RED='\033[0;91m' -GREEN='\033[0;92m' -YELLOW='\033[0;93m' -NC='\033[0m' - -rm -f $DIR/tests.xml - -pass=0 -fail=0 -all_pass=0 -all_fail=0 -SUITE_XML="" -SUITES_XML="" - -function green { - (( pass += 1 )) - printf "$1: ${GREEN}$2${NC}\n" - SUITE_XML+=" \n" -} - -function yellow { - (( fail += 1 )) - printf "$1: ${YELLOW}$2${NC}\n" - SUITE_XML+=" \n $2\n \n" -} - -function red { - (( fail += 1 )) - printf "$1: ${RED}$2${NC}\n" - SUITE_XML+=" \n $2\n \n" -} - -function finish_suite { - printf "$1: Passed ${pass} out of $(( pass + fail ))\n\n" - SUITES_XML+=" \n$SUITE_XML \n" - SUITE_XML="" - (( all_pass += pass )) || : - (( all_fail += fail )) || : - pass=0 - fail=0 -} - -SAILLIBDIR="$DIR/../../lib/" - -cd $RISCVDIR - -# Do 'make clean' to avoid cross-arch pollution. -make clean - -if make c_emulator/riscv_sim_RV64; -then - green "Building 64-bit RISCV C emulator" "ok" -else - red "Building 64-bit RISCV C emulator" "fail" -fi -for test in $DIR/riscv-tests/rv64u{f,d}*.elf $DIR/riscv-tests/rv64mi-p-csr.elf; do - if timeout 5 $RISCVDIR/c_emulator/riscv_sim_RV64 -p $test > ${test%.elf}.cout 2>&1 && grep -q SUCCESS ${test%.elf}.cout - then - green "C-64 $(basename $test)" "ok" - else - red "C-64 $(basename $test)" "fail" - fi -done -finish_suite "64-bit RISCV C tests" - - -if ARCH=RV32 make c_emulator/riscv_sim_RV32; -then - green "Building 32-bit RISCV C emulator" "ok" -else - red "Building 32-bit RISCV C emulator" "fail" -fi -for test in $DIR/riscv-tests/rv32u{f,d}*.elf $DIR/riscv-tests/rv32mi-p-csr.elf; do - if timeout 5 $RISCVDIR/c_emulator/riscv_sim_RV32 -p $test > ${test%.elf}.cout 2>&1 && grep -q SUCCESS ${test%.elf}.cout - then - green "C-32 $(basename $test)" "ok" - else - red "C-32 $(basename $test)" "fail" - fi -done -finish_suite "32-bit RISCV C tests" - -printf "Passed ${all_pass} out of $(( all_pass + all_fail ))\n\n" -XML="\n$SUITES_XML\n" -printf "$XML" > $DIR/tests.xml - -if [ $all_fail -gt 0 ] -then - exit 1 -fi diff --git a/test/run_tests.sh b/test/run_tests.sh deleted file mode 100755 index d8016fac5..000000000 --- a/test/run_tests.sh +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -cd $DIR -RISCVDIR="$DIR/.." - -RED='\033[0;91m' -GREEN='\033[0;92m' -YELLOW='\033[0;93m' -NC='\033[0m' - -rm -f $DIR/tests.xml - -pass=0 -fail=0 -all_pass=0 -all_fail=0 -SUITE_XML="" -SUITES_XML="" - -function green { - (( pass += 1 )) - printf "$1: ${GREEN}$2${NC}\n" - SUITE_XML+=" \n" -} - -function yellow { - (( fail += 1 )) - printf "$1: ${YELLOW}$2${NC}\n" - SUITE_XML+=" \n $2\n \n" -} - -function red { - (( fail += 1 )) - printf "$1: ${RED}$2${NC}\n" - SUITE_XML+=" \n $2\n \n" -} - -function finish_suite { - printf "$1: Passed ${pass} out of $(( pass + fail ))\n\n" - SUITES_XML+=" \n$SUITE_XML \n" - SUITE_XML="" - (( all_pass += pass )) || : - (( all_fail += fail )) || : - pass=0 - fail=0 -} - -SAILLIBDIR="$DIR/../../lib/" - -cd $RISCVDIR - -# Do 'make clean' to avoid cross-arch pollution. -make clean - -printf "Building 32-bit RISCV specification...\n" - -if ARCH=RV32 make c_emulator/riscv_sim_RV32; -then - green "Building 32-bit RISCV C emulator" "ok" -else - red "Building 32-bit RISCV C emulator" "fail" -fi -for test in $DIR/riscv-tests/rv32*.elf; do - if timeout 5 $RISCVDIR/c_emulator/riscv_sim_RV32 -p $test > ${test%.elf}.cout 2>&1 && grep -q SUCCESS ${test%.elf}.cout - then - green "C-32 $(basename $test)" "ok" - else - red "C-32 $(basename $test)" "fail" - fi -done -finish_suite "32-bit RISCV C tests" - -# Do 'make clean' to avoid cross-arch pollution. -make clean - -printf "Building 64-bit RISCV specification...\n" - -if make c_emulator/riscv_sim_RV64; -then - green "Building 64-bit RISCV C emulator" "ok" -else - red "Building 64-bit RISCV C emulator" "fail" -fi -for test in $DIR/riscv-tests/rv64*.elf; do - if timeout 5 $RISCVDIR/c_emulator/riscv_sim_RV64 -p $test > ${test%.elf}.cout 2>&1 && grep -q SUCCESS ${test%.elf}.cout - then - green "C-64 $(basename $test)" "ok" - else - red "C-64 $(basename $test)" "fail" - fi -done -finish_suite "64-bit RISCV C tests" - -# Do 'make clean' to avoid cross-arch pollution. -make clean - -if ARCH=RV32 make c_emulator/riscv_rvfi_RV32; -then - green "Building 32-bit RISCV RVFI C emulator" "ok" -else - red "Building 32-bit RISCV RVFI C emulator" "fail" -fi -finish_suite "32-bit RISCV RVFI C tests" - -# Do 'make clean' to avoid cross-arch pollution. -make clean - -if ARCH=RV64 make c_emulator/riscv_rvfi_RV64; -then - green "Building 64-bit RISCV RVFI C emulator" "ok" -else - red "Building 64-bit RISCV RVFI C emulator" "fail" -fi -finish_suite "64-bit RISCV RVFI C tests" - -printf "Passed ${all_pass} out of $(( all_pass + all_fail ))\n\n" -XML="\n$SUITES_XML\n" -printf "$XML" > $DIR/tests.xml - -if [ $all_fail -gt 0 ] -then - exit 1 -fi