Skip to content

Commit

Permalink
Rework internal methods
Browse files Browse the repository at this point in the history
- Created virtual function tables for internal methods and call the specialized internal function for the object instead of the generic one which operates based on a switch by the object type
- Generalize ecma_property_descriptor_t to handle virtual and general properties
- Separate the new virtual internal methods into the corresponding .c file

Co-authored-by: Robert Fancsik robert.fancsik@h-lab.eu
JerryScript-DCO-1.0-Signed-off-by: Adam Szilagyi aszilagy@inf.u-szeged.hu
  • Loading branch information
szilagyiadam authored and Robert Fancsik committed Jan 20, 2022
1 parent 79fd540 commit 5ac777e
Show file tree
Hide file tree
Showing 76 changed files with 7,156 additions and 6,333 deletions.
10 changes: 10 additions & 0 deletions jerry-core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,10 @@ set(SOURCE_CORE_FILES
ecma/operations/ecma-bigint-object.c
ecma/operations/ecma-bigint.c
ecma/operations/ecma-boolean-object.c
ecma/operations/ecma-bound-function.c
ecma/operations/ecma-class-object.c
ecma/operations/ecma-comparison.c
ecma/operations/ecma-constructor-function.c
ecma/operations/ecma-container-object.c
ecma/operations/ecma-conversion.c
ecma/operations/ecma-dataview-object.c
Expand All @@ -283,9 +286,11 @@ set(SOURCE_CORE_FILES
ecma/operations/ecma-iterator-object.c
ecma/operations/ecma-jobqueue.c
ecma/operations/ecma-lex-env.c
ecma/operations/ecma-native-function.c
ecma/operations/ecma-number-object.c
ecma/operations/ecma-objects-general.c
ecma/operations/ecma-objects.c
ecma/operations/ecma-ordinary-object.c
ecma/operations/ecma-promise-object.c
ecma/operations/ecma-proxy-object.c
ecma/operations/ecma-reference.c
Expand Down Expand Up @@ -451,7 +456,10 @@ if(ENABLE_AMALGAM)
ecma/operations/ecma-bigint-object.h
ecma/operations/ecma-bigint.h
ecma/operations/ecma-boolean-object.h
ecma/operations/ecma-bound-function.h
ecma/operations/ecma-class-object.h
ecma/operations/ecma-comparison.h
ecma/operations/ecma-constructor-function.h
ecma/operations/ecma-container-object.h
ecma/operations/ecma-conversion.h
ecma/operations/ecma-dataview-object.h
Expand All @@ -461,9 +469,11 @@ if(ENABLE_AMALGAM)
ecma/operations/ecma-iterator-object.h
ecma/operations/ecma-jobqueue.h
ecma/operations/ecma-lex-env.h
ecma/operations/ecma-native-function.h
ecma/operations/ecma-number-object.h
ecma/operations/ecma-objects-general.h
ecma/operations/ecma-objects.h
ecma/operations/ecma-ordinary-object.h
ecma/operations/ecma-promise-object.h
ecma/operations/ecma-proxy-object.h
ecma/operations/ecma-reference.h
Expand Down

0 comments on commit 5ac777e

Please sign in to comment.