]> granicus.if.org Git - llvm/commitdiff
[mips] Print BEQZL and BNEZL pseudo instructions
authorSimon Atanasyan <simon@atanasyan.com>
Mon, 15 Jul 2019 21:46:38 +0000 (21:46 +0000)
committerSimon Atanasyan <simon@atanasyan.com>
Mon, 15 Jul 2019 21:46:38 +0000 (21:46 +0000)
One of the reasons - to be compatible with GNU tools.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366133 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/MipsInstrInfo.td
test/MC/Mips/branch-pseudos.s
test/MC/Mips/macro-bcc-imm.s
test/MC/Mips/mips-jump-delay-slots.s

index ab353c92e27dbc76912068050a357e3f4e255835..a4e85a38ab28daa252147b2f7a2099c4b445b6bb 100644 (file)
@@ -2801,14 +2801,14 @@ let AdditionalPredicates = [NotInMicroMips] in {
   def : MipsInstAlias<"bnez $rs,$offset",
                       (BNE GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
         ISA_MIPS1;
-  def : MipsInstAlias<"bnezl $rs,$offset",
-                      (BNEL GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
+  def : MipsInstAlias<"bnezl $rs, $offset",
+                      (BNEL GPR32Opnd:$rs, ZERO, brtarget:$offset), 1>,
         ISA_MIPS2;
   def : MipsInstAlias<"beqz $rs,$offset",
                       (BEQ GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
         ISA_MIPS1;
-  def : MipsInstAlias<"beqzl $rs,$offset",
-                      (BEQL GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
+  def : MipsInstAlias<"beqzl $rs, $offset",
+                      (BEQL GPR32Opnd:$rs, ZERO, brtarget:$offset), 1>,
         ISA_MIPS2;
 
   def : MipsInstAlias<"syscall", (SYSCALL 0), 1>, ISA_MIPS1;
index 56841e29f4259a0dabb650a4532c1985aa592582..9c4abdbbfad01ea187d217a4efe0533362691560 100644 (file)
@@ -190,12 +190,12 @@ local_label:
 
   bltl $7,$8,local_label
 # CHECK: slt $1, $7, $8                 # encoding: [0x00,0xe8,0x08,0x2a]
-# CHECK: bnel $1, $zero, local_label    # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, local_label          # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bltl $7,$8,global_label
 # CHECK: slt $1, $7, $8                 # encoding: [0x00,0xe8,0x08,0x2a]
-# CHECK: bnel $1, $zero, global_label   # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, global_label         # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bltl $7,$0,local_label
@@ -211,12 +211,12 @@ local_label:
 
   blel $7,$8,local_label
 # CHECK: slt $1, $8, $7                 # encoding: [0x01,0x07,0x08,0x2a]
-# CHECK: beql $1, $zero, local_label    # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, local_label          # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   blel $7,$8,global_label
 # CHECK: slt $1, $8, $7                 # encoding: [0x01,0x07,0x08,0x2a]
-# CHECK: beql $1, $zero, global_label   # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, global_label         # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   blel $7,$0,local_label
@@ -235,12 +235,12 @@ local_label:
 
   bgel $7,$8,local_label
 # CHECK: slt $1, $7, $8                 # encoding: [0x00,0xe8,0x08,0x2a]
-# CHECK: beql $1, $zero, local_label    # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, local_label          # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgel $7,$8,global_label
 # CHECK: slt $1, $7, $8                 # encoding: [0x00,0xe8,0x08,0x2a]
-# CHECK: beql $1, $zero, global_label   # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, global_label         # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgel $7,$0,local_label
@@ -259,12 +259,12 @@ local_label:
 
   bgtl $7,$8,local_label
 # CHECK: slt $1, $8, $7                 # encoding: [0x01,0x07,0x08,0x2a]
-# CHECK: bnel $1, $zero, local_label    # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, local_label          # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgtl $7,$8,global_label
 # CHECK: slt $1, $8, $7                 # encoding: [0x01,0x07,0x08,0x2a]
-# CHECK: bnel $1, $zero, global_label   # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, global_label         # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgtl $7,$0,local_label
@@ -280,12 +280,12 @@ local_label:
 
   bltul $7,$8,local_label
 # CHECK: sltu $1, $7, $8                # encoding: [0x00,0xe8,0x08,0x2b]
-# CHECK: bnel $1, $zero, local_label    # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, local_label          # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bltul $7,$8,global_label
 # CHECK: sltu $1, $7, $8                # encoding: [0x00,0xe8,0x08,0x2b]
-# CHECK: bnel $1, $zero, global_label   # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, global_label         # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bltul $7,$0,local_label
@@ -301,12 +301,12 @@ local_label:
 
   bleul $7,$8,local_label
 # CHECK: sltu $1, $8, $7                # encoding: [0x01,0x07,0x08,0x2b]
-# CHECK: beql $1, $zero, local_label    # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, local_label          # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bleul $7,$8,global_label
 # CHECK: sltu $1, $8, $7                # encoding: [0x01,0x07,0x08,0x2b]
-# CHECK: beql $1, $zero, global_label   # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, global_label         # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bleul $7,$0,local_label
@@ -325,12 +325,12 @@ local_label:
 
   bgeul $7,$8,local_label
 # CHECK: sltu $1, $7, $8                # encoding: [0x00,0xe8,0x08,0x2b]
-# CHECK: beql $1, $zero, local_label    # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, local_label          # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgeul $7,$8,global_label
 # CHECK: sltu $1, $7, $8                # encoding: [0x00,0xe8,0x08,0x2b]
-# CHECK: beql $1, $zero, global_label   # encoding: [0x50,0x20,A,A]
+# CHECK: beqzl $1, global_label         # encoding: [0x50,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgeul $7,$0,local_label
@@ -349,12 +349,12 @@ local_label:
 
   bgtul $7,$8,local_label
 # CHECK: sltu $1, $8, $7                # encoding: [0x01,0x07,0x08,0x2b]
-# CHECK: bnel $1, $zero, local_label    # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, local_label          # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: local_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgtul $7,$8,global_label
 # CHECK: sltu $1, $8, $7                # encoding: [0x01,0x07,0x08,0x2b]
-# CHECK: bnel $1, $zero, global_label   # encoding: [0x54,0x20,A,A]
+# CHECK: bnezl $1, global_label         # encoding: [0x54,0x20,A,A]
 # CHECK:                                #   fixup A - offset: 0, value: global_label-4, kind: fixup_Mips_PC16
 # CHECK: nop                            # encoding: [0x00,0x00,0x00,0x00]
   bgtul $7,$0,local_label
index ebc4cd2ce18987420b33ad911e1bc642a8d3371c..fdee6ec3670e666a12f3e93611a368694a551e00 100644 (file)
@@ -75,33 +75,33 @@ foo:
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bltl $a2, 16, foo     # ALL: addiu $1, $zero, 16
                           # ALL: slt   $1, $6, $1
-                          # ALL: bnel  $1, $zero, foo
+                          # ALL: bnezl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     blel $a2, 16, foo     # ALL: addiu $1, $zero, 16
                           # ALL: slt   $1, $1, $6
-                          # ALL: beql  $1, $zero, foo
+                          # ALL: beqzl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bgel $a2, 32767, foo  # ALL: addiu $1, $zero, 32767
                           # ALL: slt   $1, $6, $1
-                          # ALL: beql  $1, $zero, foo
+                          # ALL: beqzl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bgtl $a2, 32768, foo  # ALL: ori   $1, $zero, 32768
                           # ALL: slt   $1, $1, $6
-                          # ALL: bnel  $1, $zero, foo
+                          # ALL: bnezl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bltul $a2, 16, foo    # ALL: addiu $1, $zero, 16
                           # ALL: sltu  $1, $6, $1
-                          # ALL: bnel  $1, $zero, foo
+                          # ALL: bnezl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bleul $a2, 16, foo    # ALL: addiu $1, $zero, 16
                           # ALL: sltu  $1, $1, $6
-                          # ALL: beql  $1, $zero, foo
+                          # ALL: beqzl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bgeul $a2, 32767, foo # ALL: addiu $1, $zero, 32767
                           # ALL: sltu  $1, $6, $1
-                          # ALL: beql  $1, $zero, foo
+                          # ALL: beqzl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
     bgtul $a2, 65536, foo # ALL: lui   $1, 1
                           # ALL: sltu  $1, $1, $6
-                          # ALL: bnel  $1, $zero, foo
+                          # ALL: bnezl $1, foo
                           # ALL: # fixup A - offset: 0, value: foo-4, kind: fixup_Mips_PC16
index 8a0781103e9aadde29631d51937b1003273d774a..f61f710b4accc97f8355016a5c179cd76c6818a8 100644 (file)
         # CHECK: beql $9, $6, 1332
         # CHECK: nop
         beql $9,$6,1332
-        # CHECK: beql $9, $zero, 1332
+        # CHECK: beqzl $9, 1332
         # CHECK: nop
         beqzl $9,1332
         # CHECK: bnel $9, $6, 1332
         # CHECK: nop
         bnel $9,$6,1332
-        # CHECK: bnel $9, $zero, 1332
+        # CHECK: bnezl $9, 1332
         # CHECK: nop
         bnezl $9,1332
         # CHECK: bgezl $6, 1332