summaryrefslogtreecommitdiff
path: root/test/MC/MBlaze/mblaze_memory.s
blob: fe744753ee4d956f14033f9796338a73105fd2ac (plain)
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s

# Test to make sure that all of the TYPE-A instructions supported by
# the Microblaze can be parsed by the assembly parser.

# TYPE A:   OPCODE RD    RA    RB    FLAGS
# BINARY:   000000 00000 00000 00000 00000000000

# CHECK:    lbu
# BINARY:   110000 00001 00010 00011 00000000000
# CHECK:    encoding: [0xc0,0x22,0x18,0x00]
            lbu     r1, r2, r3

# CHECK:    lbur
# BINARY:   110000 00001 00010 00011 01000000000
# CHECK:    encoding: [0xc0,0x22,0x1a,0x00]
            lbur    r1, r2, r3

# CHECK:    lbui
# BINARY:   111000 00001 00010 0000000000011100
# CHECK:    encoding: [0xe0,0x22,0x00,0x1c]
            lbui    r1, r2, 28

# CHECK:    lhu
# BINARY:   110001 00001 00010 00011 00000000000
# CHECK:    encoding: [0xc4,0x22,0x18,0x00]
            lhu     r1, r2, r3

# CHECK:    lhur
# BINARY:   110001 00001 00010 00011 01000000000
# CHECK:    encoding: [0xc4,0x22,0x1a,0x00]
            lhur    r1, r2, r3

# CHECK:    lhui
# BINARY:   111001 00001 00010 0000000000011100
# CHECK:    encoding: [0xe4,0x22,0x00,0x1c]
            lhui    r1, r2, 28

# CHECK:    lw
# BINARY:   110010 00001 00010 00011 00000000000
# CHECK:    encoding: [0xc8,0x22,0x18,0x00]
            lw      r1, r2, r3

# CHECK:    lwr
# BINARY:   110010 00001 00010 00011 01000000000
# CHECK:    encoding: [0xc8,0x22,0x1a,0x00]
            lwr    r1, r2, r3

# CHECK:    lwi
# BINARY:   111010 00001 00010 0000000000011100
# CHECK:    encoding: [0xe8,0x22,0x00,0x1c]
            lwi     r1, r2, 28

# CHECK:    lwx
# BINARY:   110010 00001 00010 00011 10000000000
# CHECK:    encoding: [0xc8,0x22,0x1c,0x00]
            lwx      r1, r2, r3

# CHECK:    sb
# BINARY:   110100 00001 00010 00011 00000000000
# CHECK:    encoding: [0xd0,0x22,0x18,0x00]
            sb      r1, r2, r3

# CHECK:    sbr
# BINARY:   110100 00001 00010 00011 01000000000
# CHECK:    encoding: [0xd0,0x22,0x1a,0x00]
            sbr     r1, r2, r3

# CHECK:    sbi
# BINARY:   111100 00001 00010 0000000000011100
# CHECK:    encoding: [0xf0,0x22,0x00,0x1c]
            sbi     r1, r2, 28

# CHECK:    sh
# BINARY:   110101 00001 00010 00011 00000000000
# CHECK:    encoding: [0xd4,0x22,0x18,0x00]
            sh      r1, r2, r3

# CHECK:    shr
# BINARY:   110101 00001 00010 00011 01000000000
# CHECK:    encoding: [0xd4,0x22,0x1a,0x00]
            shr     r1, r2, r3

# CHECK:    shi
# BINARY:   111101 00001 00010 0000000000011100
# CHECK:    encoding: [0xf4,0x22,0x00,0x1c]
            shi     r1, r2, 28

# CHECK:    sw
# BINARY:   110110 00001 00010 00011 00000000000
# CHECK:    encoding: [0xd8,0x22,0x18,0x00]
            sw      r1, r2, r3

# CHECK:    swr
# BINARY:   110110 00001 00010 00011 01000000000
# CHECK:    encoding: [0xd8,0x22,0x1a,0x00]
            swr    r1, r2, r3

# CHECK:    swi
# BINARY:   111110 00001 00010 0000000000011100
# CHECK:    encoding: [0xf8,0x22,0x00,0x1c]
            swi     r1, r2, 28

# CHECK:    swx
# BINARY:   110110 00001 00010 00011 10000000000
# CHECK:    encoding: [0xd8,0x22,0x1c,0x00]
            swx      r1, r2, r3