diff options
| author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-30 10:50:33 +0000 |
|---|---|---|
| committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-30 10:50:33 +0000 |
| commit | d30ac3a125d0c941369f2a6363ab7880250bbc17 (patch) | |
| tree | 216d51ec01423b8f9f1121b65fc3f690cc801b08 /llvm/lib/Target | |
| parent | f9496060f665d9d5420fb5a93cee0c9d446f13d7 (diff) | |
| download | bcm5719-llvm-d30ac3a125d0c941369f2a6363ab7880250bbc17.tar.gz bcm5719-llvm-d30ac3a125d0c941369f2a6363ab7880250bbc17.zip | |
[SystemZ] Add definitions of LFH and STFH
llvm-svn: 191661
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/SystemZ/SystemZInstrInfo.td | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td index 4cd087540db..b93e863a957 100644 --- a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td @@ -294,6 +294,8 @@ let neverHasSideEffects = 1, isAsCheapAsAMove = 1, isMoveImm = 1, // Register loads. let canFoldAsLoad = 1, SimpleBDXLoad = 1 in { defm L : UnaryRXPair<"l", 0x58, 0xE358, load, GR32, 4>; + def LFH : UnaryRXY<"lfh", 0xE3CA, load, GRH32, 4>, + Requires<[FeatureHighWord]>; def LG : UnaryRXY<"lg", 0xE304, load, GR64, 8>; // These instructions are split after register allocation, so we don't @@ -326,6 +328,8 @@ let Uses = [CC] in { // Register stores. let SimpleBDXStore = 1 in { defm ST : StoreRXPair<"st", 0x50, 0xE350, store, GR32, 4>; + def STFH : StoreRXY<"stfh", 0xE3CB, store, GRH32, 4>, + Requires<[FeatureHighWord]>; def STG : StoreRXY<"stg", 0xE324, store, GR64, 8>; // These instructions are split after register allocation, so we don't |

