diff options
| author | Jonas Paulsson <jonas.paulsson@ericsson.com> | 2015-10-26 15:03:49 +0000 |
|---|---|---|
| committer | Jonas Paulsson <jonas.paulsson@ericsson.com> | 2015-10-26 15:03:49 +0000 |
| commit | 83553d0cac09085ac9405ee171414a5a040e8e0f (patch) | |
| tree | 806b9659d314370d00c1e9125aa043ec986c07d3 | |
| parent | 7da382088251e868a8cb9313c2f8fda58e4b2801 (diff) | |
| download | bcm5719-llvm-83553d0cac09085ac9405ee171414a5a040e8e0f.tar.gz bcm5719-llvm-83553d0cac09085ac9405ee171414a5a040e8e0f.zip | |
[SystemZ] LTGFR use regclass should be GR32, not GR64.
Discovered by testing int-cmp-44.ll with -verify-machineinstrs (added to
test run).
llvm-svn: 251299
| -rw-r--r-- | llvm/lib/Target/SystemZ/SystemZInstrInfo.td | 2 | ||||
| -rw-r--r-- | llvm/test/CodeGen/SystemZ/int-cmp-44.ll | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td index 5343ebaec19..628c51a48ef 100644 --- a/llvm/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/llvm/lib/Target/SystemZ/SystemZInstrInfo.td @@ -424,7 +424,7 @@ let hasSideEffects = 0 in { def LGFR : UnaryRRE<"lgf", 0xB914, sext32, GR64, GR32>; } let Defs = [CC], CCValues = 0xE, CompareZeroCCMask = 0xE in - def LTGFR : UnaryRRE<"ltgf", 0xB912, null_frag, GR64, GR64>; + def LTGFR : UnaryRRE<"ltgf", 0xB912, null_frag, GR64, GR32>; // Match 32-to-64-bit sign extensions in which the source is already // in a 64-bit register. diff --git a/llvm/test/CodeGen/SystemZ/int-cmp-44.ll b/llvm/test/CodeGen/SystemZ/int-cmp-44.ll index 97d48521254..a87dccd4ac2 100644 --- a/llvm/test/CodeGen/SystemZ/int-cmp-44.ll +++ b/llvm/test/CodeGen/SystemZ/int-cmp-44.ll @@ -1,7 +1,8 @@ ; Test that compares are omitted if CC already has the right value ; (z10 version). ; -; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 -no-integrated-as | FileCheck %s +; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z10 -no-integrated-as \ +; RUN: -verify-machineinstrs| FileCheck %s declare void @foo() |

