Ulrich Weigand | f557d08 | 2016-04-04 12:44:55 +0000 | [diff] [blame] | 1 | ; Test support for the llvm.returnaddress intrinsic. |
2 | ; | ||||
3 | ; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s | ||||
4 | |||||
5 | ; The current function's return address is in the link register. | ||||
6 | define i8* @rt0() norecurse nounwind readnone { | ||||
7 | entry: | ||||
8 | ; CHECK-LABEL: rt0: | ||||
9 | ; CHECK: lgr %r2, %r14 | ||||
10 | ; CHECK: br %r14 | ||||
11 | %0 = tail call i8* @llvm.returnaddress(i32 0) | ||||
12 | ret i8* %0 | ||||
13 | } | ||||
14 | |||||
15 | declare i8* @llvm.returnaddress(i32) nounwind readnone |