DBC: Fix CheckCids instruction

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2408423004 .
This commit is contained in:
Zachary Anderson 2016-10-12 12:45:38 -07:00
parent 2a51e46153
commit 08d70cdca5
3 changed files with 4 additions and 3 deletions

View file

@ -806,7 +806,7 @@ namespace dart {
V(CheckEitherNonSmi, A_D, reg, reg, ___) \
V(CheckClassId, A_D, reg, num, ___) \
V(CheckDenseSwitch, A_D, reg, num, ___) \
V(CheckCids, A_B_C, reg, num, ___) \
V(CheckCids, A_B_C, reg, num, num) \
V(CheckStack, 0, ___, ___, ___) \
V(DebugStep, 0, ___, ___, ___) \
V(DebugBreak, A, num, ___, ___) \

View file

@ -1546,6 +1546,7 @@ Value* EffectGraphVisitor::BuildAssignableValue(TokenPosition token_pos,
return Bind(BuildAssertAssignable(token_pos, value, dst_type, dst_name));
}
static bool simpleInstanceOfType(const AbstractType& type) {
// Bail if the type is still uninstantiated at compile time.
if (!type.IsInstantiated()) return false;

View file

@ -2881,8 +2881,8 @@ RawObject* Simulator::Call(const Code& code,
pc++;
break;
}
// The cids are sorted.
if (cid < desired_cid) {
// The cids are sorted in descending order.
if (cid > desired_cid) {
break;
}
}