You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's possible we might use a C compiler that has a different idea about alignment than the Rust compiler has. In particular, when the Rust compiler calls into C code, it might do so with objects that aren't aligned as much as the C code expects. Similarly with the asm code.
We already have some checks for primitive types using DEFINE_METRICS in C code and define_metrics_tests in Rust code. We could expand this to include all the non-primitive types shared between Rust and C too.
We should also see if we can somehow check "once and for all" that the ABIs match.
We might need to split checks/assurances for non-alignment ABI issues into a separate issue.
The text was updated successfully, but these errors were encountered:
See #628 for background.
It's possible we might use a C compiler that has a different idea about alignment than the Rust compiler has. In particular, when the Rust compiler calls into C code, it might do so with objects that aren't aligned as much as the C code expects. Similarly with the asm code.
We already have some checks for primitive types using
DEFINE_METRICS
in C code anddefine_metrics_tests
in Rust code. We could expand this to include all the non-primitive types shared between Rust and C too.We should also see if we can somehow check "once and for all" that the ABIs match.
We might need to split checks/assurances for non-alignment ABI issues into a separate issue.
The text was updated successfully, but these errors were encountered: