From e16a7d3faf5f0e9145cd3ed5294457590b47b781 Mon Sep 17 00:00:00 2001 From: Sam Clegg Date: Wed, 20 Jun 2018 22:52:33 +0000 Subject: [PATCH] [WebAssembly] Minor cleanup to test inputs. NFC. Update load-undefined.test such that it doesn't rely on ret32 and ret64 having default visibility. Split out from: https://reviews.llvm.org/D48394 Differential Revision: https://reviews.llvm.org/D48403 llvm-svn: 335187 --- lld/test/wasm/Inputs/ret32.ll | 4 +-- lld/test/wasm/Inputs/ret64.ll | 2 +- lld/test/wasm/load-undefined.test | 45 ++++++++++++++++--------------- 3 files changed, 25 insertions(+), 26 deletions(-) diff --git a/lld/test/wasm/Inputs/ret32.ll b/lld/test/wasm/Inputs/ret32.ll index b1ccd64af09d..674b34b66499 100644 --- a/lld/test/wasm/Inputs/ret32.ll +++ b/lld/test/wasm/Inputs/ret32.ll @@ -1,8 +1,6 @@ target triple = "wasm32-unknown-unknown" -; Function Attrs: norecurse nounwind readnone -define i32 @ret32(float %arg) #0 { +define hidden i32 @ret32(float %arg) { entry: ret i32 0 - ; ptrtoint (i32 (float)* @ret32 to i32) } diff --git a/lld/test/wasm/Inputs/ret64.ll b/lld/test/wasm/Inputs/ret64.ll index 034260d55383..c1dd5e55fee0 100644 --- a/lld/test/wasm/Inputs/ret64.ll +++ b/lld/test/wasm/Inputs/ret64.ll @@ -1,6 +1,6 @@ target triple = "wasm32-unknown-unknown" -define i64 @ret64(double %arg) local_unnamed_addr #0 { +define hidden i64 @ret64(double %arg) { entry: ret i64 1 } diff --git a/lld/test/wasm/load-undefined.test b/lld/test/wasm/load-undefined.test index 52a4a049c282..160cb485ac34 100644 --- a/lld/test/wasm/load-undefined.test +++ b/lld/test/wasm/load-undefined.test @@ -5,31 +5,32 @@ ; RUN: llc -filetype=obj %S/Inputs/ret32.ll -o %t2.o ; RUN: llc -filetype=obj %S/Inputs/start.ll -o %t.start.o ; RUN: llvm-ar rcs %t2.a %t2.o -; RUN: wasm-ld %t.start.o %t2.a %t.o -o %t.wasm -u ret32 --undefined ret64 +; RUN: wasm-ld %t.start.o --no-gc-sections %t2.a %t.o -o %t.wasm -u ret32 --undefined ret64 ; RUN: obj2yaml %t.wasm | FileCheck %s +; RUN: wasm-ld %t.start.o --no-gc-sections %t2.a %t.o -o %t2.wasm +; RUN: obj2yaml %t2.wasm | FileCheck %s -check-prefix=NO-LOAD -; CHECK: - Type: EXPORT -; CHECK-NEXT: Exports: -; CHECK-NEXT: - Name: memory -; CHECK-NEXT: Kind: MEMORY -; CHECK-NEXT: Index: 0 -; CHECK-NEXT: - Name: __heap_base -; CHECK-NEXT: Kind: GLOBAL -; CHECK-NEXT: Index: 1 -; CHECK-NEXT: - Name: __data_end -; CHECK-NEXT: Kind: GLOBAL -; CHECK-NEXT: Index: 2 -; CHECK-NEXT: - Name: _start -; CHECK-NEXT: Kind: FUNCTION -; CHECK-NEXT: Index: 1 -; CHECK-NEXT: - Name: ret32 -; CHECK-NEXT: Kind: FUNCTION -; CHECK-NEXT: Index: 2 -; CHECK-NEXT: - Name: ret64 -; CHECK-NEXT: Kind: FUNCTION -; CHECK-NEXT: Index: 3 -; CHECK-NEXT: - Type: +; CHECK: Name: name +; CHECK-NEXT: FunctionNames: +; CHECK-NEXT: - Index: 0 +; CHECK-NEXT: Name: __wasm_call_ctors +; CHECK-NEXT: - Index: 1 +; CHECK-NEXT: Name: _start +; CHECK-NEXT: - Index: 2 +; CHECK-NEXT: Name: ret32 +; CHECK-NEXT: - Index: 3 +; CHECK-NEXT: Name: ret64 +; CHECK-NEXT: ... +; NO-LOAD: Name: name +; NO-LOAD-NEXT: FunctionNames: +; NO-LOAD-NEXT: - Index: 0 +; NO-LOAD-NEXT: Name: __wasm_call_ctors +; NO-LOAD-NEXT: - Index: 1 +; NO-LOAD-NEXT: Name: _start +; NO-LOAD-NEXT: - Index: 2 +; NO-LOAD-NEXT: Name: ret64 +; NO-LOAD-NEXT: ... ; Verify that referencing a symbol that doesn't exist won't work ; RUN: not wasm-ld %t.start.o -o %t.wasm -u symboldoesnotexist 2>&1 | FileCheck -check-prefix=CHECK-UNDEFINED1 %s