llvm-project/lld/test/wasm/import-memory.test

51 lines
1.9 KiB
Plaintext

# RUN: llvm-mc -filetype=obj -triple=wasm32-unknown-unknown %p/Inputs/start.s -o %t.start.o
# RUN: wasm-ld --import-memory -o %t.wasm %t.start.o
# RUN: obj2yaml %t.wasm | FileCheck %s
# Verify the --import-memory flag creates a memory import
# CHECK: - Type: IMPORT
# CHECK-NEXT: Imports:
# CHECK-NEXT: - Module: env
# CHECK-NEXT: Field: memory
# CHECK-NEXT: Kind: MEMORY
# CHECK-NEXT: Memory:
# CHECK-NEXT: Minimum: 0x2
# CHECK-NEXT: - Type:
# RUN: wasm-ld --import-memory --initial-memory=262144 \
# RUN: --max-memory=327680 -o %t.max.wasm %t.start.o
# RUN: obj2yaml %t.max.wasm | FileCheck -check-prefix=CHECK-MAX %s
# Verify the --initial-memory and --max-memory arguments work with imports
# CHECK-MAX: - Type: IMPORT
# CHECK-MAX-NEXT: Imports:
# CHECK-MAX-NEXT: - Module: env
# CHECK-MAX-NEXT: Field: memory
# CHECK-MAX-NEXT: Kind: MEMORY
# CHECK-MAX-NEXT: Memory:
# CHECK-MAX-NEXT: Flags: [ HAS_MAX ]
# CHECK-MAX-NEXT: Minimum: 0x4
# CHECK-MAX-NEXT: Maximum: 0x5
# CHECK-MAX-NEXT: - Type:
# RUN: wasm-ld --import-memory --shared-memory --features=atomics,bulk-memory \
# RUN: --initial-memory=262144 --max-memory=327680 -o %t.max.wasm %t.start.o
# RUN: obj2yaml %t.max.wasm | FileCheck -check-prefix=CHECK-SHARED %s
# Verify the --shared-memory flag works with imports
# CHECK-SHARED: - Type: IMPORT
# CHECK-SHARED-NEXT: Imports:
# CHECK-SHARED-NEXT: - Module: env
# CHECK-SHARED-NEXT: Field: memory
# CHECK-SHARED-NEXT: Kind: MEMORY
# CHECK-SHARED-NEXT: Memory:
# CHECK-SHARED-NEXT: Flags: [ HAS_MAX, IS_SHARED ]
# CHECK-SHARED-NEXT: Minimum: 0x4
# CHECK-SHARED-NEXT: Maximum: 0x5
# CHECK-SHARED-NEXT: - Type: