[PATCH 3/4] Add multiple branches to ppc64 single step through atomic sequence testcase

Anton Blanchard
2014-03-28T03:42:00Z

Test 3 conditional branches in an atomic sequence, 2 to the same
destination.

gdb/testsuite/
2014-03-28 Anton Blanchard <anton@samba.org>

* gdb.arch/ppc64-atomic-inst.s: Add second and third branch
inside atomic sequence.
---
gdb/testsuite/gdb.arch/ppc64-atomic-inst.s | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/gdb/testsuite/gdb.arch/ppc64-atomic-inst.s b/gdb/testsuite/gdb.arch/ppc64-atomic-inst.s
index 15ccfd9..0521170 100644
--- a/gdb/testsuite/gdb.arch/ppc64-atomic-inst.s
+++ b/gdb/testsuite/gdb.arch/ppc64-atomic-inst.s
@@ -39,18 +39,30 @@ main:
1: lwarx 5,0,4
cmpwi 5,0
bne 2f
+ cmpwi 5,1
+ beq 3f
+ cmpwi 5,2
+ beq 3f /* branch to same destination */
addi 5,5,1
stwcx. 5,0,4
bne 1b

- std 0,0(4)
-2: ldarx 5,0,4
+2: nop
+
+3: std 0,0(4)
+1: ldarx 5,0,4
cmpdi 5,0
- bne 3f
+ bne 2f
+ cmpdi 5,1
+ beq 3f
+ cmpwi 5,2
+ beq 3f /* branch to same destination */
addi 5,5,1
stdcx. 5,0,4
bne 1b

+2: nop
+
3: li 3,0
blr

--
1.8.3.2