reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    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
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66
   67
   68
   69
   70
   71
   72
   73
   74
   75
   76
   77
   78
# RUN: llvm-mc --triple hexagon -disassemble < %s | FileCheck %s
# Hexagon Programmer's Reference Manual 11.2 CR

# Corner detection acceleration
0x93 0xe1 0x12 0x6b
# CHECK: p3 = !fastcorner9(p2,p1)
0x91 0xe3 0x02 0x6b
# CHECK: p1 = fastcorner9(p2,p3)

# Logical reductions on predicates
0x01 0xc0 0x82 0x6b
# CHECK: p1 = any8(p2)
0x01 0xc0 0xa2 0x6b
# CHECK: p1 = all8(p2)

# Looping instructions
0x08 0xc4 0x15 0x60
# CHECK: loop0
0x08 0xc4 0x35 0x60
# CHECK: loop1
0x68 0xc4 0x00 0x69
# CHECK: loop0
0x68 0xc4 0x20 0x69
# CHECK: loop1

# Add to PC
0x91 0xca 0x49 0x6a
# CHECK: r17 = add(pc,#21)

# Pipelined loop instructions
0x08 0xc4 0xb5 0x60
# CHECK: p3 = sp1loop0
0x08 0xc4 0xd5 0x60
# CHECK: p3 = sp2loop0
0x08 0xc4 0xf5 0x60
# CHECK: p3 = sp3loop0
0xa9 0xc4 0xa0 0x69
# CHECK: p3 = sp1loop0
0xa9 0xc4 0xc0 0x69
# CHECK: p3 = sp2loop0
0xa9 0xc4 0xe0 0x69
# CHECK: p3 = sp3loop0

# Logical operations on predicates
0x01 0xc3 0x02 0x6b
# CHECK: p1 = and(p3,p2)
0xc1 0xc3 0x12 0x6b
# CHECK: p1 = and(p2,and(p3,p3))
0x01 0xc3 0x22 0x6b
# CHECK: p1 = or(p3,p2)
0xc1 0xc3 0x32 0x6b
# CHECK: p1 = and(p2,or(p3,p3))
0x01 0xc3 0x42 0x6b
# CHECK: p1 = xor(p2,p3)
0xc1 0xc3 0x52 0x6b
# CHECK: p1 = or(p2,and(p3,p3))
0x01 0xc2 0x63 0x6b
# CHECK: p1 = and(p2,!p3)
0xc1 0xc3 0x72 0x6b
# CHECK: p1 = or(p2,or(p3,p3))
0xc1 0xc3 0x92 0x6b
# CHECK: p1 = and(p2,and(p3,!p3))
0xc1 0xc3 0xb2 0x6b
# CHECK: p1 = and(p2,or(p3,!p3))
0x01 0xc0 0xc2 0x6b
# CHECK: p1 = not(p2)
0xc1 0xc3 0xd2 0x6b
# CHECK: p1 = or(p2,and(p3,!p3))
0x01 0xc2 0xe3 0x6b
# CHECK: p1 = or(p2,!p3)
0xc1 0xc3 0xf2 0x6b
# CHECK: p1 = or(p2,or(p3,!p3))

# User control register transfer
0x0d 0xc0 0x35 0x62
# CHECK: cs1 = r21
0x11 0xc0 0x0d 0x6a
# CHECK: r17 = cs1