root / tests / test-arm-iwmmxt.s @ 9c9efb6b
History | View | Annotate | Download (779 Bytes)
1 |
@ Checks whether iwMMXt is functional. |
---|---|
2 |
.code 32 |
3 |
.globl main |
4 |
|
5 |
main: |
6 |
ldr r0, =data0 |
7 |
ldr r1, =data1 |
8 |
ldr r2, =data2 |
9 |
#ifndef FPA |
10 |
wldrd wr0, [r0, #0] |
11 |
wldrd wr1, [r0, #8] |
12 |
wldrd wr2, [r1, #0] |
13 |
wldrd wr3, [r1, #8] |
14 |
wsubb wr2, wr2, wr0 |
15 |
wsubb wr3, wr3, wr1 |
16 |
wldrd wr0, [r2, #0] |
17 |
wldrd wr1, [r2, #8] |
18 |
waddb wr0, wr0, wr2 |
19 |
waddb wr1, wr1, wr3 |
20 |
wstrd wr0, [r2, #0] |
21 |
wstrd wr1, [r2, #8] |
22 |
#else |
23 |
ldfe f0, [r0, #0] |
24 |
ldfe f1, [r0, #8] |
25 |
ldfe f2, [r1, #0] |
26 |
ldfe f3, [r1, #8] |
27 |
adfdp f2, f2, f0 |
28 |
adfdp f3, f3, f1 |
29 |
ldfe f0, [r2, #0] |
30 |
ldfe f1, [r2, #8] |
31 |
adfd f0, f0, f2 |
32 |
adfd f1, f1, f3 |
33 |
stfe f0, [r2, #0] |
34 |
stfe f1, [r2, #8] |
35 |
#endif |
36 |
mov r0, #1 |
37 |
mov r1, r2 |
38 |
mov r2, #0x11 |
39 |
swi #0x900004 |
40 |
mov r0, #0 |
41 |
swi #0x900001 |
42 |
|
43 |
.data |
44 |
data0: |
45 |
.string "aaaabbbbccccdddd" |
46 |
data1: |
47 |
.string "bbbbccccddddeeee" |
48 |
data2: |
49 |
.string "hvLLWs\x1fsdrs9\x1fNJ-\n" |