This patch implements ei and di instructions for mips. Test cases are added.
[oota-llvm.git] / test / MC / Mips / mips-control-instructions.s
1 # RUN: llvm-mc %s -triple=mips-unknown-unknown -show-encoding -mcpu=mips32r2 | \
2 # RUN: FileCheck -check-prefix=CHECK32  %s
3 # RUN: llvm-mc %s -triple=mips-unknown-unknown -show-encoding -mcpu=mips64r2 | \
4 # RUN: FileCheck -check-prefix=CHECK64  %s
5
6 # CHECK32:    break                      # encoding: [0x00,0x00,0x00,0x0d]
7 # CHECK32:    break   7, 0               # encoding: [0x00,0x07,0x00,0x0d]
8 # CHECK32:    break   7, 5               # encoding: [0x00,0x07,0x01,0x4d]
9 # CHECK32:    syscall                    # encoding: [0x00,0x00,0x00,0x0c]
10 # CHECK32:    syscall 13396              # encoding: [0x00,0x0d,0x15,0x0c]
11 # CHECK32:    eret                       # encoding: [0x42,0x00,0x00,0x18]
12 # CHECK32:    deret                      # encoding: [0x42,0x00,0x00,0x1f]
13 # CHECK32:    di                         # encoding: [0x41,0x60,0x60,0x00]
14 # CHECK32:    di                         # encoding: [0x41,0x60,0x60,0x00]
15 # CHECK32:    di      $10                # encoding: [0x41,0x6a,0x60,0x00]
16 # CHECK32:    ei                         # encoding: [0x41,0x60,0x60,0x20]
17 # CHECK32:    ei                         # encoding: [0x41,0x60,0x60,0x20]
18 # CHECK32:    ei      $10                # encoding: [0x41,0x6a,0x60,0x20]
19
20 # CHECK64:    break                      # encoding: [0x00,0x00,0x00,0x0d]
21 # CHECK64:    break   7, 0               # encoding: [0x00,0x07,0x00,0x0d]
22 # CHECK64:    break   7, 5               # encoding: [0x00,0x07,0x01,0x4d]
23 # CHECK64:    syscall                    # encoding: [0x00,0x00,0x00,0x0c]
24 # CHECK64:    syscall 13396              # encoding: [0x00,0x0d,0x15,0x0c]
25 # CHECK64:    eret                       # encoding: [0x42,0x00,0x00,0x18]
26 # CHECK64:    deret                      # encoding: [0x42,0x00,0x00,0x1f]
27 # CHECK64:    di                         # encoding: [0x41,0x60,0x60,0x00]
28 # CHECK64:    di                         # encoding: [0x41,0x60,0x60,0x00]
29 # CHECK64:    di      $10                # encoding: [0x41,0x6a,0x60,0x00]
30 # CHECK64:    ei                         # encoding: [0x41,0x60,0x60,0x20]
31 # CHECK64:    ei                         # encoding: [0x41,0x60,0x60,0x20]
32 # CHECK64:    ei      $10                # encoding: [0x41,0x6a,0x60,0x20]
33     break
34     break 7
35     break 7,5
36     syscall
37     syscall 0x3454
38     eret
39     deret
40     di
41     di  $0
42     di  $10
43
44     ei
45     ei  $0
46     ei  $10