From 03cdd1241fc256bc3daf22da33e76f3afd249c5b Mon Sep 17 00:00:00 2001 From: Sam Clegg Date: Fri, 5 May 2017 18:12:34 +0000 Subject: [WebAssembly] Add ObjectYAML support for wasm name section Differential Revision: https://reviews.llvm.org/D32841 llvm-svn: 302266 --- llvm/lib/ObjectYAML/WasmYAML.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'llvm/lib/ObjectYAML/WasmYAML.cpp') diff --git a/llvm/lib/ObjectYAML/WasmYAML.cpp b/llvm/lib/ObjectYAML/WasmYAML.cpp index 9b1ff7e5dc1..c5d1b438ee2 100644 --- a/llvm/lib/ObjectYAML/WasmYAML.cpp +++ b/llvm/lib/ObjectYAML/WasmYAML.cpp @@ -50,7 +50,11 @@ static void commonSectionMapping(IO &IO, WasmYAML::Section &Section) { static void sectionMapping(IO &IO, WasmYAML::CustomSection &Section) { commonSectionMapping(IO, Section); IO.mapRequired("Name", Section.Name); - IO.mapRequired("Payload", Section.Payload); + if (Section.Name == "name") { + IO.mapOptional("FunctionNames", Section.FunctionNames); + } else { + IO.mapRequired("Payload", Section.Payload); + } } static void sectionMapping(IO &IO, WasmYAML::TypeSection &Section) { @@ -226,6 +230,12 @@ void MappingTraits::mapping( IO.mapOptional("Addend", Relocation.Addend, 0); } +void MappingTraits::mapping( + IO &IO, WasmYAML::NameEntry &NameEntry) { + IO.mapRequired("Index", NameEntry.Index); + IO.mapRequired("Name", NameEntry.Name); +} + void MappingTraits::mapping( IO &IO, WasmYAML::LocalDecl &LocalDecl) { IO.mapRequired("Type", LocalDecl.Type); -- cgit v1.2.3