49 lines · plain
1; RUN: llc -O0 -filetype=obj %s -o %t.o2 3; RUN: wasm-ld -o %t.wasm %t.o4; RUN: obj2yaml %t.wasm | FileCheck %s5 6; RUN: wasm-ld --export-all -o %t.wasm %t.o7; RUN: obj2yaml %t.wasm | FileCheck %s -check-prefix=EXPORT8 9; RUN: wasm-ld --export-all --no-gc-sections -o %t.wasm %t.o10; RUN: obj2yaml %t.wasm | FileCheck %s -check-prefix=EXPORT11 12; Verify the --export-all flag exports hidden symbols13 14target triple = "wasm32-unknown-unknown"15 16define internal void @internal_func() local_unnamed_addr {17entry:18 ret void19}20 21define hidden void @bar() local_unnamed_addr {22entry:23 ret void24}25 26define hidden void @foo() local_unnamed_addr {27entry:28 ret void29}30 31define hidden void @_start() local_unnamed_addr {32entry:33 call void @foo()34 call void @internal_func()35 ret void36}37 38; CHECK: - Type: EXPORT39; CHECK: - Name: _start40; CHECK-NOT: - Name: bar41; CHECK-NOT: - Name: foo42; CHECK-NOT: - Name: internal_func43 44; EXPORT: - Type: EXPORT45; EXPORT: - Name: bar46; EXPORT: - Name: foo47; EXPORT: - Name: _start48; EXPORT-NOT: - Name: internal_func49