@@ -23,20 +23,23 @@ foo (int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7)
when adjusting the addresses in order to meet the alignment
requirements above. They usually hold the function arguments arg1
and arg2. So it is expected that these values are unavailable in
- some of these tests. */
+ some of these tests. On ARM, a similar problem occurs with registers
+ r0-r3 which contain arg1-arg4. The registers r0-r3 are caller saved
+ and are used for various purposes including aligning the stack and
+ holding temporaries, thereby destroying the values in their parameters. */
-/* { dg-final { gdb-test 16 "arg1" "1" { target { ! "s390*-*-*" } } } } */
-/* { dg-final { gdb-test 16 "arg2" "2" { target { ! "s390*-*-*" } } } } */
-/* { dg-final { gdb-test 16 "arg3" "3" } } */
-/* { dg-final { gdb-test 16 "arg4" "4" } } */
+/* { dg-final { gdb-test 16 "arg1" "1" { target { { ! "s390*-*-*" } && { ! "arm*-*-*" } } } } } */
+/* { dg-final { gdb-test 16 "arg2" "2" { target { { ! "s390*-*-*" } && { ! "arm*-*-*" } } } } } */
+/* { dg-final { gdb-test 16 "arg3" "3" { target { ! "arm*-*-*" } } } } */
+/* { dg-final { gdb-test 16 "arg4" "4" { target { ! "arm*-*-*" } } } } */
/* { dg-final { gdb-test 16 "arg5" "5" } } */
/* { dg-final { gdb-test 16 "arg6" "6" } } */
/* { dg-final { gdb-test 16 "arg7" "30" } } */
/* { dg-final { gdb-test 16 "y" "2" } } */
-/* { dg-final { gdb-test 18 "arg1" "1" { target { ! "s390*-*-*" } } } } */
-/* { dg-final { gdb-test 18 "arg2" "2" { target { ! "s390*-*-*" } } } } */
-/* { dg-final { gdb-test 18 "arg3" "3" } } */
-/* { dg-final { gdb-test 18 "arg4" "4" } } */
+/* { dg-final { gdb-test 18 "arg1" "1" { target { { ! "s390*-*-*" } && { ! "arm*-*-*" } } } } } */
+/* { dg-final { gdb-test 18 "arg2" "2" { target { { ! "s390*-*-*" } && { ! "arm*-*-*" } } } } } */
+/* { dg-final { gdb-test 18 "arg3" "3" { target { ! "arm*-*-*" } } } } */
+/* { dg-final { gdb-test 18 "arg4" "4" { target { ! "arm*-*-*" } } } } */
/* { dg-final { gdb-test 18 "arg5" "5" } } */
/* { dg-final { gdb-test 18 "arg6" "6" } } */
/* { dg-final { gdb-test 18 "arg7" "30" } } */