forked from OSchip/llvm-project
73 lines
2.5 KiB
YAML
73 lines
2.5 KiB
YAML
# RUN: yaml2obj %s -o %t1.o
|
|
|
|
# RUN: not wasm-ld --no-entry --shared-memory %t1.o -o - 2>&1 | FileCheck %s --check-prefix SHARED-NO-MAX
|
|
|
|
# RUN: not wasm-ld --no-entry --shared-memory --max-memory=100000 %t1.o -o - 2>&1 | FileCheck %s --check-prefix SHARED-UNALIGNED
|
|
|
|
# RUN: not wasm-ld --no-entry --shared-memory --max-memory=131072 --features=bulk-memory %t1.o -o - 2>&1 | FileCheck %s --check-prefix SHARED-NO-ATOMICS
|
|
|
|
# RUN: not wasm-ld --no-entry --shared-memory --max-memory=131072 --features=atomics %t1.o -o - 2>&1 | FileCheck %s --check-prefix SHARED-NO-BULK-MEM
|
|
|
|
# RUN: not wasm-ld --no-entry --features=atomics %t1.o -o - 2>&1 | FileCheck %s --check-prefix ATOMICS-NO-SHARED
|
|
|
|
# RUN: wasm-ld --no-entry --shared-memory --max-memory=131072 --features=atomics,bulk-memory %t1.o -o - | obj2yaml | FileCheck %s --check-prefix SHARED
|
|
|
|
--- !WASM
|
|
FileHeader:
|
|
Version: 0x00000001
|
|
Sections:
|
|
- Type: IMPORT
|
|
Imports:
|
|
- Module: env
|
|
Field: __linear_memory
|
|
Kind: MEMORY
|
|
Memory:
|
|
Initial: 0x00000001
|
|
- Module: env
|
|
Field: __indirect_function_table
|
|
Kind: TABLE
|
|
Table:
|
|
ElemType: FUNCREF
|
|
Limits:
|
|
Initial: 0x00000000
|
|
- Type: DATA
|
|
Segments:
|
|
- SectionOffset: 6
|
|
InitFlags: 0
|
|
Offset:
|
|
Opcode: I32_CONST
|
|
Value: 0
|
|
Content: 68656C6C6F0A00
|
|
- Type: CUSTOM
|
|
Name: linking
|
|
Version: 2
|
|
SymbolTable:
|
|
- Index: 0
|
|
Kind: DATA
|
|
Name: hello_str
|
|
Flags: [ ]
|
|
Segment: 0
|
|
Size: 7
|
|
SegmentInfo:
|
|
- Index: 0
|
|
Name: .rodata.hello_str
|
|
Alignment: 0
|
|
Flags: [ ]
|
|
...
|
|
|
|
# SHARED-NO-MAX: maximum memory too small, 66576 bytes needed{{$}}
|
|
|
|
# SHARED-UNALIGNED: maximum memory must be 65536-byte aligned{{$}}
|
|
|
|
# SHARED-NO-ATOMICS: 'atomics' feature must be used in order to use shared memory
|
|
|
|
# SHARED-NO-BULK-MEM: 'bulk-memory' feature must be used in order to use shared memory
|
|
|
|
# ATOMICS-NO-SHARED: 'atomics' feature is used, so --shared-memory must be used{{$}}
|
|
|
|
# SHARED: - Type: MEMORY
|
|
# SHARED-NEXT: Memories:
|
|
# SHARED-NEXT: - Flags: [ HAS_MAX, IS_SHARED ]
|
|
# SHARED-NEXT: Initial: 0x00000002
|
|
# SHARED-NEXT: Maximum: 0x00000002
|