Bug 1768648 - Part 1: Compare Compare_RefOrNull as pointers. r=rhunt

Differential Revision: https://phabricator.services.mozilla.com/D152631
This commit is contained in:
André Bargull 2022-07-26 12:58:19 +00:00
Родитель de0cbb7a9f
Коммит 1b520e0210
4 изменённых файлов: 8 добавлений и 4 удалений

Просмотреть файл

@ -102,7 +102,8 @@ void CodeGenerator::visitCompare(LCompare* comp) {
const Register defreg = ToRegister(comp->getDef(0));
if (type == MCompare::Compare_Object || type == MCompare::Compare_Symbol ||
type == MCompare::Compare_UIntPtr) {
type == MCompare::Compare_UIntPtr ||
type == MCompare::Compare_RefOrNull) {
if (right->isConstant()) {
MOZ_ASSERT(type == MCompare::Compare_UIntPtr);
masm.cmpPtrSet(cond, leftreg, Imm32(ToInt32(right)), defreg);

Просмотреть файл

@ -465,7 +465,8 @@ void CodeGenerator::visitCompare(LCompare* comp) {
if (mir->compareType() == MCompare::Compare_Object ||
mir->compareType() == MCompare::Compare_Symbol ||
mir->compareType() == MCompare::Compare_UIntPtr) {
mir->compareType() == MCompare::Compare_UIntPtr ||
mir->compareType() == MCompare::Compare_RefOrNull) {
if (right->isConstant()) {
MOZ_ASSERT(mir->compareType() == MCompare::Compare_UIntPtr);
masm.cmpPtrSet(cond, ToRegister(left), Imm32(ToInt32(right)),

Просмотреть файл

@ -105,7 +105,8 @@ void CodeGenerator::visitCompare(LCompare* comp) {
#ifdef JS_CODEGEN_MIPS64
if (mir->compareType() == MCompare::Compare_Object ||
mir->compareType() == MCompare::Compare_Symbol ||
mir->compareType() == MCompare::Compare_UIntPtr) {
mir->compareType() == MCompare::Compare_UIntPtr ||
mir->compareType() == MCompare::Compare_RefOrNull) {
if (right->isConstant()) {
MOZ_ASSERT(mir->compareType() == MCompare::Compare_UIntPtr);
masm.cmpPtrSet(cond, ToRegister(left), Imm32(ToInt32(right)),

Просмотреть файл

@ -122,7 +122,8 @@ void CodeGeneratorX86Shared::emitCompare(MCompare::CompareType type,
const LAllocation* right) {
#ifdef JS_CODEGEN_X64
if (type == MCompare::Compare_Object || type == MCompare::Compare_Symbol ||
type == MCompare::Compare_UIntPtr) {
type == MCompare::Compare_UIntPtr ||
type == MCompare::Compare_RefOrNull) {
if (right->isConstant()) {
MOZ_ASSERT(type == MCompare::Compare_UIntPtr);
masm.cmpPtr(ToRegister(left), Imm32(ToInt32(right)));