diff options
Diffstat (limited to 'tools/testing/selftests/powerpc/pmu/loop.S')
-rw-r--r-- | tools/testing/selftests/powerpc/pmu/loop.S | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tools/testing/selftests/powerpc/pmu/loop.S b/tools/testing/selftests/powerpc/pmu/loop.S new file mode 100644 index 000000000000..8820e3df1444 --- /dev/null +++ b/tools/testing/selftests/powerpc/pmu/loop.S | |||
@@ -0,0 +1,46 @@ | |||
1 | /* | ||
2 | * Copyright 2013, Michael Ellerman, IBM Corp. | ||
3 | * Licensed under GPLv2. | ||
4 | */ | ||
5 | |||
6 | .text | ||
7 | |||
8 | .global thirty_two_instruction_loop | ||
9 | .type .thirty_two_instruction_loop,@function | ||
10 | .section ".opd","aw",@progbits | ||
11 | thirty_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 | ||
17 | addi %r4,%r3,1 | ||
18 | addi %r4,%r4,1 | ||
19 | addi %r4,%r4,1 | ||
20 | addi %r4,%r4,1 | ||
21 | addi %r4,%r4,1 | ||
22 | addi %r4,%r4,1 | ||
23 | addi %r4,%r4,1 | ||
24 | addi %r4,%r4,1 | ||
25 | addi %r4,%r4,1 | ||
26 | addi %r4,%r4,1 | ||
27 | addi %r4,%r4,1 | ||
28 | addi %r4,%r4,1 | ||
29 | addi %r4,%r4,1 | ||
30 | addi %r4,%r4,1 | ||
31 | addi %r4,%r4,1 | ||
32 | addi %r4,%r4,1 | ||
33 | addi %r4,%r4,1 | ||
34 | addi %r4,%r4,1 | ||
35 | addi %r4,%r4,1 | ||
36 | addi %r4,%r4,1 | ||
37 | addi %r4,%r4,1 | ||
38 | addi %r4,%r4,1 | ||
39 | addi %r4,%r4,1 | ||
40 | addi %r4,%r4,1 | ||
41 | addi %r4,%r4,1 | ||
42 | addi %r4,%r4,1 | ||
43 | addi %r4,%r4,1 | ||
44 | addi %r4,%r4,1 # 28 addi's | ||
45 | subi %r3,%r3,1 | ||
46 | b .thirty_two_instruction_loop | ||