Mercurial > pub > dyncall > dyncall
view test/callback_suite/config-random.lua @ 533:71c884e610f0
- integration of patches from Raphael Luba, Thekla, Inc.:
* integration of aggregate-by-value (struct, union) support patch for x64 (win and sysv)
* windows/x64 asm additions to specify how stack unwinds (help for debuggers, exception handling, etc.)
* see Changelog for details
- new calling convention modes for thiscalls (platform agnostic, was specific before)
* new signature character for platform agnostic thiscalls ('*' / DC_SIGCHAR_CC_THISCALL)
- dcCallF(), dcVCallF(), dcArgF() and dcVArgF():
* added support for aggregates-by-value (wasn't part of patch)
* change that those functions don't implicitly call dcReset() anymore, which was unflexible (breaking change)
- added macros to feature test implementation for aggregate-by-value and syscall support
- changed libdyncall_s.lib and libdyncallback_s.lib order in callback test makefiles, as some toolchains are picky about order
- doc:
* man page updates to describe aggregate interface
* manual overview changes to highlight platforms with aggregate-by-value support
- test/plain: replaced tests w/ old/stale sctruct interface with new aggregate one
author | Tassilo Philipp |
---|---|
date | Thu, 21 Apr 2022 13:35:47 +0200 |
parents | e56241bba0f5 |
children |
line wrap: on
line source
-- section 'main' -------------------------------------------------------------- ncases = 800 -- number of test cases (note: inf loop if higher than max arg permutation) mode = "random" -- generatore mode: 'random' or 'ordered' type sequences minargs = 0 -- minimum num. of supported arguments (>= 0) maxargs = 60 -- maximum num. of supported arguments (>= minargs) -- section 'types' ------------------------------------------------------------- types = "BcCsSiIjJlLpfd" -- supported argument types rtypes = nil -- supported return types (set to nil to use "v"..types) -- section 'ordered' ----------------------------------------------------------- offset = 0 -- permutation index offset (default = 0) step = 1 -- permutation index increment (default = 1) -- section 'random' ------------------------------------------------------------ seed = 40 -- random seed -- section 'calling convention' (useful on Windows for now) -------------------- api = "" -- calling convention ("__stdcall" or "__fastcall") -- for gcc use "__attribute__((__stdcall__))" or "__attribute__((__fastcall__))" ccprefix = "" -- signature prefix ("_s" (stdcall), "_f" (gcc fastcall) or "_F" (microsoft fastcall))