summaryrefslogtreecommitdiff
path: root/src/wasm2js.h
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2020-01-06 11:50:17 -0800
committerGitHub <noreply@github.com>2020-01-06 11:50:17 -0800
commit6c91da0888c4b515c6875ac586fbe938ab80278f (patch)
treeb32a0dac0c90172be4ffb9f99bf271240b8f2139 /src/wasm2js.h
parent240e1e3ed3eb328f574ce26ddb24819796a5e6e3 (diff)
downloadbinaryen-6c91da0888c4b515c6875ac586fbe938ab80278f.tar.gz
binaryen-6c91da0888c4b515c6875ac586fbe938ab80278f.tar.bz2
binaryen-6c91da0888c4b515c6875ac586fbe938ab80278f.zip
Skip liveness analysis if too many locals (#2560)
The analysis currently uses a dense matrix. If there are >65535 locals then the indexes don't fit in a 32-bit type like a wasm32 index, which led to overflows and incorrect behavior. To avoid that, don't run passes with liveness analysis for now if they have that many locals. Note that skipping coalesce-locals (the main liveness-using pass) is not that bad, as we run it more than once, and it's likely that even if the first must be skipped, we can still run the second (which is after simplify- and reorder-locals, which can greatly reduce the local count). Fixes #2559
Diffstat (limited to 'src/wasm2js.h')
0 files changed, 0 insertions, 0 deletions