mirror of
https://github.com/Samsung/escargot.git
synced 2026-06-22 10:01:50 +00:00
Refactoring type check operations using tag comparison
* type check operations based on tag comparison are updated to be aggresively inlined replacing virtual function calls * Object, String and Symbol use pre-defined tag values while other uses vtable address as its tag value Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
This commit is contained in:
parent
25136408c2
commit
d46a365326
18 changed files with 269 additions and 335 deletions
|
|
@ -81,8 +81,6 @@ ObjectStructurePropertyName ObjectPropertyName::toObjectStructurePropertyNameUin
|
|||
return ObjectStructurePropertyName(state, String::fromDouble(uint));
|
||||
}
|
||||
|
||||
size_t g_objectRareDataTag;
|
||||
|
||||
ObjectRareData::ObjectRareData(Object* obj)
|
||||
{
|
||||
if (obj)
|
||||
|
|
@ -421,9 +419,6 @@ void ObjectPropertyDescriptor::completePropertyDescriptor(ObjectPropertyDescript
|
|||
// 8. Return Desc.
|
||||
}
|
||||
|
||||
|
||||
size_t g_objectTag;
|
||||
|
||||
Object::Object(ExecutionState& state)
|
||||
: m_structure(state.context()->defaultStructureForObject())
|
||||
, m_prototype(state.context()->globalObject()->objectPrototype())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue