mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-02 13:58:40 +09:00
Issue #1240 - Part 10 - Implement minimal Ion support for BigInt. https://bugzilla.mozilla.org/show_bug.cgi?id=1507484 Implement IC support for BigInt. https://bugzilla.mozilla.org/show_bug.cgi?id=1522431
This commit is contained in:
parent
4aa193b16b
commit
2d5ee3c457
39 changed files with 448 additions and 43 deletions
|
|
@ -1236,15 +1236,27 @@ AssertValidSymbolPtr(JSContext* cx, JS::Symbol* sym)
|
|||
MOZ_ASSERT(sym->getAllocKind() == gc::AllocKind::SYMBOL);
|
||||
}
|
||||
|
||||
void
|
||||
AssertValidBigIntPtr(JSContext* cx, JS::BigInt* bi) {
|
||||
// FIXME: check runtime?
|
||||
MOZ_ASSERT(cx->zone() == bi->zone());
|
||||
MOZ_ASSERT(bi->isAligned());
|
||||
MOZ_ASSERT(bi->isTenured());
|
||||
MOZ_ASSERT(bi->getAllocKind() == gc::AllocKind::BIGINT);
|
||||
}
|
||||
|
||||
void
|
||||
AssertValidValue(JSContext* cx, Value* v)
|
||||
{
|
||||
if (v->isObject())
|
||||
if (v->isObject()) {
|
||||
AssertValidObjectPtr(cx, &v->toObject());
|
||||
else if (v->isString())
|
||||
} else if (v->isString()) {
|
||||
AssertValidStringPtr(cx, v->toString());
|
||||
else if (v->isSymbol())
|
||||
} else if (v->isSymbol()) {
|
||||
AssertValidSymbolPtr(cx, v->toSymbol());
|
||||
} else if (v->isBigInt()) {
|
||||
AssertValidBigIntPtr(cx, v->toBigInt());
|
||||
}
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue