1 # RUN: llvm-mc --triple hexagon -disassemble < %s | FileCheck %s
4 # CHECK: r17 =+ mpyi(r21, #31)
6 # CHECK: r17 =- mpyi(r21, #31)
8 # CHECK: r17 += mpyi(r21, #31)
10 # CHECK: r17 -= mpyi(r21, #31)
12 # CHECK: r17 = mpyi(r21, r31)
14 # CHECK: r17 += mpyi(r21, r31)
16 # CHECK: r17:16 += mpy(r21.l, r31.l):<<1
18 # CHECK: r17:16 += mpy(r21.l, r31.h):<<1
20 # CHECK: r17:16 += mpy(r21.h, r31.l):<<1
22 # CHECK: r17:16 += mpy(r21.h, r31.h):<<1
24 # CHECK: r17:16 -= mpy(r21.l, r31.l):<<1
26 # CHECK: r17:16 -= mpy(r21.l, r31.h):<<1
28 # CHECK: r17:16 -= mpy(r21.h, r31.l):<<1
30 # CHECK: r17:16 -= mpy(r21.h, r31.h):<<1
32 # CHECK: r17 = mpy(r21.l, r31.l):<<1
34 # CHECK: r17 = mpy(r21.l, r31.h):<<1
36 # CHECK: r17 = mpy(r21.h, r31.l):<<1
38 # CHECK: r17 = mpy(r21.h, r31.h):<<1
40 # CHECK: r17 = mpy(r21.l, r31.l):<<1:sat
42 # CHECK: r17 = mpy(r21.l, r31.h):<<1:sat
44 # CHECK: r17 = mpy(r21.h, r31.l):<<1:sat
46 # CHECK: r17 = mpy(r21.h, r31.h):<<1:sat
48 # CHECK: r17 = mpy(r21.l, r31.l):<<1:rnd
50 # CHECK: r17 = mpy(r21.l, r31.h):<<1:rnd
52 # CHECK: r17 = mpy(r21.h, r31.l):<<1:rnd
54 # CHECK: r17 = mpy(r21.h, r31.h):<<1:rnd
56 # CHECK: r17 = mpy(r21.l, r31.l):<<1:rnd:sat
58 # CHECK: r17 = mpy(r21.l, r31.h):<<1:rnd:sat
60 # CHECK: r17 = mpy(r21.h, r31.l):<<1:rnd:sat
62 # CHECK: r17 = mpy(r21.h, r31.h):<<1:rnd:sat
64 # CHECK: r17 += mpy(r21.l, r31.l):<<1
66 # CHECK: r17 += mpy(r21.l, r31.h):<<1
68 # CHECK: r17 += mpy(r21.h, r31.l):<<1
70 # CHECK: r17 += mpy(r21.h, r31.h):<<1
72 # CHECK: r17 += mpy(r21.l, r31.l):<<1:sat
74 # CHECK: r17 += mpy(r21.l, r31.h):<<1:sat
76 # CHECK: r17 += mpy(r21.h, r31.l):<<1:sat
78 # CHECK: r17 += mpy(r21.h, r31.h):<<1:sat
80 # CHECK: r17 -= mpy(r21.l, r31.l):<<1
82 # CHECK: r17 -= mpy(r21.l, r31.h):<<1
84 # CHECK: r17 -= mpy(r21.h, r31.l):<<1
86 # CHECK: r17 -= mpy(r21.h, r31.h):<<1
88 # CHECK: r17 -= mpy(r21.l, r31.l):<<1:sat
90 # CHECK: r17 -= mpy(r21.l, r31.h):<<1:sat
92 # CHECK: r17 -= mpy(r21.h, r31.l):<<1:sat
94 # CHECK: r17 -= mpy(r21.h, r31.h):<<1:sat
96 # CHECK: r17:16 += mpyu(r21.l, r31.l):<<1
98 # CHECK: r17:16 += mpyu(r21.l, r31.h):<<1
100 # CHECK: r17:16 += mpyu(r21.h, r31.l):<<1
102 # CHECK: r17:16 += mpyu(r21.h, r31.h):<<1
104 # CHECK: r17:16 -= mpyu(r21.l, r31.l):<<1
106 # CHECK: r17:16 -= mpyu(r21.l, r31.h):<<1
108 # CHECK: r17:16 -= mpyu(r21.h, r31.l):<<1
110 # CHECK: r17:16 -= mpyu(r21.h, r31.h):<<1
112 # CHECK: r17 = mpyu(r21.l, r31.l):<<1
114 # CHECK: r17 = mpyu(r21.l, r31.h):<<1
116 # CHECK: r17 = mpyu(r21.h, r31.l):<<1
118 # CHECK: r17 = mpyu(r21.h, r31.h):<<1
120 # CHECK: r17 += mpyu(r21.l, r31.l):<<1
122 # CHECK: r17 += mpyu(r21.l, r31.h):<<1
124 # CHECK: r17 += mpyu(r21.h, r31.l):<<1
126 # CHECK: r17 += mpyu(r21.h, r31.h):<<1
128 # CHECK: r17 -= mpyu(r21.l, r31.l):<<1
130 # CHECK: r17 -= mpyu(r21.l, r31.h):<<1
132 # CHECK: r17 -= mpyu(r21.h, r31.l):<<1
134 # CHECK: r17 -= mpyu(r21.h, r31.h):<<1
136 # CHECK: r17 = mpy(r21, r31)
138 # CHECK: r17 = mpy(r21, r31):rnd
140 # CHECK: r17 = mpyu(r21, r31)
142 # CHECK: r17 = mpysu(r21, r31)
144 # CHECK: r17 = mpy(r21, r31.h):<<1:sat
146 # CHECK: r17 = mpy(r21, r31.l):<<1:sat
148 # CHECK: r17 = mpy(r21, r31):<<1:sat
150 # CHECK: r17 = mpy(r21, r31.h):<<1:rnd:sat
152 # CHECK: r17 = mpy(r21, r31.l):<<1:rnd:sat