diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-08-05 11:07:38 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-08-05 11:07:38 +0000 |
commit | ccdf5cc7bc443726425dd1ad498d44768332d49c (patch) | |
tree | ba6ba8530fea0b0d41dff8638f24d06bd3997035 /lib/Target/SystemZ/SystemZInstrInfo.td | |
parent | 9b05c709c65ba05645853ca49bc2a1ea8b554f37 (diff) | |
download | external_llvm-ccdf5cc7bc443726425dd1ad498d44768332d49c.zip external_llvm-ccdf5cc7bc443726425dd1ad498d44768332d49c.tar.gz external_llvm-ccdf5cc7bc443726425dd1ad498d44768332d49c.tar.bz2 |
[SystemZ] Add definitions for BRCT and BRCTG
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187721 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZInstrInfo.td')
-rw-r--r-- | lib/Target/SystemZ/SystemZInstrInfo.td | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Target/SystemZ/SystemZInstrInfo.td b/lib/Target/SystemZ/SystemZInstrInfo.td index 58fb662..73a6126 100644 --- a/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/lib/Target/SystemZ/SystemZInstrInfo.td @@ -166,6 +166,13 @@ defm AsmJE : IntCondExtendedMnemonic<8, "e", "nlh">; defm AsmJHE : IntCondExtendedMnemonic<10, "he", "nl">; defm AsmJLE : IntCondExtendedMnemonic<12, "le", "nh">; +// Decrement a register and branch if it is nonzero. These don't clobber CC, +// but we might need to split long branches into sequences that do. +let Defs = [CC] in { + def BRCT : BranchUnaryRI<"brct", 0xA76, GR32>; + def BRCTG : BranchUnaryRI<"brctg", 0xA77, GR64>; +} + //===----------------------------------------------------------------------===// // Select instructions //===----------------------------------------------------------------------===// |