summaryrefslogtreecommitdiff
path: root/src/passes/LocalSubtyping.cpp
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2021-08-09 18:06:36 -0700
committerGitHub <noreply@github.com>2021-08-10 01:06:36 +0000
commit1545bbdaec52c8d81e0e8f74afebe73caadc6828 (patch)
treed0a3f70d31d46324df4022c9b484dbd948aa4682 /src/passes/LocalSubtyping.cpp
parentd1fb1e4742e259ebeec7119518169597e75b0b9d (diff)
downloadbinaryen-1545bbdaec52c8d81e0e8f74afebe73caadc6828.tar.gz
binaryen-1545bbdaec52c8d81e0e8f74afebe73caadc6828.tar.bz2
binaryen-1545bbdaec52c8d81e0e8f74afebe73caadc6828.zip
Improve optimization of call_ref into direct calls (#4068)
First, move the tiny pattern of call-ref-of-ref-func from Directize into OptimizeInstructions. This is important because Directize is a global optimization pass - it looks at the table to see if a CallIndirect can be turned into a direct call. We only run global passes at the end of the pipeline, but we don't need any global data for call-ref of a ref-func, and OptimizeInstructions is the place for such patterns. Second, extend that to also handle fallthrough values. This is less simple, but as call_ref is so inefficient, it's worth doing all we can.
Diffstat (limited to 'src/passes/LocalSubtyping.cpp')
0 files changed, 0 insertions, 0 deletions