Changeset 264504 in webkit for trunk/Source/JavaScriptCore/bytecompiler
- Timestamp:
- Jul 17, 2020, 4:55:52 AM (5 years ago)
- Location:
- trunk/Source/JavaScriptCore/bytecompiler
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
r264049 r264504 1682 1682 if (value == "undefined") { 1683 1683 rewind(); 1684 Op IsUndefined::emit(this, dst, op.m_value);1684 OpTypeofIsUndefined::emit(this, dst, op.m_value); 1685 1685 return true; 1686 1686 } … … 4425 4425 } 4426 4426 4427 RegisterID* BytecodeGenerator::emitIsUndefined(RegisterID* dst, RegisterID* src)4428 {4429 OpIsUndefined::emit(this, dst, src);4430 return dst;4431 }4432 4433 4427 RegisterID* BytecodeGenerator::emitIsUndefinedOrNull(RegisterID* dst, RegisterID* src) 4434 4428 { -
trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
r263035 r264504 930 930 RegisterID* emitIsConstructor(RegisterID* dst, RegisterID* src); 931 931 RegisterID* emitIsNumber(RegisterID* dst, RegisterID* src); 932 RegisterID* emitIsUndefined(RegisterID* dst, RegisterID* src); 932 RegisterID* emitIsNull(RegisterID* dst, RegisterID* src) { return emitEqualityOp<OpStricteq>(dst, src, emitLoad(nullptr, jsNull())); } 933 RegisterID* emitIsUndefined(RegisterID* dst, RegisterID* src) { return emitEqualityOp<OpStricteq>(dst, src, emitLoad(nullptr, jsUndefined())); } 933 934 RegisterID* emitIsUndefinedOrNull(RegisterID* dst, RegisterID* src); 934 935 RegisterID* emitIsEmpty(RegisterID* dst, RegisterID* src); -
trunk/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
r264059 r264504 3963 3963 generator.emitLoopHint(); 3964 3964 3965 RefPtr<RegisterID> result = generator.emit UnaryOp<OpEqNull>(generator.newTemporary(), propertyName.get());3965 RefPtr<RegisterID> result = generator.emitIsNull(generator.newTemporary(), propertyName.get()); 3966 3966 generator.emitJumpIfTrue(result.get(), loopEnd.get()); 3967 3967 generator.emitHasStructureProperty(result.get(), base.get(), propertyName.get(), enumerator.get()); … … 4004 4004 generator.emitLoopHint(); 4005 4005 4006 RefPtr<RegisterID> result = generator.emit UnaryOp<OpEqNull>(generator.newTemporary(), propertyName.get());4006 RefPtr<RegisterID> result = generator.emitIsNull(generator.newTemporary(), propertyName.get()); 4007 4007 generator.emitJumpIfTrue(result.get(), loopEnd.get()); 4008 4008 … … 4897 4897 4898 4898 Ref<Label> superclassIsNullLabel = generator.newLabel(); 4899 generator.emitJumpIfTrue(generator.emit UnaryOp<OpEqNull>(tempRegister.get(), superclass.get()), superclassIsNullLabel.get());4899 generator.emitJumpIfTrue(generator.emitIsNull(tempRegister.get(), superclass.get()), superclassIsNullLabel.get()); 4900 4900 4901 4901 Ref<Label> superclassIsConstructorLabel = generator.newLabel();
Note:
See TracChangeset
for help on using the changeset viewer.