aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-02-10 21:21:17 +0000
committerChris Lattner <sabre@nondot.org>2004-02-10 21:21:17 +0000
commit376ad9fa9f66facc7100186f0a1f56c1be858ff5 (patch)
tree111e6732ad96fa65fab41792f1a79e4ce75eba8b
parent2b38c0d94bb54659c8748eca75b4ca64a0f01b78 (diff)
Remove and simplify some of the bewildering collection of isFOORegister
methods which have strangely different semantics in different backends, and noone knew what any did. Getting rid of these ALSO allows the dependence of MachineInstr.h on MRegisterInfo.h to be removed, which makes me much happier, and probably alkis too. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11287 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/CodeGen/MachineInstr.h22
1 files changed, 8 insertions, 14 deletions
diff --git a/include/llvm/CodeGen/MachineInstr.h b/include/llvm/CodeGen/MachineInstr.h
index 5f0f1b91bc..b148baa85d 100644
--- a/include/llvm/CodeGen/MachineInstr.h
+++ b/include/llvm/CodeGen/MachineInstr.h
@@ -16,9 +16,9 @@
#ifndef LLVM_CODEGEN_MACHINEINSTR_H
#define LLVM_CODEGEN_MACHINEINSTR_H
-#include "llvm/Target/MRegisterInfo.h"
#include "Support/Annotation.h"
#include "Support/iterator"
+#include <vector>
namespace llvm {
@@ -220,19 +220,13 @@ public:
bool isPCRelative() const { return (flags & PCRELATIVE) != 0; }
- // This is to finally stop caring whether we have a virtual or machine
- // register -- an easier interface is to simply call both virtual and machine
- // registers essentially the same, yet be able to distinguish when
- // necessary. Thus the instruction selector can just add registers without
- // abandon, and the register allocator won't be confused.
- bool isVirtualRegister() const {
- return (opType == MO_VirtualRegister || opType == MO_MachineRegister)
- && regNum >= MRegisterInfo::FirstVirtualRegister;
- }
- bool isRegister() const {
- return opType == MO_VirtualRegister || opType == MO_MachineRegister;
- }
- bool isMachineRegister() const { return !isVirtualRegister(); }
+ /// isRegister - Return true if this operand is a register operand.
+ ///
+ /// Note: In the sparc backend, this only returns true for "machine
+ /// registers", not for "virtual registers".
+ ///
+ bool isRegister() const { return opType == MO_MachineRegister; }
+
bool isMachineBasicBlock() const { return opType == MO_MachineBasicBlock; }
bool isPCRelativeDisp() const { return opType == MO_PCRelativeDisp; }
bool isImmediate() const {