diff options
Diffstat (limited to 'llvm/lib/ObjectYAML/WasmYAML.cpp')
| -rw-r--r-- | llvm/lib/ObjectYAML/WasmYAML.cpp | 27 | 
1 files changed, 18 insertions, 9 deletions
| diff --git a/llvm/lib/ObjectYAML/WasmYAML.cpp b/llvm/lib/ObjectYAML/WasmYAML.cpp index 232d5122004a7..d1aa1181a3445 100644 --- a/llvm/lib/ObjectYAML/WasmYAML.cpp +++ b/llvm/lib/ObjectYAML/WasmYAML.cpp @@ -118,14 +118,14 @@ static void sectionMapping(IO &IO, WasmYAML::MemorySection &Section) {    IO.mapOptional("Memories", Section.Memories);  } -static void sectionMapping(IO &IO, WasmYAML::GlobalSection &Section) { +static void sectionMapping(IO &IO, WasmYAML::EventSection &Section) {    commonSectionMapping(IO, Section); -  IO.mapOptional("Globals", Section.Globals); +  IO.mapOptional("Events", Section.Events);  } -static void sectionMapping(IO &IO, WasmYAML::EventSection &Section) { +static void sectionMapping(IO &IO, WasmYAML::GlobalSection &Section) {    commonSectionMapping(IO, Section); -  IO.mapOptional("Events", Section.Events); +  IO.mapOptional("Globals", Section.Globals);  }  static void sectionMapping(IO &IO, WasmYAML::ExportSection &Section) { @@ -227,16 +227,16 @@ void MappingTraits<std::unique_ptr<WasmYAML::Section>>::mapping(        Section.reset(new WasmYAML::MemorySection());      sectionMapping(IO, *cast<WasmYAML::MemorySection>(Section.get()));      break; -  case wasm::WASM_SEC_GLOBAL: -    if (!IO.outputting()) -      Section.reset(new WasmYAML::GlobalSection()); -    sectionMapping(IO, *cast<WasmYAML::GlobalSection>(Section.get())); -    break;    case wasm::WASM_SEC_EVENT:      if (!IO.outputting())        Section.reset(new WasmYAML::EventSection());      sectionMapping(IO, *cast<WasmYAML::EventSection>(Section.get()));      break; +  case wasm::WASM_SEC_GLOBAL: +    if (!IO.outputting()) +      Section.reset(new WasmYAML::GlobalSection()); +    sectionMapping(IO, *cast<WasmYAML::GlobalSection>(Section.get())); +    break;    case wasm::WASM_SEC_EXPORT:      if (!IO.outputting())        Section.reset(new WasmYAML::ExportSection()); @@ -433,6 +433,11 @@ void MappingTraits<wasm::WasmInitExpr>::mapping(IO &IO,    case wasm::WASM_OPCODE_GLOBAL_GET:      IO.mapRequired("Index", Expr.Value.Global);      break; +  case wasm::WASM_OPCODE_REF_NULL: { +    WasmYAML::ValueType Ty = wasm::WASM_TYPE_EXTERNREF; +    IO.mapRequired("Type", Ty); +    break; +  }    }  } @@ -517,6 +522,7 @@ void ScalarBitSetTraits<WasmYAML::LimitFlags>::bitset(  #define BCase(X) IO.bitSetCase(Value, #X, wasm::WASM_LIMITS_FLAG_##X)    BCase(HAS_MAX);    BCase(IS_SHARED); +  BCase(IS_64);  #undef BCase  } @@ -559,6 +565,8 @@ void ScalarEnumerationTraits<WasmYAML::ValueType>::enumeration(    ECase(F64);    ECase(V128);    ECase(FUNCREF); +  ECase(EXNREF); +  ECase(EXTERNREF);    ECase(FUNC);  #undef ECase  } @@ -583,6 +591,7 @@ void ScalarEnumerationTraits<WasmYAML::Opcode>::enumeration(    ECase(F64_CONST);    ECase(F32_CONST);    ECase(GLOBAL_GET); +  ECase(REF_NULL);  #undef ECase  } | 
