OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gdb-6.8/] [sim/] [testsuite/] [sim/] [arm/] [iwmmxt/] [wavg2.cgs] - Blame information for rev 840

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 24 jeremybenn
# Intel(r) Wireless MMX(tm) technology testcase for WAVG2
2
# mach: xscale
3
# as: -mcpu=xscale+iwmmxt
4
 
5
        .include "testutils.inc"
6
 
7
        start
8
 
9
        .global wavg2
10
wavg2:
11
        # Enable access to CoProcessors 0 & 1 before
12
        # we attempt these instructions.
13
 
14
        mvi_h_gr   r1, 3
15
        mcr        p15, 0, r1, cr15, cr1, 0
16
 
17
        # Test Byte Wide Averaging
18
 
19
        mvi_h_gr   r0, 0x12345678
20
        mvi_h_gr   r1, 0x9abcdef0
21
        mvi_h_gr   r2, 0x11111111
22
        mvi_h_gr   r3, 0x22222222
23
        mvi_h_gr   r4, 0
24
        mvi_h_gr   r5, 0
25
 
26
        tmcrr      wr0, r0, r1
27
        tmcrr      wr1, r2, r3
28
        tmcrr      wr2, r4, r5
29
 
30
        wavg2b     wr2, wr0, wr1
31
 
32
        tmrrc      r0, r1, wr0
33
        tmrrc      r2, r3, wr1
34
        tmrrc      r4, r5, wr2
35
 
36
        test_h_gr  r0, 0x12345678
37
        test_h_gr  r1, 0x9abcdef0
38
        test_h_gr  r2, 0x11111111
39
        test_h_gr  r3, 0x22222222
40
        test_h_gr  r4, 0x11223344
41
        test_h_gr  r5, 0x5e6f8089
42
 
43
        # Test Byte Wide Averaging with Rounding
44
 
45
        mvi_h_gr   r0, 0x12345678
46
        mvi_h_gr   r1, 0x9abcdef0
47
        mvi_h_gr   r2, 0x11111111
48
        mvi_h_gr   r3, 0x22222222
49
        mvi_h_gr   r4, 0
50
        mvi_h_gr   r5, 0
51
 
52
        tmcrr      wr0, r0, r1
53
        tmcrr      wr1, r2, r3
54
        tmcrr      wr2, r4, r5
55
 
56
        wavg2br    wr2, wr0, wr1
57
 
58
        tmrrc      r0, r1, wr0
59
        tmrrc      r2, r3, wr1
60
        tmrrc      r4, r5, wr2
61
 
62
        test_h_gr  r0, 0x12345678
63
        test_h_gr  r1, 0x9abcdef0
64
        test_h_gr  r2, 0x11111111
65
        test_h_gr  r3, 0x22222222
66
        test_h_gr  r4, 0x12233445
67
        test_h_gr  r5, 0x5e6f8089
68
 
69
        # Test Half Word Wide Averaging
70
 
71
        mvi_h_gr   r0, 0x12345678
72
        mvi_h_gr   r1, 0x9abcdef0
73
        mvi_h_gr   r2, 0x11111111
74
        mvi_h_gr   r3, 0x22222222
75
        mvi_h_gr   r4, 0
76
        mvi_h_gr   r5, 0
77
 
78
        tmcrr      wr0, r0, r1
79
        tmcrr      wr1, r2, r3
80
        tmcrr      wr2, r4, r5
81
 
82
        wavg2h     wr2, wr0, wr1
83
 
84
        tmrrc      r0, r1, wr0
85
        tmrrc      r2, r3, wr1
86
        tmrrc      r4, r5, wr2
87
 
88
        test_h_gr  r0, 0x12345678
89
        test_h_gr  r1, 0x9abcdef0
90
        test_h_gr  r2, 0x11111111
91
        test_h_gr  r3, 0x22222222
92
        test_h_gr  r4, 0x11a233c4
93
        test_h_gr  r5, 0x5e6f8089
94
 
95
        # Test Half Word Wide Averaging with Rounding
96
 
97
        mvi_h_gr   r0, 0x12345678
98
        mvi_h_gr   r1, 0x9abcdef0
99
        mvi_h_gr   r2, 0x11111111
100
        mvi_h_gr   r3, 0x22222222
101
        mvi_h_gr   r4, 0
102
        mvi_h_gr   r5, 0
103
 
104
        tmcrr      wr0, r0, r1
105
        tmcrr      wr1, r2, r3
106
        tmcrr      wr2, r4, r5
107
 
108
        wavg2hr    wr2, wr0, wr1
109
 
110
        tmrrc      r0, r1, wr0
111
        tmrrc      r2, r3, wr1
112
        tmrrc      r4, r5, wr2
113
 
114
        test_h_gr  r0, 0x12345678
115
        test_h_gr  r1, 0x9abcdef0
116
        test_h_gr  r2, 0x11111111
117
        test_h_gr  r3, 0x22222222
118
        test_h_gr  r4, 0x11a333c5
119
        test_h_gr  r5, 0x5e6f8089
120
 
121
        pass

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.