Description
Currently the JIT has various specialized handling for TYP_SIMD8
, TYP_SIMD12
, TYP_SIMD16
, and TYP_SIMD32
. However, this specialized handling is limited to the framework defined Vector2
, Vector3
, Vector4
, Vector<T>
, Vector64<T>
, Vector128<T>
, and Vector256`.
In various cases and for various reasons, users may define their own types rather than using the framework types. This typically occurs for math and game frameworks where they are defining equivalents to Vector2/3/4
.
As such, it may be beneficial for the JIT to recognize such structs and treat them as the appropriate TYP_SIMD
. I would propose we initially limit this to TYP_FLOAT
and can consider expanding in the future as appropriate.
category:design
theme:vector-codegen
skill-level:expert
cost:large
impact:medium