[mips] Add missing MIPS-III disassembler tests. · llvm/llvm-project@ff338fa (original) (raw)

1

1

`# RUN: llvm-mc %s -triple=mips64-unknown-linux -disassemble -mcpu=mips3 | FileCheck %s

`

2

2

`# CHECK: .text

`

3

3

`0x00 0x00 0x00 0x00 # CHECK: nop

`

``

4

`+

0x00 0x00 0x00 0x09 # CHECK: jr $zero

`

``

5

`+

0x00 0x00 0x00 0x0c # CHECK: syscall

`

``

6

`+

0x00 0x00 0x00 0x0d # CHECK: break

`

``

7

`+

0x00 0x00 0x00 0x20 # CHECK: add zero,zero, zero,zero, $zero

`

4

8

`0x00 0x00 0x00 0x40 # CHECK: ssnop

`

``

9

`+

0x00 0x00 0x00 0x80 # CHECK: sll zero,zero, zero,zero, 2

`

5

10

`0x00 0x00 0x00 0xc0 # CHECK: ehb

`

6

11

`0x00 0x00 0x04 0xb8 # CHECK: dsll zero,zero, zero,zero, 18

`

7

12

`0x00 0x00 0x04 0xbc # CHECK: dsll32 zero,zero, zero,zero, 18

`

8

13

`0x00 0x00 0x04 0xbc # CHECK: dsll32 zero,zero, zero,zero, 18

`

``

14

`+

0x00 0x00 0x28 0x09 # CHECK: jalr 5,5, 5,zero

`

9

15

`0x00 0x00 0x3c 0x80 # CHECK: sll 7,7, 7,zero, 18

`

``

16

`+

0x00 0x00 0x72 0x0d # CHECK: break 0, 456

`

10

17

`0x00 0x00 0x88 0x12 # CHECK: mflo $17

`

11

18

`0x00 0x00 0x98 0x10 # CHECK: mfhi $19

`

12

19

`0x00 0x00 0xe8 0x10 # CHECK: mfhi $sp

`

`@@ -21,6 +28,8 @@

`

21

28

`0x00 0x06 0x9d 0xfe # CHECK: dsrl32 19,19, 19,6, 23

`

22

29

`0x00 0x07 0x38 0x27 # CHECK: nor 7,7, 7,zero, $7

`

23

30

`0x00 0x07 0x3c 0x80 # CHECK: sll 7,7, 7,7, 18

`

``

31

`+

0x00 0x08 0xe8 0x22 # CHECK: neg sp,sp, sp,8

`

``

32

`+

0x00 0x10 0x00 0x80 # CHECK: sll zero,zero, zero,16, 2

`

24

33

`0x00 0x11 0x8b 0xc3 # CHECK: sra 17,17, 17,17, 15

`

25

34

`0x00 0x12 0xe2 0xbb # CHECK: dsra gp,gp, gp,18, 10

`

26

35

`0x00 0x12 0xe2 0xbf # CHECK: dsra32 gp,gp, gp,18, 10

`

`@@ -30,6 +39,7 @@

`

30

39

`0x00 0x17 0x8b 0xc3 # CHECK: sra 17,17, 17,23, 15

`

31

40

`0x00 0x1c 0xe2 0xbb # CHECK: dsra gp,gp, gp,gp, 10

`

32

41

`0x00 0x1c 0xe2 0xbf # CHECK: dsra32 gp,gp, gp,gp, 10

`

``

42

`+

0x00 0x3a 0x3a 0xcc # CHECK: syscall 59627

`

33

43

`0x00 0x3f 0x98 0x2c # CHECK: dadd 19,19, 19,1, $ra

`

34

44

`0x00 0x3f 0x98 0x2d # CHECK: daddu 19,19, 19,1, $ra

`

35

45

`0x00 0x4c 0xb8 0x24 # CHECK: and 23,23, 23,2, $12

`

`@@ -47,6 +57,7 @@

`

47

57

`0x00 0xba 0x28 0x2f # CHECK: dsubu 5,5, 5,5, $26

`

48

58

`0x00 0xc0 0xc8 0x21 # CHECK: move 25,25, 25,6

`

49

59

`0x00 0xc0 0xc8 0x25 # CHECK: move 25,25, 25,6

`

``

60

`+

0x00 0xc0 0xc8 0x27 # CHECK: not 25,25, 25,6

`

50

61

`0x00 0xc0 0xc8 0x2d # CHECK: move 25,25, 25,6

`

51

62

`0x00 0xd1 0x00 0x36 # CHECK: tne 6,6, 6,17

`

52

63

`0x00 0xe8 0xdd 0x76 # CHECK: tne 7,7, 7,8, 885

`

`@@ -63,6 +74,7 @@

`

63

74

`0x02 0x1d 0x60 0x25 # CHECK: or 12,12, 12,16, $sp

`

64

75

