diff options
author | buzbee <buzbee@google.com> | 2014-03-27 19:24:15 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-03-27 19:24:15 +0000 |
commit | 0fd52d5d0cf01e5a109851098a43a79f5615dc0f (patch) | |
tree | 67cd5f957999ceade0fd73d8231c5528c7fd2dbe | |
parent | 2aa9b36e316a5b2e29c80a745152c07ccda0d83f (diff) | |
parent | 262b299abf658c16f61dad2240cfaf3deafe4423 (diff) | |
download | art-0fd52d5d0cf01e5a109851098a43a79f5615dc0f.zip art-0fd52d5d0cf01e5a109851098a43a79f5615dc0f.tar.gz art-0fd52d5d0cf01e5a109851098a43a79f5615dc0f.tar.bz2 |
Merge "Fix x86 master build failure."
-rw-r--r-- | compiler/dex/quick/mir_to_lir.h | 6 | ||||
-rw-r--r-- | compiler/dex/quick/ralloc_util.cc | 18 |
2 files changed, 10 insertions, 14 deletions
diff --git a/compiler/dex/quick/mir_to_lir.h b/compiler/dex/quick/mir_to_lir.h index 68c3d0f..946adc5 100644 --- a/compiler/dex/quick/mir_to_lir.h +++ b/compiler/dex/quick/mir_to_lir.h @@ -482,11 +482,11 @@ class Mir2Lir : public Backend { void FreeTemp(int reg); void FreeTemp(RegStorage reg); RegisterInfo* IsLive(int reg); - RegisterInfo* IsLive(RegStorage reg); + bool IsLive(RegStorage reg); RegisterInfo* IsTemp(int reg); - RegisterInfo* IsTemp(RegStorage reg); + bool IsTemp(RegStorage reg); RegisterInfo* IsPromoted(int reg); - RegisterInfo* IsPromoted(RegStorage reg); + bool IsPromoted(RegStorage reg); bool IsDirty(int reg); bool IsDirty(RegStorage reg); void LockTemp(int reg); diff --git a/compiler/dex/quick/ralloc_util.cc b/compiler/dex/quick/ralloc_util.cc index 3c49756..137d5eb 100644 --- a/compiler/dex/quick/ralloc_util.cc +++ b/compiler/dex/quick/ralloc_util.cc @@ -431,10 +431,9 @@ Mir2Lir::RegisterInfo* Mir2Lir::IsLive(int reg) { return p->live ? p : NULL; } -Mir2Lir::RegisterInfo* Mir2Lir::IsLive(RegStorage reg) { +bool Mir2Lir::IsLive(RegStorage reg) { if (reg.IsPair()) { - DCHECK_EQ(IsLive(reg.GetLowReg()) == nullptr, IsLive(reg.GetHighReg()) == nullptr); - return IsLive(reg.GetLowReg()); + return IsLive(reg.GetLowReg()) || IsLive(reg.GetHighReg()); } else { return IsLive(reg.GetReg()); } @@ -445,10 +444,9 @@ Mir2Lir::RegisterInfo* Mir2Lir::IsTemp(int reg) { return (p->is_temp) ? p : NULL; } -Mir2Lir::RegisterInfo* Mir2Lir::IsTemp(RegStorage reg) { +bool Mir2Lir::IsTemp(RegStorage reg) { if (reg.IsPair()) { - DCHECK_EQ(IsTemp(reg.GetLowReg()) == nullptr, IsTemp(reg.GetHighReg()) == nullptr); - return IsTemp(reg.GetLowReg()); + return IsTemp(reg.GetLowReg()) || IsTemp(reg.GetHighReg()); } else { return IsTemp(reg.GetReg()); } @@ -459,10 +457,9 @@ Mir2Lir::RegisterInfo* Mir2Lir::IsPromoted(int reg) { return (p->is_temp) ? NULL : p; } -Mir2Lir::RegisterInfo* Mir2Lir::IsPromoted(RegStorage reg) { +bool Mir2Lir::IsPromoted(RegStorage reg) { if (reg.IsPair()) { - DCHECK_EQ(IsPromoted(reg.GetLowReg()) == nullptr, IsPromoted(reg.GetHighReg()) == nullptr); - return IsPromoted(reg.GetLowReg()); + return IsPromoted(reg.GetLowReg()) || IsPromoted(reg.GetHighReg()); } else { return IsPromoted(reg.GetReg()); } @@ -475,8 +472,7 @@ bool Mir2Lir::IsDirty(int reg) { bool Mir2Lir::IsDirty(RegStorage reg) { if (reg.IsPair()) { - DCHECK_EQ(IsDirty(reg.GetLowReg()), IsDirty(reg.GetHighReg())); - return IsDirty(reg.GetLowReg()); + return IsDirty(reg.GetLowReg()) || IsDirty(reg.GetHighReg()); } else { return IsDirty(reg.GetReg()); } |