diff options
author | Petr Machata <pmachata@redhat.com> | 2012-09-13 17:12:41 +0200 |
---|---|---|
committer | Petr Machata <pmachata@redhat.com> | 2012-09-22 15:26:38 +0200 |
commit | e36298a706b96bfdf9335fbe8288827761d77957 (patch) | |
tree | 7d1f5bb3b93dcf18f6d32b3ad8d079f5121ba186 /printf.c | |
parent | a2e16c5cc8cc2343d40a44ac8b4d2230de9fc985 (diff) | |
download | ltrace-e36298a706b96bfdf9335fbe8288827761d77957.tar.gz |
Introduce parameter pack flavors and parameter pack backend callbacks
The issue this is trying to solve is that some backends (Itanium in
particular) change the parameter passing convention depending on whether
given parameter is part of varargs parameter or not. Therefore the
backend needs to know a) that any give argument is part of parameter pack,
and b) if it is, whether it's a varargs-type pack, or something else.
Backends that wish to use this should add #define ARCH_HAVE_FETCH_PACK and
define functions arch_fetch_param_pack_{start,end} (with the same interface
as fetch_param_pack_{start,end} from fetch.h).
Diffstat (limited to 'printf.c')
-rw-r--r-- | printf.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -345,7 +345,7 @@ param_printf_done(struct param_enum *context) void param_pack_init_printf(struct param *param, struct expr_node *arg, int own_arg) { - param_init_pack(param, arg, 1, own_arg, + param_init_pack(param, PARAM_PACK_VARARGS, arg, 1, own_arg, ¶m_printf_init, ¶m_printf_next, ¶m_printf_stop, ¶m_printf_done); } |