aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/linux-gnu/x86_64/trace.c
diff options
context:
space:
mode:
authorSteve Fink <sphink@gmail.com>2006-09-25 02:27:08 +0200
committerIan Wienand <ianw@debian.org>2006-09-25 02:27:08 +0200
commit65b53df7fa2577c4138aef86c115873eab684a0a (patch)
treed9cf6e25679028ebbc0dd83f9f9a5054eb79cc9d /sysdeps/linux-gnu/x86_64/trace.c
parenta841f6592e75d78620ee9e645af22a58c9e3bbf9 (diff)
downloadltrace-65b53df7fa2577c4138aef86c115873eab684a0a.tar.gz
Large IA64 fix...
* display_args.c: store arg_num in arg_type_info * display_args.c: support 'double' parameters * display_args.c: fix implementation of float,double params for ia64 * output.c, process_event.c: store arg_num in arg_type_info * read_config_file.c: support 'double' parameters * read_config_file.c: store arg_num in arg_type_info, and as a result, stop using singleton objects for any of the arg_type_info's. * read_config_file.c: improve support for struct field alignments * read_config_file.c: count floating-point parameters to support ia64 float parameter passing * sysdeps/README, sysdeps/linux-gnu/*/trace.c: pass in the full arg_type_info to gimme_arg rather than just the arg_num (necessary for float params on some architectures) * sysdeps/linux-gnu/ia64/trace.c: accommodate register renaming when fetching the parameters of a function after it has returned * sysdeps/linux-gnu/ia64/trace.c: support floating point parameters
Diffstat (limited to 'sysdeps/linux-gnu/x86_64/trace.c')
-rw-r--r--sysdeps/linux-gnu/x86_64/trace.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sysdeps/linux-gnu/x86_64/trace.c b/sysdeps/linux-gnu/x86_64/trace.c
index c03043b..56622c9 100644
--- a/sysdeps/linux-gnu/x86_64/trace.c
+++ b/sysdeps/linux-gnu/x86_64/trace.c
@@ -86,8 +86,10 @@ gimme_arg32(enum tof type, struct process *proc, int arg_num)
exit(1);
}
-long gimme_arg(enum tof type, struct process *proc, int arg_num)
+long gimme_arg(enum tof type, struct process *proc, arg_type_info *info)
{
+ int arg_num = info->arg_num;
+
if (proc->mask_32bit)
return (unsigned int)gimme_arg32(type, proc, arg_num);