22 lines
799 B
C
22 lines
799 B
C
|
/* 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
|