From ebfbc9541753b55fb1b22ba762571f80e4a497f7 Mon Sep 17 00:00:00 2001 From: Andreas Arnez Date: Fri, 24 Sep 2021 20:06:39 +0200 Subject: [PATCH] s390x: Fix compile warnings in test cases Some GCC versions emit the following warnings for some s390x-specific test cases: warning: listing the stack pointer register '15' in a clobber list is deprecated warning: this 'else' clause does not guard... [-Wmisleading-indentation] ...this statement, but... Fix these. Most of inline assemblies declaring r15 as clobbered do not actually change its value. Only in stmg_wrap() it becomes necessary to save and restore r15. --- none/tests/s390x/cgij.c | 16 ++++++++-------- none/tests/s390x/cgrj.c | 16 ++++++++-------- none/tests/s390x/cij.c | 16 ++++++++-------- none/tests/s390x/clgij.c | 16 ++++++++-------- none/tests/s390x/clgrj.c | 16 ++++++++-------- none/tests/s390x/clij.c | 16 ++++++++-------- none/tests/s390x/clrj.c | 16 ++++++++-------- none/tests/s390x/crj.c | 16 ++++++++-------- none/tests/s390x/cu42.c | 3 ++- none/tests/s390x/stmg.c | 30 +++++++++++------------------- 10 files changed, 77 insertions(+), 84 deletions(-) diff --git a/none/tests/s390x/cgij.c b/none/tests/s390x/cgij.c index 962e56efb5..799e4240b2 100644 --- a/none/tests/s390x/cgij.c +++ b/none/tests/s390x/cgij.c @@ -35,7 +35,7 @@ void compare_never(int64_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -49,7 +49,7 @@ void compare_always(int64_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -63,7 +63,7 @@ void compare_le42(int64_t value) "brasl 14,if_gt\n\t" "j 0f\n\t" "brasl 14,if_le\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -77,7 +77,7 @@ void compare_ge42(int64_t value) "brasl 14,if_lt\n\t" "j 0f\n\t" "brasl 14,if_ge\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -91,7 +91,7 @@ void compare_gt42(int64_t value) "brasl 14,if_le\n\t" "j 0f\n\t" "brasl 14,if_gt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -105,7 +105,7 @@ void compare_lt42(int64_t value) "brasl 14,if_ge\n\t" "j 0f\n\t" "brasl 14,if_lt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -119,7 +119,7 @@ void compare_eq42(int64_t value) "brasl 14,if_ne\n\t" "j 0f\n\t" "brasl 14,if_eq\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_ne42(int64_t value) "brasl 14,if_eq\n\t" "j 0f\n\t" "brasl 14,if_ne\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/cgrj.c b/none/tests/s390x/cgrj.c index f269918402..3a5abd336b 100644 --- a/none/tests/s390x/cgrj.c +++ b/none/tests/s390x/cgrj.c @@ -37,7 +37,7 @@ void compare_never(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -53,7 +53,7 @@ void compare_always(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -69,7 +69,7 @@ void compare_le(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_le\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -85,7 +85,7 @@ void compare_ge(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_ge\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -101,7 +101,7 @@ void compare_gt(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_gt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -117,7 +117,7 @@ void compare_lt(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_lt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_eq(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_eq\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -149,7 +149,7 @@ void compare_ne(int64_t value1, int64_t value2) "j 0f\n\t" "brasl 14,if_ne\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/cij.c b/none/tests/s390x/cij.c index 4f2913e89b..34e24d0ce9 100644 --- a/none/tests/s390x/cij.c +++ b/none/tests/s390x/cij.c @@ -35,7 +35,7 @@ void compare_never(int32_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -49,7 +49,7 @@ void compare_always(int32_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -63,7 +63,7 @@ void compare_le42(int32_t value) "brasl 14,if_gt\n\t" "j 0f\n\t" "brasl 14,if_le\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -77,7 +77,7 @@ void compare_ge42(int32_t value) "brasl 14,if_lt\n\t" "j 0f\n\t" "brasl 14,if_ge\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -91,7 +91,7 @@ void compare_gt42(int32_t value) "brasl 14,if_le\n\t" "j 0f\n\t" "brasl 14,if_gt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -105,7 +105,7 @@ void compare_lt42(int32_t value) "brasl 14,if_ge\n\t" "j 0f\n\t" "brasl 14,if_lt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -119,7 +119,7 @@ void compare_eq42(int32_t value) "brasl 14,if_ne\n\t" "j 0f\n\t" "brasl 14,if_eq\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_ne42(int32_t value) "brasl 14,if_eq\n\t" "j 0f\n\t" "brasl 14,if_ne\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/clgij.c b/none/tests/s390x/clgij.c index 87d3a3a367..7cfd509852 100644 --- a/none/tests/s390x/clgij.c +++ b/none/tests/s390x/clgij.c @@ -35,7 +35,7 @@ void compare_never(uint64_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -49,7 +49,7 @@ void compare_always(uint64_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -63,7 +63,7 @@ void compare_le42(uint64_t value) "brasl 14,if_gt\n\t" "j 0f\n\t" "brasl 14,if_le\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -77,7 +77,7 @@ void compare_ge42(uint64_t value) "brasl 14,if_lt\n\t" "j 0f\n\t" "brasl 14,if_ge\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -91,7 +91,7 @@ void compare_gt42(uint64_t value) "brasl 14,if_le\n\t" "j 0f\n\t" "brasl 14,if_gt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -105,7 +105,7 @@ void compare_lt42(uint64_t value) "brasl 14,if_ge\n\t" "j 0f\n\t" "brasl 14,if_lt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -119,7 +119,7 @@ void compare_eq42(uint64_t value) "brasl 14,if_ne\n\t" "j 0f\n\t" "brasl 14,if_eq\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_ne42(uint64_t value) "brasl 14,if_eq\n\t" "j 0f\n\t" "brasl 14,if_ne\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/clgrj.c b/none/tests/s390x/clgrj.c index de6b825025..c7917df505 100644 --- a/none/tests/s390x/clgrj.c +++ b/none/tests/s390x/clgrj.c @@ -37,7 +37,7 @@ void compare_never(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -53,7 +53,7 @@ void compare_always(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -69,7 +69,7 @@ void compare_le(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_le\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -85,7 +85,7 @@ void compare_ge(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_ge\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -101,7 +101,7 @@ void compare_gt(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_gt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -117,7 +117,7 @@ void compare_lt(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_lt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_eq(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_eq\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -149,7 +149,7 @@ void compare_ne(uint64_t value1, uint64_t value2) "j 0f\n\t" "brasl 14,if_ne\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/clij.c b/none/tests/s390x/clij.c index 3b62e1c08b..dc627cdcc9 100644 --- a/none/tests/s390x/clij.c +++ b/none/tests/s390x/clij.c @@ -35,7 +35,7 @@ void compare_never(uint32_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -49,7 +49,7 @@ void compare_always(uint32_t value) "brasl 14,if_not_taken\n\t" "j 0f\n\t" "brasl 14,if_taken\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -63,7 +63,7 @@ void compare_le42(uint32_t value) "brasl 14,if_gt\n\t" "j 0f\n\t" "brasl 14,if_le\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -77,7 +77,7 @@ void compare_ge42(uint32_t value) "brasl 14,if_lt\n\t" "j 0f\n\t" "brasl 14,if_ge\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -91,7 +91,7 @@ void compare_gt42(uint32_t value) "brasl 14,if_le\n\t" "j 0f\n\t" "brasl 14,if_gt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -105,7 +105,7 @@ void compare_lt42(uint32_t value) "brasl 14,if_ge\n\t" "j 0f\n\t" "brasl 14,if_lt\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -119,7 +119,7 @@ void compare_eq42(uint32_t value) "brasl 14,if_ne\n\t" "j 0f\n\t" "brasl 14,if_eq\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_ne42(uint32_t value) "brasl 14,if_eq\n\t" "j 0f\n\t" "brasl 14,if_ne\n\t" - "0: aghi 15,160\n\t" : : "d"(val) : "15", BRASLCLOBBER); + "0: aghi 15,160\n\t" : : "d"(val) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/clrj.c b/none/tests/s390x/clrj.c index 4e3454f4dc..ba42b948db 100644 --- a/none/tests/s390x/clrj.c +++ b/none/tests/s390x/clrj.c @@ -37,7 +37,7 @@ void compare_never(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -53,7 +53,7 @@ void compare_always(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -69,7 +69,7 @@ void compare_le(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_le\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -85,7 +85,7 @@ void compare_ge(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_ge\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -101,7 +101,7 @@ void compare_gt(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_gt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -117,7 +117,7 @@ void compare_lt(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_lt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_eq(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_eq\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -149,7 +149,7 @@ void compare_ne(uint32_t value1, uint32_t value2) "j 0f\n\t" "brasl 14,if_ne\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/crj.c b/none/tests/s390x/crj.c index 936b70cae8..df3bd2009a 100644 --- a/none/tests/s390x/crj.c +++ b/none/tests/s390x/crj.c @@ -37,7 +37,7 @@ void compare_never(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -53,7 +53,7 @@ void compare_always(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_taken\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -69,7 +69,7 @@ void compare_le(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_le\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -85,7 +85,7 @@ void compare_ge(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_ge\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -101,7 +101,7 @@ void compare_gt(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_gt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -117,7 +117,7 @@ void compare_lt(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_lt\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -133,7 +133,7 @@ void compare_eq(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_eq\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } @@ -149,7 +149,7 @@ void compare_ne(int32_t value1, int32_t value2) "j 0f\n\t" "brasl 14,if_ne\n\t" "0: aghi 15,160\n\t" - : : "d"(val1), "d"(val2) : "15", BRASLCLOBBER); + : : "d"(val1), "d"(val2) : BRASLCLOBBER); return; } diff --git a/none/tests/s390x/cu42.c b/none/tests/s390x/cu42.c index 2b41d76b30..91e7e9df54 100644 --- a/none/tests/s390x/cu42.c +++ b/none/tests/s390x/cu42.c @@ -97,11 +97,12 @@ run_test(uint16_t *dst, uint64_t dst_len, uint32_t *src, uint64_t src_len) printf("UTF16: "); if (dst_len - result.len1 == 0) printf(" "); - else + else { assert((dst_len - result.len1) % 2 == 0); for (i = 0; i < (dst_len - result.len1) / 2; ++i) { printf(" %04x", dst[i]); } + } printf("\n"); printf(" cc = %d\n", result.cc); diff --git a/none/tests/s390x/stmg.c b/none/tests/s390x/stmg.c index 38ec4f6d97..21765f3854 100644 --- a/none/tests/s390x/stmg.c +++ b/none/tests/s390x/stmg.c @@ -1,4 +1,4 @@ -#include +#include char base[] ="0123456789012345678901234567890123456789"; @@ -16,44 +16,36 @@ stmg_no_wrap(void) : "a" (base) : "5", "6", "7"); /* Write out BUF */ - asm volatile( "lghi 2, 1\n\t" // stdout - "lgr 3, %0\n\t" // buf - "lghi 4, 24\n\t" // len = 3*8 bytes - "svc 4\n\t" - : : "a" (buf) - : "2", "3", "4"); + fwrite(buf, sizeof(buf), 1, stdout); } void stmg_wrap(void) { - char buf[64]; + char buf[32]; /* Wrap around case; copies 32 bytes from BASE to BUF */ - asm volatile( "lg 15, 0(%1)\n\t" + asm volatile( "lgr 3, 15\n\t" /* save stack pointer */ "lg 0, 8(%1)\n\t" "lg 1, 16(%1)\n\t" "lg 2, 24(%1)\n\t" + "lg 15, 0(%1)\n\t" "stmg 15, 2, %0\n\t" - :"=m" (buf) + "lgr 15, 3" /* restore stack pointer */ + :"=S" (buf) : "a" (base) - : "15", "0", "1", "2"); + : "0", "1", "2", "3"); /* Write out BUF */ - asm volatile( "lghi 2, 1\n\t" // stdout - "lgr 3, %0\n\t" // buf - "lghi 4, 32\n\t" // len = 4*8 bytes - "svc 4\n\t" - : : "a" (buf) - : "2", "3", "4"); + fwrite(buf, sizeof(buf), 1, stdout); } int main(void) { stmg_no_wrap(); - write(1, "\n", 1); + putchar('\n'); stmg_wrap(); - write(1, "\n", 1); + putchar('\n'); return 0; } -- 2.47.2