Chromium Code Reviews| Index: src/hydrogen-uint32-analysis.cc |
| diff --git a/src/hydrogen-uint32-analysis.cc b/src/hydrogen-uint32-analysis.cc |
| index 835a198d4d8b53f42d06542806f3381116ea1869..fbd6b354ea44c24665b7f6484b6be297b4ff856d 100644 |
| --- a/src/hydrogen-uint32-analysis.cc |
| +++ b/src/hydrogen-uint32-analysis.cc |
| @@ -36,7 +36,14 @@ bool HUint32AnalysisPhase::IsSafeUint32Use(HValue* val, HValue* use) { |
| if (use->IsBitwise() || use->IsShl() || use->IsSar() || use->IsShr()) { |
| return true; |
| } else if (use->IsChange() || use->IsSimulate()) { |
| - // Conversions and deoptimization have special support for unt32. |
| + // Conversions and deoptimization have special support for uint32. |
| + // This ASSERT guards that the conversion in question is actually |
| + // implemented. Do not extend the whitelist without adding |
| + // support to LChunkBuilder::DoChange(). |
| + ASSERT(!use->IsChange() || |
|
Vyacheslav Egorov (Google)
2013/10/31 10:05:36
I would make it
else if (use->IsSimulate()) {
|
| + HChange::cast(use)->to().IsDouble() || |
| + HChange::cast(use)->to().IsSmi() || |
| + HChange::cast(use)->to().IsTagged()); |
| return true; |
| } else if (use->IsStoreKeyed()) { |
| HStoreKeyed* store = HStoreKeyed::cast(use); |