aboutsummaryrefslogtreecommitdiff
path: root/tests/tcg/hexagon/test_bitcnt.S
blob: 624460488e869f7ef43d37dab65af34206eaa5a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
 * Purpose: test example, verify the soundness of the cl[01] operations.
 *
 * The number 0x000001aa has 23 leading zeroes
 * they become 55 when considered as 64 bit register
 * and it has 1 trailing zero.
 */
    .text
    .globl _start

_start:
    {
        r0 = #426
        r1 = #0
    }
    {
        r2 = cl0(r0)
    }
    {
        p0 = cmp.eq(r2, #23); if (p0.new) jump:t test2
        jump fail
    }

test2:
    {
        r2 = cl0(r1:0)
    }
    {
        p0 = cmp.eq(r2, #55); if (p0.new) jump:t test3
        jump fail
    }

test3:
    {
        r2 = ct0(r0)
    }
    {
        p0 = cmp.eq(r2, #1); if (p0.new) jump:t pass
        jump fail
    }