Blame SOURCES/ltrace-0.7.91-aarch64-params.patch

0c51c6
diff -rup a/sysdeps/linux-gnu/aarch64/fetch.c b/sysdeps/linux-gnu/aarch64/fetch.c
0c51c6
--- a/sysdeps/linux-gnu/aarch64/fetch.c	2018-07-05 16:06:10.066626252 -0400
0c51c6
+++ b/sysdeps/linux-gnu/aarch64/fetch.c	2018-07-05 16:17:17.659748481 -0400
0c51c6
@@ -308,12 +308,9 @@ arch_fetch_arg_init(enum tof type, struc
0c51c6
 	struct fetch_script how = pass_arg(context, proc, ret_info);
0c51c6
 	if (how.c == CVT_ERR)
0c51c6
 		goto fail;
0c51c6
-	if (how.c == CVT_NOP && how.f == FETCH_STACK) {
0c51c6
+	if (how.c == CVT_BYREF && how.f == FETCH_GPR) {
0c51c6
 		/* XXX double cast.  */
0c51c6
 		context->x8 = (arch_addr_t) (uintptr_t) context->gregs.regs[8];
0c51c6
-		/* See the comment above about the assert.  */
0c51c6
-		assert(! "Unexpected: first argument passed on stack.");
0c51c6
-		abort();
0c51c6
 	}
0c51c6
 
0c51c6
 	return context;
0c51c6
diff -rup a/testsuite/ltrace.main/system_call_params.exp b/testsuite/ltrace.main/system_call_params.exp
0c51c6
--- a/testsuite/ltrace.main/system_call_params.exp	2018-07-05 16:06:10.516624926 -0400
0c51c6
+++ b/testsuite/ltrace.main/system_call_params.exp	2018-07-05 16:58:01.549830643 -0400
0c51c6
@@ -61,13 +61,13 @@ set conf [ltraceNamedSource "$dir/syscal
0c51c6
 # doesn't list readdir, that would be taken from somelib.conf with a
0c51c6
 # wrong prototype.
0c51c6
 
0c51c6
-ltraceMatch1 [ltraceRun -L -S -F $conf -- $bin] {^open@SYS\("/some/path"} == 0
0c51c6
+ltraceMatch1 [ltraceRun -L -S -F $conf -- $bin] {^open@SYS\("/some/path", 0\)} == 0
0c51c6
 
0c51c6
 # On the other hand, if -F somedir/ is given, we want to accept
0c51c6
 # syscalls.conf found there.
0c51c6
 
0c51c6
 ltraceMatch [ltraceRun -L -S -F $dir -- $bin] {
0c51c6
-    {{^open@SYS\("/some/path"} == 1}
0c51c6
+    {{^open@SYS\("/some/path", 0\)} == 1}
0c51c6
     {{^write@SYS\(1, "something", 10\)} == 1}
0c51c6
     {{^mount@SYS\("source", "target", "filesystemtype"} == 1}
0c51c6
 }
0c51c6
Only in b/testsuite/ltrace.main: system_call_params.exp~