Index: test/tools/llvm-readobj/wasm-imports.test =================================================================== --- test/tools/llvm-readobj/wasm-imports.test +++ test/tools/llvm-readobj/wasm-imports.test @@ -0,0 +1,48 @@ +RUN: llvm-readobj --symbols %p/Inputs/imports.obj.wasm | FileCheck %s + +CHECK: File: {{.*}}/Inputs/imports.obj.wasm +CHECK-NEXT: Format: WASM +CHECK-NEXT: Arch: wasm32 +CHECK-NEXT: AddressSize: 32bit +CHECK-NEXT: Symbols [ +CHECK-NEXT: Symbol { +CHECK-NEXT: Name: test +CHECK-NEXT: Type: FUNCTION (0x0) +CHECK-NEXT: Flags [ (0x4) +CHECK-NEXT: VISIBILITY_HIDDEN (0x4) +CHECK-NEXT: ] +CHECK-NEXT: ElementIndex: 0x3 +CHECK-NEXT: } +CHECK-NEXT: Symbol { +CHECK-NEXT: Name: foo +CHECK-NEXT: Type: FUNCTION (0x0) +CHECK-NEXT: Flags [ (0x10) +CHECK-NEXT: UNDEFINED (0x10) +CHECK-NEXT: ] +CHECK-NEXT: ImportName: foo +CHECK-NEXT: ImportModule: red +CHECK-NEXT: ElementIndex: 0x0 +CHECK-NEXT: } +CHECK-NEXT: Symbol { +CHECK-NEXT: Name: bar +CHECK-NEXT: Type: FUNCTION (0x0) +CHECK-NEXT: Flags [ (0x50) +CHECK-NEXT: EXPLICIT_NAME (0x40) +CHECK-NEXT: UNDEFINED (0x10) +CHECK-NEXT: ] +CHECK-NEXT: ImportName: green +CHECK-NEXT: ImportModule: env +CHECK-NEXT: ElementIndex: 0x1 +CHECK-NEXT: } +CHECK-NEXT: Symbol { +CHECK-NEXT: Name: qux +CHECK-NEXT: Type: FUNCTION (0x0) +CHECK-NEXT: Flags [ (0x50) +CHECK-NEXT: EXPLICIT_NAME (0x40) +CHECK-NEXT: UNDEFINED (0x10) +CHECK-NEXT: ] +CHECK-NEXT: ImportName: purple +CHECK-NEXT: ImportModule: blue +CHECK-NEXT: ElementIndex: 0x2 +CHECK-NEXT: } +CHECK-NEXT: ] Index: tools/llvm-readobj/WasmDumper.cpp =================================================================== --- tools/llvm-readobj/WasmDumper.cpp +++ tools/llvm-readobj/WasmDumper.cpp @@ -50,6 +50,7 @@ ENUM_ENTRY(VISIBILITY_HIDDEN), ENUM_ENTRY(UNDEFINED), ENUM_ENTRY(EXPORTED), + ENUM_ENTRY(EXPLICIT_NAME), #undef ENUM_ENTRY };