From e38f1149fa920d07383725f7b7e3df4ce1cc7ec6 Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Fri, 3 Dec 2010 01:55:30 +0000 Subject: [PATCH] Ignore decode table conflicts in the tMOVgpr2tgpr, tMOVgpr2gpr, and tMOVtgpr2gpr instructions. They are handled as special moves, but encoded as a normal move. llvm-svn: 120779 --- llvm/utils/TableGen/ARMDecoderEmitter.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/llvm/utils/TableGen/ARMDecoderEmitter.cpp b/llvm/utils/TableGen/ARMDecoderEmitter.cpp index 64e25c9ad8c3..22b2c037368d 100644 --- a/llvm/utils/TableGen/ARMDecoderEmitter.cpp +++ b/llvm/utils/TableGen/ARMDecoderEmitter.cpp @@ -1731,6 +1731,13 @@ ARMDEBackend::populateInstruction(const CodeGenInstruction &CGI, Name == "tSpill" || Name == "tLDRcp" || Name == "tRestore" || Name == "t2LEApcrelJT" || Name == "t2MOVCCi16") return false; + + // tMOVgpr2tgpr, tMOVgpr2gpr, and tMOVtgpr2gpr are used by the code + // generator for special kinds of moves, but are encoded the same. Safely + // ignore them here. + if (Name == "tMOVgpr2tgpr" || Name == "tMOVgpr2gpr" || + Name == "tMOVtgpr2gpr") + return false; } // Dumps the instruction encoding format.