Files
archived-llvm/test/CodeGen/WebAssembly/i128-returned.ll
Wouter van Oortmerssen 934cbe28f3 [WebAssembly] replaced .param/.result by .functype
Summary:
This makes it easier/cleaner to generate a single signature from
this directive. Also:
- Adds the symbol name, such that we don't depend on the location
  of this directive anymore.
- Actually constructs the signature in the assembler, and make the
  assembler own it.
- Refactor the use of MVT vs ValType in the streamer and assembler
  to require less conversions overall.
- Changed 700 or so tests to use it.

Reviewers: sbc100, dschuff

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

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347228 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 17:10:36 +00:00

20 lines
447 B
LLVM

; RUN: llc < %s -asm-verbose=false | FileCheck %s
; Test that the "returned" attribute works with i128 types.
; PR36128
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
target triple = "wasm32-unknown-unknown"
declare i128 @bar(i128 returned)
define i128 @foo(i128) {
%r = tail call i128 @bar(i128 %0)
ret i128 %r
}
; CHECK-LABEL: foo:
; CHECK-NEXT: .functype foo (i32, i64, i64) -> ()
; CHECK: .functype bar (i32, i64, i64) -> ()