OVMS3/OVMS.V3/components/duktape/config/header-snippets/object_layout.h.in

22 lines
799 B
C
Raw Normal View History

/* Object property allocation layout has implications for memory and code
* footprint and generated code size/speed. The best layout also depends
* on whether the platform has alignment requirements or benefits from
* having mostly aligned accesses.
*/
#undef DUK_USE_HOBJECT_LAYOUT_1
#undef DUK_USE_HOBJECT_LAYOUT_2
#undef DUK_USE_HOBJECT_LAYOUT_3
#if (DUK_USE_ALIGN_BY == 1)
/* On platforms without any alignment issues, layout 1 is preferable
* because it compiles to slightly less code and provides direct access
* to property keys.
*/
#define DUK_USE_HOBJECT_LAYOUT_1
#else
/* On other platforms use layout 2, which requires some padding but
* is a bit more natural than layout 3 in ordering the entries. Layout
* 3 is currently not used.
*/
#define DUK_USE_HOBJECT_LAYOUT_2
#endif