llvm-project/lld/test/wasm/import-memory.test
Thomas Lively 6a6f28f7b7 [WebAssembly] Use passive segments by default when memory is shared
Summary:
This change makes it so that passing --shared-memory is all a user
needs to do to get proper multithreaded code. This default can still
be explicitly overridden for any reason using --passive-segments and
--active-segments.

Reviewers: sbc100, quantum

Subscribers: dschuff, jgravelle-google, aheejin, sunfish, jfb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64950

llvm-svn: 366504
2019-07-18 21:50:24 +00:00

51 lines
1.9 KiB
Plaintext

# RUN: llc -filetype=obj %p/Inputs/start.ll -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: Initial: 0x00000002
# 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: Initial: 0x00000004
# CHECK-MAX-NEXT: Maximum: 0x00000005
# CHECK-MAX-NEXT: - Type:
# RUN: wasm-ld --import-memory --shared-memory --active-segments \
# 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: Initial: 0x00000004
# CHECK-SHARED-NEXT: Maximum: 0x00000005
# CHECK-SHARED-NEXT: - Type: