view test/callback_suite_aggrs/README.txt @ 542:a73a5cd50c19

- fix passing aggregate-by-val on x64/sysv: subaggr classification for aggr *arrays* was wrong (was problematic when there ware exactly 2 8bytes to be classified, potentially be passed via registers)
author Tassilo Philipp
date Mon, 02 May 2022 15:32:41 +0200
parents cd46e111bc4c
children
line wrap: on
line source

callback_suite_aggrs for dyncall written in C and Lua.

Tests getting aggregates (structs, unions and arrays) back from a callback to
whom they were passed by value, along with other, non-aggregate args. Note,
arrays are only passed/returned by value as members of structs and unions, as
they would decay to a pointer in C if passed to a function, and cannot be
returned.
So this test suite does not generate any arrays outside of structs and unions.

A macro AGGR_MISALIGN can be used in globals.c to intentionally misalign
aggregate instances used with callback object.