From 7c4676f341a1abfe555e78fb2aac0a2d7cbe85cf Mon Sep 17 00:00:00 2001 From: Brian Gaeke Date: Fri, 16 Jul 2004 10:32:10 +0000 Subject: [PATCH] Add a class for pseudo-instructions. Use it. Add IMPLICIT_USE and IMPLICIT_DEF, a la X86. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14884 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Sparc/SparcInstrInfo.td | 15 +++++++-------- lib/Target/SparcV8/SparcV8InstrInfo.td | 15 +++++++-------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/lib/Target/Sparc/SparcInstrInfo.td b/lib/Target/Sparc/SparcInstrInfo.td index 3cc43dc1eda..fa088e1d924 100644 --- a/lib/Target/Sparc/SparcInstrInfo.td +++ b/lib/Target/Sparc/SparcInstrInfo.td @@ -36,15 +36,14 @@ include "SparcV8InstrInfo_F3.td" //===----------------------------------------------------------------------===// // Pseudo instructions. -def PHI : InstV8 { - let Name = "PHI"; -} -def ADJCALLSTACKDOWN : InstV8 { - let Name = "ADJCALLSTACKDOWN"; -} -def ADJCALLSTACKUP : InstV8 { - let Name = "ADJCALLSTACKUP"; +class PseudoInstV8 : InstV8 { + let Name = nm; } +def PHI : PseudoInstV8<"PHI">; +def ADJCALLSTACKDOWN : PseudoInstV8<"ADJCALLSTACKDOWN">; +def ADJCALLSTACKUP : PseudoInstV8<"ADJCALLSTACKUP">; +def IMPLICIT_USE : PseudoInstV8<"IMPLICIT_USE">; +def IMPLICIT_DEF : PseudoInstV8<"IMPLICIT_DEF">; // Section A.3 - Synthetic Instructions, p. 85 // special cases of JMPL: diff --git a/lib/Target/SparcV8/SparcV8InstrInfo.td b/lib/Target/SparcV8/SparcV8InstrInfo.td index 3cc43dc1eda..fa088e1d924 100644 --- a/lib/Target/SparcV8/SparcV8InstrInfo.td +++ b/lib/Target/SparcV8/SparcV8InstrInfo.td @@ -36,15 +36,14 @@ include "SparcV8InstrInfo_F3.td" //===----------------------------------------------------------------------===// // Pseudo instructions. -def PHI : InstV8 { - let Name = "PHI"; -} -def ADJCALLSTACKDOWN : InstV8 { - let Name = "ADJCALLSTACKDOWN"; -} -def ADJCALLSTACKUP : InstV8 { - let Name = "ADJCALLSTACKUP"; +class PseudoInstV8 : InstV8 { + let Name = nm; } +def PHI : PseudoInstV8<"PHI">; +def ADJCALLSTACKDOWN : PseudoInstV8<"ADJCALLSTACKDOWN">; +def ADJCALLSTACKUP : PseudoInstV8<"ADJCALLSTACKUP">; +def IMPLICIT_USE : PseudoInstV8<"IMPLICIT_USE">; +def IMPLICIT_DEF : PseudoInstV8<"IMPLICIT_DEF">; // Section A.3 - Synthetic Instructions, p. 85 // special cases of JMPL: