cor64
cor64 copied to clipboard
FPU Integration
Here is a list of things done so far for the FPU:
C# Interpreter:
- Load/Store: Complete
- Add, Sub, Div, Mult: Passes Tests
- Sqrt, Abs, Mov, Neg: Passes Tests
- Round, Ceil, Floor, Truncate: Passes Tests
- Convert: Passes Tests
- Compare: Passes Tests
- Mandelbrot: Passes Test
- Exception Handling: Hard to directly handle in C# while being cross-platform agnostic
IL Recompiler: Everything works as expected like with the Interpreter, some of it does fallback to using the Interpreter to hand it.
FPU control/status: Partially implemented
FPU Rounding Support: round single/double results before each writeback
~~CFloat: A C# FPU interpreter class using C code to drive FPU operations. This will be an optional FPU interpreter backend that can be used to analyze FPU operations with more accuracy such as real exception handling, and round control.~~
For DotNetCode: Optionally use SIMD to perform float arithmetic, rounding, comparisons