[Hexagon] Enabling ASM parsing on Hexagon backend and adding instruction parsing...
[oota-llvm.git] / test / MC / Hexagon / instructions / memop.s
1 # RUN: llvm-mc -triple=hexagon -filetype=obj -o - %s | llvm-objdump -d - | FileCheck %s
2 # Hexagon Programmer's Reference Manual 11.6 MEMOP
3
4 # Operation on memory byte
5 # CHECK: 95 d9 11 3e
6 memb(r17+#51) += r21
7 # CHECK: b5 d9 11 3e
8 memb(r17+#51) -= r21
9 # CHECK: d5 d9 11 3e
10 memb(r17+#51) &= r21
11 # CHECK: f5 d9 11 3e
12 memb(r17+#51) |= r21
13 # CHECK: 95 d9 11 3f
14 memb(r17+#51) += #21
15 # CHECK: b5 d9 11 3f
16 memb(r17+#51) -= #21
17 # CHECK: d5 d9 11 3f
18 memb(r17+#51) = clrbit(#21)
19 # CHECK: f5 d9 11 3f
20 memb(r17+#51) = setbit(#21)
21
22 # Operation on memory halfword
23 # CHECK: 95 d9 31 3e
24 memh(r17+#102) += r21
25 # CHECK: b5 d9 31 3e
26 memh(r17+#102) -= r21
27 # CHECK: d5 d9 31 3e
28 memh(r17+#102) &= r21
29 # CHECK: f5 d9 31 3e
30 memh(r17+#102) |= r21
31 # CHECK: 95 d9 31 3f
32 memh(r17+#102) += #21
33 # CHECK: b5 d9 31 3f
34 memh(r17+#102) -= #21
35 # CHECK: d5 d9 31 3f
36 memh(r17+#102) = clrbit(#21)
37 # CHECK: f5 d9 31 3f
38 memh(r17+#102) = setbit(#21)
39
40 # Operation on memory word
41 # CHECK: 95 d9 51 3e
42 memw(r17+#204) += r21
43 # CHECK: b5 d9 51 3e
44 memw(r17+#204) -= r21
45 # CHECK: d5 d9 51 3e
46 memw(r17+#204) &= r21
47 # CHECK: f5 d9 51 3e
48 memw(r17+#204) |= r21
49 # CHECK: 95 d9 51 3f
50 memw(r17+#204) += #21
51 # CHECK: b5 d9 51 3f
52 memw(r17+#204) -= #21
53 # CHECK: d5 d9 51 3f
54 memw(r17+#204) = clrbit(#21)
55 # CHECK: f5 d9 51 3f
56 memw(r17+#204) = setbit(#21)