summaryrefslogtreecommitdiffstats
path: root/llvm/tools/yaml2obj/yaml2wasm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/yaml2obj/yaml2wasm.cpp')
-rw-r--r--llvm/tools/yaml2obj/yaml2wasm.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/tools/yaml2obj/yaml2wasm.cpp b/llvm/tools/yaml2obj/yaml2wasm.cpp
index 0bd882911f9..9dd7564720a 100644
--- a/llvm/tools/yaml2obj/yaml2wasm.cpp
+++ b/llvm/tools/yaml2obj/yaml2wasm.cpp
@@ -157,6 +157,17 @@ int WasmWriter::writeSectionContent(raw_ostream &OS, WasmYAML::LinkingSection &S
SubSection.Done();
}
+
+ // SEGMENT_NAMES subsection
+ if (Section.SegmentNames.size()) {
+ encodeULEB128(wasm::WASM_SEGMENT_NAMES, OS);
+ encodeULEB128(Section.SegmentNames.size(), SubSection.GetStream());
+ for (const WasmYAML::NameEntry &NameEntry : Section.SegmentNames) {
+ encodeULEB128(NameEntry.Index, SubSection.GetStream());
+ writeStringRef(NameEntry.Name, SubSection.GetStream());
+ }
+ SubSection.Done();
+ }
return 0;
}
OpenPOWER on IntegriCloud