~ubuntu-branches/ubuntu/trusty/llvm-toolchain-snapshot/trusty-201310232150

« back to all changes in this revision

Viewing changes to test/MC/Mips/mips-jump-instructions.s

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-27 15:01:57 UTC
  • mfrom: (0.10.1) (0.9.1) (0.8.1) (0.7.1) (0.6.1) (0.5.2)
  • Revision ID: package-import@ubuntu.com-20130527150157-tdkrsjpuvht7v0qx
Tags: 1:3.4~svn182733-1~exp1
* New snapshot release (3.4 release)
* Add a symlink of libLLVM-3.4.so.1 to usr/lib/llvm-3.4/lib/libLLVM-3.4.so
    to fix make the llvm-config-3.4 --libdir work (Closes: #708677)
  * Various packages rename to allow co installations:
    * libclang1 => libclang1-3.4
    * libclang1-dbg => libclang1-3.4-dbg
    * libclang-dev => libclang-3.4-dev
    * libclang-common-dev => libclang-common-3.4-dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips32r2 | \
2
 
# RUN: FileCheck %s
 
2
# RUN: FileCheck -check-prefix=CHECK32  %s
 
3
# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips64r2 | \
 
4
# RUN: FileCheck -check-prefix=CHECK64  %s
 
5
 
3
6
# Check that the assembler can handle the documented syntax
4
7
# for jumps and branches.
5
8
#------------------------------------------------------------------------------
6
9
# Branch instructions
7
10
#------------------------------------------------------------------------------
8
 
# CHECK:   b 1332                 # encoding: [0x4d,0x01,0x00,0x10]
9
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
10
 
# CHECK:   bc1f 1332              # encoding: [0x4d,0x01,0x00,0x45]
11
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
12
 
# CHECK:   bc1t 1332              # encoding: [0x4d,0x01,0x01,0x45]
13
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
14
 
# CHECK:   beq $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x11]
15
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
16
 
# CHECK:   bgez $6, 1332          # encoding: [0x4d,0x01,0xc1,0x04]
17
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
18
 
# CHECK:   bgezal $6, 1332        # encoding: [0x4d,0x01,0xd1,0x04]
19
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
20
 
# CHECK:   bgtz $6, 1332          # encoding: [0x4d,0x01,0xc0,0x1c]
21
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
22
 
# CHECK:   blez $6, 1332          # encoding: [0x4d,0x01,0xc0,0x18]
23
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
24
 
# CHECK:   bne $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x15]
25
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
26
 
# CHECK:   bal     1332           # encoding: [0x4d,0x01,0x11,0x04]
27
 
# CHECK:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
11
# CHECK32:   b 1332                 # encoding: [0x4d,0x01,0x00,0x10]
 
12
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
13
# CHECK32:   bc1f 1332              # encoding: [0x4d,0x01,0x00,0x45]
 
14
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
15
# CHECK32:   bc1t 1332              # encoding: [0x4d,0x01,0x01,0x45]
 
16
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
17
# CHECK32:   beq $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x11]
 
18
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
19
# CHECK32:   bgez $6, 1332          # encoding: [0x4d,0x01,0xc1,0x04]
 
20
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
21
# CHECK32:   bgezal $6, 1332        # encoding: [0x4d,0x01,0xd1,0x04]
 
22
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
23
# CHECK32:   bgtz $6, 1332          # encoding: [0x4d,0x01,0xc0,0x1c]
 
24
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
25
# CHECK32:   blez $6, 1332          # encoding: [0x4d,0x01,0xc0,0x18]
 
26
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
27
# CHECK32:   bne $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x15]
 
28
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
29
# CHECK32:   bal  1332              # encoding: [0x4d,0x01,0x11,0x04]
 
30
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
31
# CHECK32:   bne  $11, $zero, 1332  # encoding: [0x4d,0x01,0x60,0x15]
 
32
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
33
# CHECK32:   beq  $11, $zero, 1332  # encoding: [0x4d,0x01,0x60,0x11]
 
34
# CHECK32:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
35
 
 
36
# CHECK64:   b 1332                 # encoding: [0x4d,0x01,0x00,0x10]
 
37
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
38
# CHECK64:   bc1f 1332              # encoding: [0x4d,0x01,0x00,0x45]
 
39
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
40
# CHECK64:   bc1t 1332              # encoding: [0x4d,0x01,0x01,0x45]
 
41
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
42
# CHECK64:   beq $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x11]
 
43
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
44
# CHECK64:   bgez $6, 1332          # encoding: [0x4d,0x01,0xc1,0x04]
 
45
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
46
# CHECK64:   bgezal $6, 1332        # encoding: [0x4d,0x01,0xd1,0x04]
 
47
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
48
# CHECK64:   bgtz $6, 1332          # encoding: [0x4d,0x01,0xc0,0x1c]
 
49
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
50
# CHECK64:   blez $6, 1332          # encoding: [0x4d,0x01,0xc0,0x18]
 
51
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
52
# CHECK64:   bne $9, $6, 1332       # encoding: [0x4d,0x01,0x26,0x15]
 
53
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
54
# CHECK64:   bal     1332           # encoding: [0x4d,0x01,0x11,0x04]
 
55
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
56
# CHECK64:   bne  $11, $zero, 1332  # encoding: [0x4d,0x01,0x60,0x15]
 
57
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
 
58
# CHECK64:   beq  $11, $zero, 1332  # encoding: [0x4d,0x01,0x60,0x11]
 
59
# CHECK64:   nop                    # encoding: [0x00,0x00,0x00,0x00]
28
60
 
29
61
.set noreorder
30
62
 
48
80
         nop
49
81
         bal 1332
50
82
         nop
 
83
         bnez $11,1332
 
84
         nop
 
85
         beqz $11,1332
 
86
         nop
51
87
 
52
88
end_of_code:
53
89
#------------------------------------------------------------------------------
54
90
# Jump instructions
55
91
#------------------------------------------------------------------------------
56
 
# CHECK:   j 1328               # encoding: [0x4c,0x01,0x00,0x08]
57
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
58
 
# CHECK:   jal 1328             # encoding: [0x4c,0x01,0x00,0x0c]
59
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
60
 
# CHECK:   jalr $6              # encoding: [0x09,0xf8,0xc0,0x00]
61
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
62
 
# CHECK:   jalr $25             # encoding: [0x09,0xf8,0x20,0x03]
63
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
64
 
# CHECK:   jalr $10, $11        # encoding: [0x09,0x50,0x60,0x01]
65
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
66
 
# CHECK:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
67
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
68
 
# CHECK:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
69
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
70
 
# CHECK:   jalr  $25            # encoding: [0x09,0xf8,0x20,0x03]
71
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
72
 
# CHECK:   jalr  $4, $25        # encoding: [0x09,0x20,0x20,0x03]
73
 
# CHECK:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
92
# CHECK32:   j 1328               # encoding: [0x4c,0x01,0x00,0x08]
 
93
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
94
# CHECK32:   jal 1328             # encoding: [0x4c,0x01,0x00,0x0c]
 
95
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
96
# CHECK32:   jalr $6              # encoding: [0x09,0xf8,0xc0,0x00]
 
97
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
98
# CHECK32:   jalr $25             # encoding: [0x09,0xf8,0x20,0x03]
 
99
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
100
# CHECK32:   jalr $10, $11        # encoding: [0x09,0x50,0x60,0x01]
 
101
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
102
# CHECK32:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
 
103
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
104
# CHECK32:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
 
105
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
106
# CHECK32:   jalr  $25            # encoding: [0x09,0xf8,0x20,0x03]
 
107
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
108
# CHECK32:   jalr  $4, $25        # encoding: [0x09,0x20,0x20,0x03]
 
109
# CHECK32:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
110
 
 
111
# CHECK64:   j 1328               # encoding: [0x4c,0x01,0x00,0x08]
 
112
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
113
# CHECK64:   jal 1328             # encoding: [0x4c,0x01,0x00,0x0c]
 
114
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
115
# CHECK64:   jalr $6              # encoding: [0x09,0xf8,0xc0,0x00]
 
116
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
117
# CHECK64:   jalr $25             # encoding: [0x09,0xf8,0x20,0x03]
 
118
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
119
# CHECK64:   jalr $10, $11        # encoding: [0x09,0x50,0x60,0x01]
 
120
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
121
# CHECK64:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
 
122
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
123
# CHECK64:   jr $7                # encoding: [0x08,0x00,0xe0,0x00]
 
124
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
125
# CHECK64:   jalr  $25            # encoding: [0x09,0xf8,0x20,0x03]
 
126
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
 
127
# CHECK64:   jalr  $4, $25        # encoding: [0x09,0x20,0x20,0x03]
 
128
# CHECK64:   nop                  # encoding: [0x00,0x00,0x00,0x00]
74
129
 
75
130
 
76
131
   j 1328