diff options
author | Brian Gaeke <gaeke@uiuc.edu> | 2004-04-21 17:53:58 +0000 |
---|---|---|
committer | Brian Gaeke <gaeke@uiuc.edu> | 2004-04-21 17:53:58 +0000 |
commit | 6896a7dd435e8921cae56fb463bfa2d5f44f29b8 (patch) | |
tree | fb9cac4ad73a48d3828d1d414373990dc39e670c | |
parent | 09233fb86e237715d138db5dc5b72ada386089f2 (diff) | |
download | external_llvm-6896a7dd435e8921cae56fb463bfa2d5f44f29b8.zip external_llvm-6896a7dd435e8921cae56fb463bfa2d5f44f29b8.tar.gz external_llvm-6896a7dd435e8921cae56fb463bfa2d5f44f29b8.tar.bz2 |
Make SparcV9RegInfo::getRegType() return the right answer for registers
of IntCC, FloatCC, and Special types.
Make SparcV9RegInfo::getRegClassIDOfRegType() return the right answer
if you ask for the class corresponding to SpecialRegType.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13095 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/SparcV9/SparcV9RegInfo.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/Target/SparcV9/SparcV9RegInfo.cpp b/lib/Target/SparcV9/SparcV9RegInfo.cpp index 1c53703..89aad04 100644 --- a/lib/Target/SparcV9/SparcV9RegInfo.cpp +++ b/lib/Target/SparcV9/SparcV9RegInfo.cpp @@ -256,11 +256,11 @@ int SparcV9RegInfo::getRegType(int unifiedRegNum) const return FPSingleRegType; else if (unifiedRegNum < (64 + 32)) return FPDoubleRegType; - else if (unifiedRegNum < (64+32+4)) - return FloatCCRegType; - else if (unifiedRegNum < (64+32+4+2)) - return IntCCRegType; - else if (unifiedRegNum < (64+32+4+2+1)) + else if (unifiedRegNum < (64+32+3)) + return IntCCRegType; + else if (unifiedRegNum < (64+32+3+4)) + return FloatCCRegType; + else if (unifiedRegNum < (64+32+3+4+1)) return SpecialRegType; else assert(0 && "Invalid unified register number in getRegType"); @@ -300,6 +300,7 @@ unsigned SparcV9RegInfo::getRegClassIDOfRegType(int regType) const { case FPDoubleRegType: return FloatRegClassID; case IntCCRegType: return IntCCRegClassID; case FloatCCRegType: return FloatCCRegClassID; + case SpecialRegType: return SpecialRegClassID; default: assert(0 && "Invalid register type in getRegClassIDOfRegType"); return 0; |