annotate test/callback_suite_aggrs/config.lua @ 550:5e1002095afa

- callback_suite_aggrs: enabling (non-standard) struct packing, by default (via #pragma, should be ignored by compilers not handling that) - comment fix
author Tassilo Philipp
date Mon, 20 Jun 2022 14:24:37 +0200
parents cd46e111bc4c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
523
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
1 -- user config for rand-sig.lua:
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
2 minargs = 0
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
3 maxargs = 16
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
4 minaggrfields= 0 -- 0 allows for empty structs/unions
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
5 maxaggrfields= 12
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
6 maxarraylen = 16 -- see *)
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
7 arraydice = 40 -- how often to turn a member into an array (1 out of arraydice-times)
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
8 maxaggrdepth = 3 -- max nesting depth of aggregates, 1 = no nesting
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
9 reqaggrinsig = true -- require that every generated signature has at least one aggregate
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
10 ncases = 400
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
11 types = "BcsijlCSIJLpfd{}<>" -- types to use; use '{','}' for structs, '<','>' for unions
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
12 rtypes = nil -- supported return types (set to nil to use "v"..types)
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
13 seed = 1996
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
14
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
15 -- *) note some callconvs pass structs via regs, so using big numbers here will
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
16 -- reduce those cases; however special alignment rules are specified in some
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
17 -- ABIs for bigger arrays, which is also worth testing
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
18
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
19
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
20
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
21 -- Notes: specify types more than once to increase relative occurance, e.g.:
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
22
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
23 -- this favors non-aggregate args, especially ints (and also increases avg num of aggregate fields):
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
24 --types = "Bccssiiiiijjllpfd{}"
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
25
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
26 -- this heavily favors nested structs, while not having any union:
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
27 --types = "Bcsijlpfd{{{{{{}"
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
28
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
29 -- this heavily favors flat and short/empty aggregates:
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
30 --types = "Bcsijlpfd{}}}}}}<>>>>>"
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
31
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
32
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
33
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
34 -- user config for mk-cases.lua
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
35
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
36 -- force aggregate packing, 0=off, pos values set fixed packing, neg values
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
37 -- set a random power-of-2 packing per aggregate, within [1,abs(aggrpacking)]
550
5e1002095afa - callback_suite_aggrs: enabling (non-standard) struct packing, by default (via #pragma, should be ignored by compilers not handling that)
Tassilo Philipp
parents: 523
diff changeset
38 aggrpacking = -8
523
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
39 aggrpackingseed = seed
cd46e111bc4c - new test/callback_suite_aggrs (currently ahead of checked-in dyncall code and won't compile, though, as with call_suite_aggrs; dc code will be checked in, soon)
Tassilo Philipp
parents:
diff changeset
40