diff options
author | Sam Clegg <sbc@chromium.org> | 2018-01-24 21:45:25 +0000 |
---|---|---|
committer | Sam Clegg <sbc@chromium.org> | 2018-01-24 21:45:25 +0000 |
commit | 67abf5396124384be2ad484abd8660bb10dcd94d (patch) | |
tree | 9235d3b5d22246dac9feff02d6610ae154d09691 /libcxx/test/std/utilities | |
parent | 48bbd63fea6ab4d8c267510d220ccd6f6b9345aa (diff) | |
download | bcm5719-llvm-67abf5396124384be2ad484abd8660bb10dcd94d.tar.gz bcm5719-llvm-67abf5396124384be2ad484abd8660bb10dcd94d.zip |
[WebAssembly] Don't duplicate functions in table output
Previously, we were ensuring that the "output index" for
InputFunctions was unique across all symbols that referenced
a function body, but allowing the same function body to have
multiple table indexes.
Now, we use the same mechanism for table indexes as we already
do for output indexes, ensuring that each InputFunction is only
placed in the table once.
This makes the LLD output table denser and smaller, but should
not change the behaviour.
Note that we still need the `Symbol::TableIndex` member, to
store the table index for function Symbols that don't have an
InputFunction, i.e. for address-taken imports.
Patch by Nicholas Wilson!
Differential Revision: https://reviews.llvm.org/D42476
llvm-svn: 323379
Diffstat (limited to 'libcxx/test/std/utilities')
0 files changed, 0 insertions, 0 deletions