Commit graph

2 commits

Author SHA1 Message Date
Timo Tijhof
161fab3a9c language: Avoid LCStoreStaticArray::decode() recursion for arrays
In looking at early flame graphs and XHGui profiles, I noticed
code paths like `decode -> decode@2 -> decode@3`, for example for
magic words arrays and special page names.

Rather than storing these as `[a, [a, [a, ..], [a, ..], [a, ..], .. ] ]`
store them instead as `[v, [ .. ]]`. This makes for smaller files,
but more important it further reduces runtime overhead.

Bug: T218207
Change-Id: I492e5d32106ba7fd1b22075cf026fee2e3d1944e
2020-05-04 17:46:04 +01:00
Timo Tijhof
08791d1c1d language: Add test coverage for LCStoreStaticArray
Bug: T218207
Change-Id: I2e4c95139153f206b5317a4efe1e9b324ecce225
2020-05-04 17:34:21 +01:00