[llvm] r269106 - [SystemZ] Add support for additional branch extended mnemonics
Kit Barton via llvm-commits
llvm-commits at lists.llvm.org
Tue May 10 13:11:24 PDT 2016
Author: kbarton
Date: Tue May 10 15:11:24 2016
New Revision: 269106
URL: http://llvm.org/viewvc/llvm-project?rev=269106&view=rev
Log:
[SystemZ] Add support for additional branch extended mnemonics
Added support for extended mnemonics for the following branch instructions and
load/store-on-condition opcodes:
BR, LOCR, LOCGR, LOC, LOCG, STOC, STOCG
Phabricator: http://reviews.llvm.org/D19729
Committing on behalf of Zhan Liau
Modified:
llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.td
llvm/trunk/test/MC/SystemZ/insn-good-z196.s
llvm/trunk/test/MC/SystemZ/insn-good.s
Modified: llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.td?rev=269106&r1=269105&r2=269106&view=diff
==============================================================================
--- llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.td (original)
+++ llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.td Tue May 10 15:11:24 2016
@@ -165,7 +165,7 @@ defm AsmC : CompareBranches<imm32zx4, ""
// Define AsmParser mnemonics for each general condition-code mask
// (integer or floating-point)
-multiclass CondExtendedMnemonic<bits<4> ccmask, string name> {
+multiclass CondExtendedMnemonicA<bits<4> ccmask, string name> {
let isBranch = 1, isTerminator = 1, R1 = ccmask in {
def J : InstRI<0xA74, (outs), (ins brtarget16:$I2),
"j"##name##"\t$I2", []>;
@@ -180,20 +180,27 @@ multiclass CondExtendedMnemonic<bits<4>
def STOC : FixedCondStoreRSY<"stoc"##name, 0xEBF3, GR32, ccmask, 4>;
def STOCG : FixedCondStoreRSY<"stocg"##name, 0xEBE3, GR64, ccmask, 8>;
}
-defm AsmO : CondExtendedMnemonic<1, "o">;
-defm AsmH : CondExtendedMnemonic<2, "h">;
-defm AsmNLE : CondExtendedMnemonic<3, "nle">;
-defm AsmL : CondExtendedMnemonic<4, "l">;
-defm AsmNHE : CondExtendedMnemonic<5, "nhe">;
-defm AsmLH : CondExtendedMnemonic<6, "lh">;
-defm AsmNE : CondExtendedMnemonic<7, "ne">;
-defm AsmE : CondExtendedMnemonic<8, "e">;
-defm AsmNLH : CondExtendedMnemonic<9, "nlh">;
-defm AsmHE : CondExtendedMnemonic<10, "he">;
-defm AsmNL : CondExtendedMnemonic<11, "nl">;
-defm AsmLE : CondExtendedMnemonic<12, "le">;
-defm AsmNH : CondExtendedMnemonic<13, "nh">;
-defm AsmNO : CondExtendedMnemonic<14, "no">;
+
+multiclass CondExtendedMnemonic<bits<4> ccmask, string name1, string name2>
+ : CondExtendedMnemonicA<ccmask, name1> {
+ let isAsmParserOnly = 1 in
+ defm Alt : CondExtendedMnemonicA<ccmask, name2>;
+}
+
+defm AsmO : CondExtendedMnemonicA<1, "o">;
+defm AsmH : CondExtendedMnemonic<2, "h", "p">;
+defm AsmNLE : CondExtendedMnemonicA<3, "nle">;
+defm AsmL : CondExtendedMnemonic<4, "l", "m">;
+defm AsmNHE : CondExtendedMnemonicA<5, "nhe">;
+defm AsmLH : CondExtendedMnemonicA<6, "lh">;
+defm AsmNE : CondExtendedMnemonic<7, "ne", "nz">;
+defm AsmE : CondExtendedMnemonic<8, "e", "z">;
+defm AsmNLH : CondExtendedMnemonicA<9, "nlh">;
+defm AsmHE : CondExtendedMnemonicA<10, "he">;
+defm AsmNL : CondExtendedMnemonic<11, "nl", "nm">;
+defm AsmLE : CondExtendedMnemonicA<12, "le">;
+defm AsmNH : CondExtendedMnemonic<13, "nh", "np">;
+defm AsmNO : CondExtendedMnemonicA<14, "no">;
// Define AsmParser mnemonics for each integer condition-code mask.
// This is like the list above, except that condition 3 is not possible
Modified: llvm/trunk/test/MC/SystemZ/insn-good-z196.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/SystemZ/insn-good-z196.s?rev=269106&r1=269105&r2=269106&view=diff
==============================================================================
--- llvm/trunk/test/MC/SystemZ/insn-good-z196.s (original)
+++ llvm/trunk/test/MC/SystemZ/insn-good-z196.s Tue May 10 15:11:24 2016
@@ -825,32 +825,44 @@
#CHECK: loco %r1, 2(%r3) # encoding: [0xeb,0x11,0x30,0x02,0x00,0xf2]
#CHECK: loch %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf2]
+#CHECK: locp %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf2]
#CHECK: locnle %r1, 2(%r3) # encoding: [0xeb,0x13,0x30,0x02,0x00,0xf2]
#CHECK: locl %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf2]
+#CHECK: locm %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf2]
#CHECK: locnhe %r1, 2(%r3) # encoding: [0xeb,0x15,0x30,0x02,0x00,0xf2]
#CHECK: loclh %r1, 2(%r3) # encoding: [0xeb,0x16,0x30,0x02,0x00,0xf2]
#CHECK: locne %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf2]
+#CHECK: locnz %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf2]
#CHECK: loce %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf2]
+#CHECK: locz %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf2]
#CHECK: locnlh %r1, 2(%r3) # encoding: [0xeb,0x19,0x30,0x02,0x00,0xf2]
#CHECK: loche %r1, 2(%r3) # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xf2]
#CHECK: locnl %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf2]
+#CHECK: locnm %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf2]
#CHECK: locle %r1, 2(%r3) # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xf2]
#CHECK: locnh %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf2]
+#CHECK: locnp %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf2]
#CHECK: locno %r1, 2(%r3) # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xf2]
loco %r1,2(%r3)
loch %r1,2(%r3)
+ locp %r1,2(%r3)
locnle %r1,2(%r3)
locl %r1,2(%r3)
+ locm %r1,2(%r3)
locnhe %r1,2(%r3)
loclh %r1,2(%r3)
locne %r1,2(%r3)
+ locnz %r1,2(%r3)
loce %r1,2(%r3)
+ locz %r1,2(%r3)
locnlh %r1,2(%r3)
loche %r1,2(%r3)
locnl %r1,2(%r3)
+ locnm %r1,2(%r3)
locle %r1,2(%r3)
locnh %r1,2(%r3)
+ locnp %r1,2(%r3)
locno %r1,2(%r3)
#CHECK: locg %r0, 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe2]
@@ -873,32 +885,44 @@
#CHECK: locgo %r1, 2(%r3) # encoding: [0xeb,0x11,0x30,0x02,0x00,0xe2]
#CHECK: locgh %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe2]
+#CHECK: locgp %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe2]
#CHECK: locgnle %r1, 2(%r3) # encoding: [0xeb,0x13,0x30,0x02,0x00,0xe2]
#CHECK: locgl %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe2]
+#CHECK: locgm %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe2]
#CHECK: locgnhe %r1, 2(%r3) # encoding: [0xeb,0x15,0x30,0x02,0x00,0xe2]
#CHECK: locglh %r1, 2(%r3) # encoding: [0xeb,0x16,0x30,0x02,0x00,0xe2]
#CHECK: locgne %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe2]
+#CHECK: locgnz %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe2]
#CHECK: locge %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe2]
+#CHECK: locgz %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe2]
#CHECK: locgnlh %r1, 2(%r3) # encoding: [0xeb,0x19,0x30,0x02,0x00,0xe2]
#CHECK: locghe %r1, 2(%r3) # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xe2]
#CHECK: locgnl %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe2]
+#CHECK: locgnm %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe2]
#CHECK: locgle %r1, 2(%r3) # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xe2]
#CHECK: locgnh %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe2]
+#CHECK: locgnp %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe2]
#CHECK: locgno %r1, 2(%r3) # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xe2]
locgo %r1,2(%r3)
locgh %r1,2(%r3)
+ locgp %r1,2(%r3)
locgnle %r1,2(%r3)
locgl %r1,2(%r3)
+ locgm %r1,2(%r3)
locgnhe %r1,2(%r3)
locglh %r1,2(%r3)
locgne %r1,2(%r3)
+ locgnz %r1,2(%r3)
locge %r1,2(%r3)
+ locgz %r1,2(%r3)
locgnlh %r1,2(%r3)
locghe %r1,2(%r3)
locgnl %r1,2(%r3)
+ locgnm %r1,2(%r3)
locgle %r1,2(%r3)
locgnh %r1,2(%r3)
+ locgnp %r1,2(%r3)
locgno %r1,2(%r3)
#CHECK: locgr %r1, %r2, 0 # encoding: [0xb9,0xe2,0x00,0x12]
@@ -909,32 +933,44 @@
#CHECK: locgro %r1, %r3 # encoding: [0xb9,0xe2,0x10,0x13]
#CHECK: locgrh %r1, %r3 # encoding: [0xb9,0xe2,0x20,0x13]
+#CHECK: locgrp %r1, %r3 # encoding: [0xb9,0xe2,0x20,0x13]
#CHECK: locgrnle %r1, %r3 # encoding: [0xb9,0xe2,0x30,0x13]
#CHECK: locgrl %r1, %r3 # encoding: [0xb9,0xe2,0x40,0x13]
+#CHECK: locgrm %r1, %r3 # encoding: [0xb9,0xe2,0x40,0x13]
#CHECK: locgrnhe %r1, %r3 # encoding: [0xb9,0xe2,0x50,0x13]
#CHECK: locgrlh %r1, %r3 # encoding: [0xb9,0xe2,0x60,0x13]
#CHECK: locgrne %r1, %r3 # encoding: [0xb9,0xe2,0x70,0x13]
+#CHECK: locgrnz %r1, %r3 # encoding: [0xb9,0xe2,0x70,0x13]
#CHECK: locgre %r1, %r3 # encoding: [0xb9,0xe2,0x80,0x13]
+#CHECK: locgrz %r1, %r3 # encoding: [0xb9,0xe2,0x80,0x13]
#CHECK: locgrnlh %r1, %r3 # encoding: [0xb9,0xe2,0x90,0x13]
#CHECK: locgrhe %r1, %r3 # encoding: [0xb9,0xe2,0xa0,0x13]
#CHECK: locgrnl %r1, %r3 # encoding: [0xb9,0xe2,0xb0,0x13]
+#CHECK: locgrnm %r1, %r3 # encoding: [0xb9,0xe2,0xb0,0x13]
#CHECK: locgrle %r1, %r3 # encoding: [0xb9,0xe2,0xc0,0x13]
#CHECK: locgrnh %r1, %r3 # encoding: [0xb9,0xe2,0xd0,0x13]
+#CHECK: locgrnp %r1, %r3 # encoding: [0xb9,0xe2,0xd0,0x13]
#CHECK: locgrno %r1, %r3 # encoding: [0xb9,0xe2,0xe0,0x13]
locgro %r1,%r3
locgrh %r1,%r3
+ locgrp %r1,%r3
locgrnle %r1,%r3
locgrl %r1,%r3
+ locgrm %r1,%r3
locgrnhe %r1,%r3
locgrlh %r1,%r3
locgrne %r1,%r3
+ locgrnz %r1,%r3
locgre %r1,%r3
+ locgrz %r1,%r3
locgrnlh %r1,%r3
locgrhe %r1,%r3
locgrnl %r1,%r3
+ locgrnm %r1,%r3
locgrle %r1,%r3
locgrnh %r1,%r3
+ locgrnp %r1,%r3
locgrno %r1,%r3
#CHECK: locr %r1, %r2, 0 # encoding: [0xb9,0xf2,0x00,0x12]
@@ -945,32 +981,44 @@
#CHECK: locro %r1, %r3 # encoding: [0xb9,0xf2,0x10,0x13]
#CHECK: locrh %r1, %r3 # encoding: [0xb9,0xf2,0x20,0x13]
+#CHECK: locrp %r1, %r3 # encoding: [0xb9,0xf2,0x20,0x13]
#CHECK: locrnle %r1, %r3 # encoding: [0xb9,0xf2,0x30,0x13]
#CHECK: locrl %r1, %r3 # encoding: [0xb9,0xf2,0x40,0x13]
+#CHECK: locrm %r1, %r3 # encoding: [0xb9,0xf2,0x40,0x13]
#CHECK: locrnhe %r1, %r3 # encoding: [0xb9,0xf2,0x50,0x13]
#CHECK: locrlh %r1, %r3 # encoding: [0xb9,0xf2,0x60,0x13]
#CHECK: locrne %r1, %r3 # encoding: [0xb9,0xf2,0x70,0x13]
+#CHECK: locrnz %r1, %r3 # encoding: [0xb9,0xf2,0x70,0x13]
#CHECK: locre %r1, %r3 # encoding: [0xb9,0xf2,0x80,0x13]
+#CHECK: locrz %r1, %r3 # encoding: [0xb9,0xf2,0x80,0x13]
#CHECK: locrnlh %r1, %r3 # encoding: [0xb9,0xf2,0x90,0x13]
#CHECK: locrhe %r1, %r3 # encoding: [0xb9,0xf2,0xa0,0x13]
#CHECK: locrnl %r1, %r3 # encoding: [0xb9,0xf2,0xb0,0x13]
+#CHECK: locrnm %r1, %r3 # encoding: [0xb9,0xf2,0xb0,0x13]
#CHECK: locrle %r1, %r3 # encoding: [0xb9,0xf2,0xc0,0x13]
#CHECK: locrnh %r1, %r3 # encoding: [0xb9,0xf2,0xd0,0x13]
+#CHECK: locrnp %r1, %r3 # encoding: [0xb9,0xf2,0xd0,0x13]
#CHECK: locrno %r1, %r3 # encoding: [0xb9,0xf2,0xe0,0x13]
locro %r1,%r3
locrh %r1,%r3
+ locrp %r1,%r3
locrnle %r1,%r3
locrl %r1,%r3
+ locrm %r1,%r3
locrnhe %r1,%r3
locrlh %r1,%r3
locrne %r1,%r3
+ locrnz %r1,%r3
locre %r1,%r3
+ locrz %r1,%r3
locrnlh %r1,%r3
locrhe %r1,%r3
locrnl %r1,%r3
+ locrnm %r1,%r3
locrle %r1,%r3
locrnh %r1,%r3
+ locrnp %r1,%r3
locrno %r1,%r3
#CHECK: ngrk %r0, %r0, %r0 # encoding: [0xb9,0xe4,0x00,0x00]
@@ -1275,32 +1323,44 @@
#CHECK: stoco %r1, 2(%r3) # encoding: [0xeb,0x11,0x30,0x02,0x00,0xf3]
#CHECK: stoch %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf3]
+#CHECK: stocp %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf3]
#CHECK: stocnle %r1, 2(%r3) # encoding: [0xeb,0x13,0x30,0x02,0x00,0xf3]
#CHECK: stocl %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf3]
+#CHECK: stocm %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf3]
#CHECK: stocnhe %r1, 2(%r3) # encoding: [0xeb,0x15,0x30,0x02,0x00,0xf3]
#CHECK: stoclh %r1, 2(%r3) # encoding: [0xeb,0x16,0x30,0x02,0x00,0xf3]
#CHECK: stocne %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf3]
+#CHECK: stocnz %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf3]
#CHECK: stoce %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf3]
+#CHECK: stocz %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf3]
#CHECK: stocnlh %r1, 2(%r3) # encoding: [0xeb,0x19,0x30,0x02,0x00,0xf3]
#CHECK: stoche %r1, 2(%r3) # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xf3]
#CHECK: stocnl %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf3]
+#CHECK: stocnm %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf3]
#CHECK: stocle %r1, 2(%r3) # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xf3]
#CHECK: stocnh %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf3]
+#CHECK: stocnp %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf3]
#CHECK: stocno %r1, 2(%r3) # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xf3]
stoco %r1,2(%r3)
stoch %r1,2(%r3)
+ stocp %r1,2(%r3)
stocnle %r1,2(%r3)
stocl %r1,2(%r3)
+ stocm %r1,2(%r3)
stocnhe %r1,2(%r3)
stoclh %r1,2(%r3)
stocne %r1,2(%r3)
+ stocnz %r1,2(%r3)
stoce %r1,2(%r3)
+ stocz %r1,2(%r3)
stocnlh %r1,2(%r3)
stoche %r1,2(%r3)
stocnl %r1,2(%r3)
+ stocnm %r1,2(%r3)
stocle %r1,2(%r3)
stocnh %r1,2(%r3)
+ stocnp %r1,2(%r3)
stocno %r1,2(%r3)
#CHECK: stocg %r0, 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe3]
@@ -1323,32 +1383,44 @@
#CHECK: stocgo %r1, 2(%r3) # encoding: [0xeb,0x11,0x30,0x02,0x00,0xe3]
#CHECK: stocgh %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe3]
+#CHECK: stocgp %r1, 2(%r3) # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe3]
#CHECK: stocgnle %r1, 2(%r3) # encoding: [0xeb,0x13,0x30,0x02,0x00,0xe3]
#CHECK: stocgl %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe3]
+#CHECK: stocgm %r1, 2(%r3) # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe3]
#CHECK: stocgnhe %r1, 2(%r3) # encoding: [0xeb,0x15,0x30,0x02,0x00,0xe3]
#CHECK: stocglh %r1, 2(%r3) # encoding: [0xeb,0x16,0x30,0x02,0x00,0xe3]
#CHECK: stocgne %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe3]
+#CHECK: stocgnz %r1, 2(%r3) # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe3]
#CHECK: stocge %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe3]
+#CHECK: stocgz %r1, 2(%r3) # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe3]
#CHECK: stocgnlh %r1, 2(%r3) # encoding: [0xeb,0x19,0x30,0x02,0x00,0xe3]
#CHECK: stocghe %r1, 2(%r3) # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xe3]
#CHECK: stocgnl %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe3]
+#CHECK: stocgnm %r1, 2(%r3) # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe3]
#CHECK: stocgle %r1, 2(%r3) # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xe3]
#CHECK: stocgnh %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe3]
+#CHECK: stocgnp %r1, 2(%r3) # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe3]
#CHECK: stocgno %r1, 2(%r3) # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xe3]
stocgo %r1,2(%r3)
stocgh %r1,2(%r3)
+ stocgp %r1,2(%r3)
stocgnle %r1,2(%r3)
stocgl %r1,2(%r3)
+ stocgm %r1,2(%r3)
stocgnhe %r1,2(%r3)
stocglh %r1,2(%r3)
stocgne %r1,2(%r3)
+ stocgnz %r1,2(%r3)
stocge %r1,2(%r3)
+ stocgz %r1,2(%r3)
stocgnlh %r1,2(%r3)
stocghe %r1,2(%r3)
stocgnl %r1,2(%r3)
+ stocgnm %r1,2(%r3)
stocgle %r1,2(%r3)
stocgnh %r1,2(%r3)
+ stocgnp %r1,2(%r3)
stocgno %r1,2(%r3)
#CHECK: xgrk %r0, %r0, %r0 # encoding: [0xb9,0xe7,0x00,0x00]
Modified: llvm/trunk/test/MC/SystemZ/insn-good.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/SystemZ/insn-good.s?rev=269106&r1=269105&r2=269106&view=diff
==============================================================================
--- llvm/trunk/test/MC/SystemZ/insn-good.s (original)
+++ llvm/trunk/test/MC/SystemZ/insn-good.s Tue May 10 15:11:24 2016
@@ -741,8 +741,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jh foo # encoding: [0xa7,0x24,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jp foo # encoding: [0xa7,0x24,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 2, foo
jh foo
+ jp foo
#CHECK: brc 3, foo # encoding: [0xa7,0x34,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
@@ -755,8 +758,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jl foo # encoding: [0xa7,0x44,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jm foo # encoding: [0xa7,0x44,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 4, foo
jl foo
+ jm foo
#CHECK: brc 5, foo # encoding: [0xa7,0x54,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
@@ -776,15 +782,21 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jne foo # encoding: [0xa7,0x74,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jnz foo # encoding: [0xa7,0x74,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 7, foo
jne foo
+ jnz foo
#CHECK: brc 8, foo # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: je foo # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jz foo # encoding: [0xa7,0x84,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 8, foo
je foo
+ jz foo
#CHECK: brc 9, foo # encoding: [0xa7,0x94,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
@@ -804,8 +816,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnl foo # encoding: [0xa7,0xb4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jnm foo # encoding: [0xa7,0xb4,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 11, foo
jnl foo
+ jnm foo
#CHECK: brc 12, foo # encoding: [0xa7,0xc4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
@@ -818,8 +833,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnh foo # encoding: [0xa7,0xd4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
+#CHECK: jnp foo # encoding: [0xa7,0xd4,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 13, foo
jnh foo
+ jnp foo
#CHECK: brc 14, foo # encoding: [0xa7,0xe4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
@@ -991,8 +1009,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgh foo # encoding: [0xc0,0x24,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgp foo # encoding: [0xc0,0x24,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 2, foo
jgh foo
+ jgp foo
#CHECK: brcl 3, foo # encoding: [0xc0,0x34,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
@@ -1005,8 +1026,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgl foo # encoding: [0xc0,0x44,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgm foo # encoding: [0xc0,0x44,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 4, foo
jgl foo
+ jgm foo
#CHECK: brcl 5, foo # encoding: [0xc0,0x54,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
@@ -1026,15 +1050,21 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgne foo # encoding: [0xc0,0x74,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgnz foo # encoding: [0xc0,0x74,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 7, foo
jgne foo
+ jgnz foo
#CHECK: brcl 8, foo # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jge foo # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgz foo # encoding: [0xc0,0x84,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 8, foo
jge foo
+ jgz foo
#CHECK: brcl 9, foo # encoding: [0xc0,0x94,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
@@ -1054,8 +1084,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnl foo # encoding: [0xc0,0xb4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgnm foo # encoding: [0xc0,0xb4,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 11, foo
jgnl foo
+ jgnm foo
#CHECK: brcl 12, foo # encoding: [0xc0,0xc4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
@@ -1068,8 +1101,11 @@
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnh foo # encoding: [0xc0,0xd4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
+#CHECK: jgnp foo # encoding: [0xc0,0xd4,A,A,A,A]
+#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 13, foo
jgnh foo
+ jgnp foo
#CHECK: brcl 14, foo # encoding: [0xc0,0xe4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
More information about the llvm-commits
mailing list