Commited two test files which are forgotten during commit of patch for http://reviews...
[oota-llvm.git] / test / MC / Disassembler / Hexagon / xtype_perm.txt
1 # RUN: llvm-mc -triple=hexagon -disassemble < %s | FileCheck %s
2 # Hexagon Programmer's Reference Manual 11.10.6 XTYPE/PERM
3
4 # CABAC decode bin
5 0xd0 0xde 0xd4 0xc1
6 # CHECK: r17:16 = decbin(r21:20, r31:30)
7
8 # Saturate
9 0x11 0xc0 0xd4 0x88
10 # CHECK: r17 = sat(r21:20)
11 0x91 0xc0 0xd5 0x8c
12 # CHECK: r17 = sath(r21)
13 0xb1 0xc0 0xd5 0x8c
14 # CHECK: r17 = satuh(r21)
15 0xd1 0xc0 0xd5 0x8c
16 # CHECK: r17 = satub(r21)
17 0xf1 0xc0 0xd5 0x8c
18 # CHECK: r17 = satb(r21)
19
20 # Swizzle bytes
21 0xf1 0xc0 0x95 0x8c
22 # CHECK: r17 = swiz(r21)
23
24 # Vector align
25 0x70 0xd4 0x1e 0xc2
26 # CHECK: r17:16 = valignb(r21:20, r31:30, p3)
27 0x70 0xde 0x94 0xc2
28 # CHECK: r17:16 = vspliceb(r21:20, r31:30, p3)
29
30 # Vector round and pack
31 0x91 0xc0 0x94 0x88
32 # CHECK: r17 = vrndwh(r21:20)
33 0xd1 0xc0 0x94 0x88
34 # CHECK: r17 = vrndwh(r21:20):sat
35
36 # Vector saturate and pack
37 0x11 0xc0 0x14 0x88
38 # CHECK: r17 = vsathub(r21:20)
39 0x51 0xc0 0x14 0x88
40 # CHECK: r17 = vsatwh(r21:20)
41 0x91 0xc0 0x14 0x88
42 # CHECK: r17 = vsatwuh(r21:20)
43 0xd1 0xc0 0x14 0x88
44 # CHECK: r17 = vsathb(r21:20)
45 0x11 0xc0 0x95 0x8c
46 # CHECK: r17 = vsathb(r21)
47 0x51 0xc0 0x95 0x8c
48 # CHECK: r17 = vsathub(r21)
49
50 # Vector saturate without pack
51 0x90 0xc0 0x14 0x80
52 # CHECK: r17:16 = vsathub(r21:20)
53 0xb0 0xc0 0x14 0x80
54 # CHECK: r17:16 = vsatwuh(r21:20)
55 0xd0 0xc0 0x14 0x80
56 # CHECK: r17:16 = vsatwh(r21:20)
57 0xf0 0xc0 0x14 0x80
58 # CHECK: r17:16 = vsathb(r21:20)
59
60 # Vector shuffle
61 0x50 0xde 0x14 0xc1
62 # CHECK: r17:16 = shuffeb(r21:20, r31:30)
63 0x90 0xd4 0x1e 0xc1
64 # CHECK: r17:16 = shuffob(r21:20, r31:30)
65 0xd0 0xde 0x14 0xc1
66 # CHECK: r17:16 = shuffeh(r21:20, r31:30)
67 0x10 0xd4 0x9e 0xc1
68 # CHECK: r17:16 = shuffoh(r21:20, r31:30)
69
70 # Vector splat bytes
71 0xf1 0xc0 0x55 0x8c
72 # CHECK: r17 = vsplatb(r21)
73
74 # Vector splat halfwords
75 0x50 0xc0 0x55 0x84
76 # CHECK: r17:16 = vsplath(r21)
77
78 # Vector splice
79 0x70 0xde 0x94 0xc0
80 # CHECK: r17:16 = vspliceb(r21:20, r31:30, #3)
81 0x70 0xde 0x94 0xc2
82 # CHECK: r17:16 = vspliceb(r21:20, r31:30, p3)
83
84 # Vector sign extend
85 0x10 0xc0 0x15 0x84
86 # CHECK: r17:16 = vsxtbh(r21)
87 0x90 0xc0 0x15 0x84
88 # CHECK: r17:16 = vsxthw(r21)
89
90 # Vector truncate
91 0x11 0xc0 0x94 0x88
92 # CHECK: r17 = vtrunohb(r21:20)
93 0x51 0xc0 0x94 0x88
94 # CHECK: r17 = vtrunehb(r21:20)
95 0x50 0xde 0x94 0xc1
96 # CHECK: r17:16 = vtrunewh(r21:20, r31:30)
97 0x90 0xde 0x94 0xc1
98 # CHECK: r17:16 = vtrunowh(r21:20, r31:30)
99
100 # Vector zero extend
101 0x50 0xc0 0x15 0x84
102 # CHECK: r17:16 = vzxtbh(r21)
103 0xd0 0xc0 0x15 0x84
104 # CHECK: r17:16 = vzxthw(r21)