dart-sdk/tests/ffi_2
Daco Harkes 6101e4653b [test/ffi] Add struct stack alignment test
A smoke test to exercise alignment of structs with various field types
to see how they are aligned on the stack. Only contains small structs
because most ABIs only pass structs less than 16 bytes on the stack.

Especially tests iOS64, where `AlignOf(struct{float32;float32;}) == 4`
but `AlignOf(struct{int32;int32;}) == 8` due to the special treatment
of homogenous floats in the arm64 ABI combined with iOS decision to not
align everything on the stack to at least word size.

Test tested on iOS64 through Flutter.

structs_by_value_tests_configuration.dart is the only non-generated
file.

The tests are tested in the dependent CL. Tests are ignored in status
file and are un-ignored in dependent CL.

Tests for https://github.com/dart-lang/sdk/issues/36730.

Change-Id: I6ec4523208db740b8ea3f8a4ab1e5717f1088467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170691
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-11-06 13:54:23 +00:00
..
generator [test/ffi] Add struct stack alignment test 2020-11-06 13:54:23 +00:00
aliasing_test.dart
analysis_options.yaml
callback_tests_utils.dart [test/ffi] Passing structs by value test generator 2020-10-26 12:01:16 +00:00
coordinate.dart
coordinate_bare.dart
data_not_asan_test.dart
data_test.dart
dylib_isolates_test.dart [vm/ffi] Fix prepare_flutter_bundle.dart 2020-10-28 21:33:35 +00:00
dylib_utils.dart
extension_methods_test.dart
external_typed_data_test.dart
ffi_2.status [test/ffi] Passing structs by value test generator 2020-10-26 12:01:16 +00:00
ffi_test_helpers.dart
function_callbacks_many_test.dart
function_callbacks_structs_by_value_generated_test.dart [test/ffi] Add struct stack alignment test 2020-11-06 13:54:23 +00:00
function_callbacks_structs_by_value_test.dart [test/ffi] Passing structs by value test generator 2020-10-26 12:01:16 +00:00
function_callbacks_test.dart [vm/ffi] fix callbacks in --no-use-bare-instructions 2020-08-14 12:49:37 +00:00
function_callbacks_very_many_test copy.dart
function_callbacks_very_many_test.dart
function_structs_by_value_generated_test.dart [test/ffi] Add struct stack alignment test 2020-11-06 13:54:23 +00:00
function_structs_test.dart
function_test.dart
function_very_many_test.dart [tests/ffi] Reinstate deleted test 2020-09-02 12:12:52 +00:00
hardfp_test.dart
negative_function_test.dart
null_regress_39068_test.dart
null_test.dart
prepare_flutter_bundle.dart [vm/ffi] Fix prepare_flutter_bundle.dart 2020-10-28 21:33:35 +00:00
regress_37254_test.dart Cleanup misc remaining references to bytecode 2020-10-28 21:51:20 +00:00
regress_39044_test.dart
regress_39063_test.dart
regress_39885_test.dart
regress_40537_test.dart
regress_43016_test.dart Cleanup misc remaining references to bytecode 2020-10-28 21:51:20 +00:00
regress_43693_test.dart [vm/ffi] Fix alignment of Uint64 fields in structs on some ABIs 2020-10-09 16:32:08 +00:00
sizeof_test.dart
snapshot_test.dart
stacktrace_regress_37910_test.dart
structs_test.dart
variance_function_test.dart
very_large_struct.dart
vmspecific_dynamic_library_test.dart
vmspecific_enable_ffi_test.dart
vmspecific_function_callbacks_exit_test.dart
vmspecific_function_callbacks_negative_test.dart
vmspecific_function_callbacks_test.dart
vmspecific_function_gc_test.dart
vmspecific_function_test.dart
vmspecific_handle_dynamically_linked_test.dart [vm] Native API: Make Dart_NewWeakPersistentHandle not auto delete 2020-11-03 10:27:44 +00:00
vmspecific_handle_test.dart
vmspecific_highmem_32bit_test.dart
vmspecific_null_test.dart
vmspecific_object_gc_test.dart
vmspecific_regress_37100_test.dart
vmspecific_regress_37511_callbacks_test.dart
vmspecific_regress_37511_test.dart
vmspecific_regress_37780_test.dart
vmspecific_regress_38993_test.dart
vmspecific_send_port_id_test.dart
vmspecific_static_checks_test.dart
vmspecific_variance_function_checks_test.dart