aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing
diff options
context:
space:
mode:
authorMichael Ellerman <mpe@ellerman.id.au>2014-06-10 08:23:07 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-06-11 03:03:45 -0400
commit0a6121cf337d8f5183ef1f8a8bca0734f14f4bb1 (patch)
treefd47c9217937ea385476d5a63f0eb3bb98905b1a /tools/testing
parent3df48c981d5a9610e02e9270b1bc4274fb536710 (diff)
selftests/powerpc: Fix instruction loop for ABIv2 (LE)
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'tools/testing')
-rw-r--r--tools/testing/selftests/powerpc/pmu/loop.S73
1 files changed, 35 insertions, 38 deletions
diff --git a/tools/testing/selftests/powerpc/pmu/loop.S b/tools/testing/selftests/powerpc/pmu/loop.S
index 8820e3df1444..20c1f0876c47 100644
--- a/tools/testing/selftests/powerpc/pmu/loop.S
+++ b/tools/testing/selftests/powerpc/pmu/loop.S
@@ -3,44 +3,41 @@
3 * Licensed under GPLv2. 3 * Licensed under GPLv2.
4 */ 4 */
5 5
6#include <ppc-asm.h>
7
6 .text 8 .text
7 9
8 .global thirty_two_instruction_loop 10FUNC_START(thirty_two_instruction_loop)
9 .type .thirty_two_instruction_loop,@function 11 cmpdi r3,0
10 .section ".opd","aw",@progbits
11thirty_two_instruction_loop:
12 .quad .thirty_two_instruction_loop, .TOC.@tocbase, 0
13 .previous
14.thirty_two_instruction_loop:
15 cmpwi %r3,0
16 beqlr 12 beqlr
17 addi %r4,%r3,1 13 addi r4,r3,1
18 addi %r4,%r4,1 14 addi r4,r4,1
19 addi %r4,%r4,1 15 addi r4,r4,1
20 addi %r4,%r4,1 16 addi r4,r4,1
21 addi %r4,%r4,1 17 addi r4,r4,1
22 addi %r4,%r4,1 18 addi r4,r4,1
23 addi %r4,%r4,1 19 addi r4,r4,1
24 addi %r4,%r4,1 20 addi r4,r4,1
25 addi %r4,%r4,1 21 addi r4,r4,1
26 addi %r4,%r4,1 22 addi r4,r4,1
27 addi %r4,%r4,1 23 addi r4,r4,1
28 addi %r4,%r4,1 24 addi r4,r4,1
29 addi %r4,%r4,1 25 addi r4,r4,1
30 addi %r4,%r4,1 26 addi r4,r4,1
31 addi %r4,%r4,1 27 addi r4,r4,1
32 addi %r4,%r4,1 28 addi r4,r4,1
33 addi %r4,%r4,1 29 addi r4,r4,1
34 addi %r4,%r4,1 30 addi r4,r4,1
35 addi %r4,%r4,1 31 addi r4,r4,1
36 addi %r4,%r4,1 32 addi r4,r4,1
37 addi %r4,%r4,1 33 addi r4,r4,1
38 addi %r4,%r4,1 34 addi r4,r4,1
39 addi %r4,%r4,1 35 addi r4,r4,1
40 addi %r4,%r4,1 36 addi r4,r4,1
41 addi %r4,%r4,1 37 addi r4,r4,1
42 addi %r4,%r4,1 38 addi r4,r4,1
43 addi %r4,%r4,1 39 addi r4,r4,1
44 addi %r4,%r4,1 # 28 addi's 40 addi r4,r4,1 # 28 addi's
45 subi %r3,%r3,1 41 subi r3,r3,1
46 b .thirty_two_instruction_loop 42 b FUNC_NAME(thirty_two_instruction_loop)
43FUNC_END(thirty_two_instruction_loop)