diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2004-06-09 23:08:20 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2004-06-09 23:08:20 +0000 |
commit | f2e19766833f6503536e96fbba85318691aeac27 (patch) | |
tree | 7322f414428b8c488c8a0a8f5003b9a36641827f /distrib/sets | |
parent | ae372ca4eeb4d3eb205c0ac60b5dc8d946965d35 (diff) |
Among other tricky (or nice, depending upon your involvment) features,
the 88Open ABI allows arguments to be passed through registers, then on
the stack, the through registers, then on the stack again, with some
function signatures.
Unfortunately, gcc has not been designed with this possibility in mind,
and does not handle this situation optimally (since no sane architecture
does this anyway) and will reserve stack storage for the second set of
in-registers parameters.
Fixing this is quite non-trivial (trust me on this), so in the meantime
keep at wasting space stack, but teach varargs about this so that it can
compensate correctly.
Diffstat (limited to 'distrib/sets')
0 files changed, 0 insertions, 0 deletions