Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


Break down a D type into basic (register) types for the x86_64 System V ABI.
Martin Kinkelin
TypeTuple toArgTypes_sysv_x64(Type t);
This breaks a type down into 'simpler' types that can be passed to a function in registers, and returned in registers. This is the implementation for the x86_64 System V ABI (not used for Win64), based on
Type t type to break down
tuple of types, each element can be passed in a register. A tuple of zero length means the type cannot be passed/returned in registers. null indicates a void.