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