`0x02 0x1d 0xfe 0x33 # CHECK: tltu 16,16, 16,sp, 1016

`

65

76

`0x02 0x20 0x00 0x11 # CHECK: mthi $17

`

``

77

`+

0x02 0x27 0x00 0x0d # CHECK: break 551

`

66

78

`0x02 0x45 0xb8 0x20 # CHECK: add 23,23, 23,18, $5

`

67

79

`0x02 0x6c 0xb0 0x22 # CHECK: sub 22,22, 22,19, $12

`

68

80

`0x02 0x72 0xe0 0x17 # CHECK: dsrav gp,gp, gp,18, $19

`

`@@ -85,9 +97,11 @@

`

85

97

`0x03 0xb4 0x00 0x18 # CHECK: mult sp,sp, sp,20

`

86

98

`0x03 0xb7 0x88 0x07 # CHECK: srav 17,17, 17,23, $sp

`

87

99

`0x03 0xb7 0x88 0x07 # CHECK: srav 17,17, 17,23, $sp

`

``

100

`+

0x03 0xcd 0x23 0xcd # CHECK: break 973, 143

`

88

101

`0x04 0x11 0x14 0x9b # CHECK: bal 21104

`

89

102

`0x04 0x83 0xf9 0x4d # CHECK: bgezl $4, -6856

`

90

103

`0x04 0xd0 0x14 0x9b # CHECK: bltzal $6, 21104

`

``

104

`+

0x04 0xd1 0x14 0x9b # CHECK: bgezal $6, 21104

`

91

105

`0x04 0xd2 0x00 0x7a # CHECK: bltzall $6, 492

`

92

106

`0x05 0x8e 0x8c 0x31 # CHECK: tnei $12, 35889

`

93

107

`0x05 0x93 0x07 0x1f # CHECK: bgezall $12, 7296

`

`@@ -97,6 +111,9 @@

`

97

111

`0x06 0xac 0xbb 0xa0 # CHECK: teqi $21, 48032

`

98

112

`0x07 0xa9 0x90 0x33 # CHECK: tgeiu $sp, 36915

`

99

113

`0x07 0xeb 0xec 0x2c # CHECK: tltiu $ra, 60460

`

``

114

`+

0x08 0x00 0x00 0x01 # CHECK: j 4

`

``

115

`+

0x09 0x33 0x00 0x2a # CHECK: j 80478376

`

``

116

`+

0x0b 0x2a 0xd1 0x44 # CHECK: j 212550928

`

100

117

`0x21 0x08 0xff 0xfe # CHECK: addi 8,8, 8,8, -2

`

101

118

`0x21 0x2d 0x66 0xd2 # CHECK: addi 13,13, 13,9, 26322

`

102

119

`0x21 0xad 0xe6 0x90 # CHECK: addi 13,13, 13,13, -6512

`

`@@ -110,7 +127,10 @@

`

110

127

`0x2f 0x38 0xc3 0x55 # CHECK: sltiu 24,24, 24,25, -15531

`

111

128

`0x2f 0x39 0xc3 0x55 # CHECK: sltiu 25,25, 25,25, -15531

`

112

129

`0x30 0x42 0x00 0x04 # CHECK: andi 2,2, 2,2, 4

`

``

130

`+

0x34 0x42 0x00 0x00 # CHECK: ori 2,2, 2,2, 0

`

113

131

`0x34 0x42 0x00 0x04 # CHECK: ori 2,2, 2,2, 4

`

``

132

`+

0x3a 0x00 0x27 0x12 # CHECK: xori zero,zero, zero,16, 10002

`

``

133

`+

0x3c 0x00 0x00 0x80 # CHECK: lui $zero, 128

`

114

134

`0x42 0x00 0x00 0x01 # CHECK: tlbr

`

115

135

`0x42 0x00 0x00 0x02 # CHECK: tlbwi

`

116

136

`0x42 0x00 0x00 0x06 # CHECK: tlbwr

`

199

219

`0xb5 0x8b 0xb0 0x39 # CHECK: sdr 11,−20423(11, -20423(11,20423(12)

`

200

220

`0xb9 0xd1 0x98 0x22 # CHECK: swr 17,−26590(17, -26590(17,26590(14)

`

201

221

`0xbc 0xa1 0x00 0x08 # CHECK: cache 1, 8($5)

`

``

222

`+

0xbf 0x00 0xe2 0x1c # CHECK: cache 0, -7652($24)

`

202

223

`0xc2 0x42 0xe3 0x67 # CHECK: ll 2,−7321(2, -7321(2,7321(18)

`

203

224

`0xc7 0x50 0x27 0xf1 # CHECK: lwc1 f16,10225(f16, 10225(f16,10225(26)

`

204

225

`0xc8 0xd2 0xfc 0xb7 # CHECK: lwc2 18,−841(18, -841(18,841(6)

`