wabt
wabt copied to clipboard
Remove intrusive_list (NFC)
This PR replaces the intrusive_list class with a std::list of unique_ptr's, trying to keep everything else mostly the same.
Reverting to draft -- I think changing ModuleFieldList away from intrusive_list in a way that doesn't introduce a performance regression will take a more involved change. The Module structure has internal pointers pointing inside the ModuleFieldList, and likes to iterate over the ModuleFieldList while appending to it, so a naive replacement with vector isn't safe (and even deque fails -- in the fuzzer only, not in any of the asan spec tests, which spooks me a bit).