diff options
author | Sam Clegg <sbc@chromium.org> | 2017-05-05 18:12:34 +0000 |
---|---|---|
committer | Sam Clegg <sbc@chromium.org> | 2017-05-05 18:12:34 +0000 |
commit | 03cdd1241fc256bc3daf22da33e76f3afd249c5b (patch) | |
tree | d9269e90a203cfb216b389f2475463be9a303722 /llvm/lib/ObjectYAML/WasmYAML.cpp | |
parent | 7bab73b1f858be6df3db0f09e1415ff126693712 (diff) | |
download | bcm5719-llvm-03cdd1241fc256bc3daf22da33e76f3afd249c5b.tar.gz bcm5719-llvm-03cdd1241fc256bc3daf22da33e76f3afd249c5b.zip |
[WebAssembly] Add ObjectYAML support for wasm name section
Differential Revision: https://reviews.llvm.org/D32841
llvm-svn: 302266
Diffstat (limited to 'llvm/lib/ObjectYAML/WasmYAML.cpp')
-rw-r--r-- | llvm/lib/ObjectYAML/WasmYAML.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
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<WasmYAML::Relocation>::mapping( IO.mapOptional("Addend", Relocation.Addend, 0); } +void MappingTraits<WasmYAML::NameEntry>::mapping( + IO &IO, WasmYAML::NameEntry &NameEntry) { + IO.mapRequired("Index", NameEntry.Index); + IO.mapRequired("Name", NameEntry.Name); +} + void MappingTraits<WasmYAML::LocalDecl>::mapping( IO &IO, WasmYAML::LocalDecl &LocalDecl) { IO.mapRequired("Type", LocalDecl.Type); |