From ea82309aa773f3e824321d58b12dc9af376d2b4a Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 7 Jan 2009 22:28:56 +0000 Subject: [PATCH] Add empty() methods for register def lists. llvm-svn: 61890 --- include/llvm/CodeGen/MachineRegisterInfo.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/llvm/CodeGen/MachineRegisterInfo.h b/include/llvm/CodeGen/MachineRegisterInfo.h index f477e86554e..b313fce182f 100644 --- a/include/llvm/CodeGen/MachineRegisterInfo.h +++ b/include/llvm/CodeGen/MachineRegisterInfo.h @@ -81,6 +81,10 @@ public: } static reg_iterator reg_end() { return reg_iterator(0); } + /// reg_empty - Return true if there are no instructions using or defining the + /// specified register (it may be live-in). + bool reg_empty(unsigned RegNo) const { return reg_begin(RegNo) == reg_end(); } + /// def_iterator/def_begin/def_end - Walk all defs of the specified register. typedef defusechain_iterator def_iterator; def_iterator def_begin(unsigned RegNo) const { @@ -88,6 +92,10 @@ public: } static def_iterator def_end() { return def_iterator(0); } + /// def_empty - Return true if there are no instructions defining the + /// specified register (it may be live-in). + bool def_empty(unsigned RegNo) const { return def_begin(RegNo) == def_end(); } + /// use_iterator/use_begin/use_end - Walk all uses of the specified register. typedef defusechain_iterator use_iterator; use_iterator use_begin(unsigned RegNo) const {