These indexes are useful because they are not always zero based and functions and globals are referenced elsewhere by their index. This matches what we already do for the type index space. Differential Revision: https://reviews.llvm.org/D41877 llvm-svn: 322121
72 lines
2.3 KiB
YAML
72 lines
2.3 KiB
YAML
# RUN: yaml2obj %s | obj2yaml | FileCheck %s
|
|
--- !WASM
|
|
FileHeader:
|
|
Version: 0x00000001
|
|
Sections:
|
|
- Type: TYPE
|
|
Signatures:
|
|
- Index: 0
|
|
ReturnType: I32
|
|
ParamTypes:
|
|
- I32
|
|
- Type: IMPORT
|
|
Imports:
|
|
- Module: foo
|
|
Field: imported_function
|
|
Kind: FUNCTION
|
|
SigIndex: 0
|
|
- Module: fiz
|
|
Field: imported_global
|
|
Kind: GLOBAL
|
|
GlobalType: I32
|
|
GlobalMutable: false
|
|
- Module: foo
|
|
Field: imported_memory
|
|
Kind: MEMORY
|
|
Memory:
|
|
Flags: [ HAS_MAX ]
|
|
Initial: 0x00000010
|
|
Maximum: 0x00000011
|
|
- Module: foo
|
|
Field: imported_table
|
|
Kind: TABLE
|
|
Table:
|
|
ElemType: ANYFUNC
|
|
Limits:
|
|
Flags: [ HAS_MAX ]
|
|
Initial: 0x00000020
|
|
Maximum: 0x00000022
|
|
...
|
|
# CHECK: --- !WASM
|
|
# CHECK: FileHeader:
|
|
# CHECK: Version: 0x00000001
|
|
# CHECK: Sections:
|
|
# CHECK: - Type: IMPORT
|
|
# CHECK: Imports:
|
|
# CHECK: - Module: foo
|
|
# CHECK: Field: imported_function
|
|
# CHECK: Kind: FUNCTION
|
|
# CHECK: SigIndex: 0
|
|
# CHECK: - Module: fiz
|
|
# CHECK: Field: imported_global
|
|
# CHECK: Kind: GLOBAL
|
|
# CHECK: GlobalType: I32
|
|
# CHECK: GlobalMutable: false
|
|
# CHECK: - Module: foo
|
|
# CHECK: Field: imported_memory
|
|
# CHECK: Kind: MEMORY
|
|
# CHECK: Memory:
|
|
# CHECK: Flags: [ HAS_MAX ]
|
|
# CHECK: Initial: 0x00000010
|
|
# CHECK: Maximum: 0x00000011
|
|
# CHECK: - Module: foo
|
|
# CHECK: Field: imported_table
|
|
# CHECK: Kind: TABLE
|
|
# CHECK: Table:
|
|
# CHECK: ElemType: ANYFUNC
|
|
# CHECK: Limits:
|
|
# CHECK: Flags: [ HAS_MAX ]
|
|
# CHECK: Initial: 0x00000020
|
|
# CHECK: Maximum: 0x00000022
|
|
# CHECK: ...
|