1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/CodeGen/SystemZ/asm-05.ll
Ulrich Weigand c3b7f3ba61 [SystemZ] Add support for the "o" inline asm constraint
We don't really need any special handling of "offsettable"
memory addresses, but since some existing code uses inline
asm statements with the "o" constraint, add support for this
constraint for compatibility purposes.

llvm-svn: 317807
2017-11-09 16:31:57 +00:00

23 lines
542 B
LLVM

; Test the "m" asm constraint, which is equivalent to "T".
; Likewise for the "o" asm constraint.
;
; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s
define void @f1(i64 %base) {
; CHECK-LABEL: f1:
; CHECK: blah 0(%r2)
; CHECK: br %r14
%addr = inttoptr i64 %base to i64 *
call void asm "blah $0", "=*m" (i64 *%addr)
ret void
}
define void @f2(i64 %base) {
; CHECK-LABEL: f2:
; CHECK: blah 0(%r2)
; CHECK: br %r14
%addr = inttoptr i64 %base to i64 *
call void asm "blah $0", "=*o" (i64 *%addr)
ret void
}