1 # RUN: llvm-mc --triple hexagon -disassemble < %s | FileCheck %s
2 # Hexagon Programmer's Reference Manual 11.2 CR
4 # Corner detection acceleration
6 # CHECK: p3 = !fastcorner9(p2, p1)
8 # CHECK: p1 = fastcorner9(p2, p3)
10 # Logical reductions on predicates
12 # CHECK: p1 = any8(p2)
14 # CHECK: p1 = all8(p2)
16 # Looping instructions
28 # CHECK: r17 = add(pc, #21)
30 # Pipelined loop instructions
32 # CHECK: p3 = sp1loop0
34 # CHECK: p3 = sp2loop0
36 # CHECK: p3 = sp3loop0
38 # CHECK: p3 = sp1loop0
40 # CHECK: p3 = sp2loop0
42 # CHECK: p3 = sp3loop0
44 # Logical operations on predicates
46 # CHECK: p1 = and(p3, p2)
48 # CHECK: p1 = and(p2, and(p3, p3))
50 # CHECK: p1 = or(p3, p2)
52 # CHECK: p1 = and(p2, or(p3, p3))
54 # CHECK: p1 = xor(p2, p3)
56 # CHECK: p1 = or(p2, and(p3, p3))
58 # CHECK: p1 = and(p2, !p3)
60 # CHECK: p1 = or(p2, or(p3, p3))
62 # CHECK: p1 = and(p2, and(p3, !p3))
64 # CHECK: p1 = and(p2, or(p3, !p3))
68 # CHECK: p1 = or(p2, and(p3, !p3))
70 # CHECK: p1 = or(p2, !p3)
72 # CHECK: p1 = or(p2, or(p3, !p3))
74 # User control register transfer