9d1b447b23
Split off https://dart-review.googlesource.com/c/sdk/+/140290 to make that CL smaller. This CL adds support for struct types in the ffi compiler frontend in `runtime/vm/compiler/ffi/native_type.h`. The code in this CL is unit tested: 1. From Dart source to `NativeCompoundType` are tested as VM test. TEST=runtime/vm/compiler/ffi/native_type_vm_test.cc 2. The size and alignments for structs are tested with expect files. TEST=runtime/vm/compiler/ffi/native_type_test.cc The code in this CL has been end-to-end tested in the CL it is split off from. And will be end-to-end tested when that CL also lands. Issue: https://github.com/dart-lang/sdk/issues/36730 Change-Id: Ia7134e30daf028fea3ed97319ac7f5d0dbcc710f Cq-Include-Trybots: luci.dart.try:vm-precomp-ffi-qemu-linux-release-arm-try,vm-ffi-android-debug-arm64-try,vm-ffi-android-debug-arm-try,vm-kernel-nnbd-win-debug-x64-try,vm-kernel-mac-debug-x64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172648 Commit-Queue: Daco Harkes <dacoharkes@google.com> Reviewed-by: Clement Skau <cskau@google.com>