blob: 0d5f6a6aeb97bed7640aa96030d6549034d9338e [file] [log] [blame]
Rafael Espindolae6f37b92014-02-13 15:33:35 +00001; RUN: llc < %s -march=ppc32 -no-integrated-as -verify-machineinstrs | FileCheck %s
Chris Lattner57382062006-11-02 01:45:28 +00002
Jakob Stoklund Olesenc7579cd2012-09-04 18:38:28 +00003; CHECK-NOT: mr
Tanya Lattnera99d8b52008-02-19 08:07:33 +00004define i32 @test(i32 %Y, i32 %X) {
Chris Lattner57382062006-11-02 01:45:28 +00005entry:
Tanya Lattnera99d8b52008-02-19 08:07:33 +00006 %tmp = tail call i32 asm "foo $0", "=r"( ) ; <i32> [#uses=1]
7 ret i32 %tmp
Chris Lattner57382062006-11-02 01:45:28 +00008}
9
Tanya Lattnera99d8b52008-02-19 08:07:33 +000010define i32 @test2(i32 %Y, i32 %X) {
Chris Lattner57382062006-11-02 01:45:28 +000011entry:
Tanya Lattnera99d8b52008-02-19 08:07:33 +000012 %tmp1 = tail call i32 asm "foo $0, $1", "=r,r"( i32 %X ) ; <i32> [#uses=1]
13 ret i32 %tmp1
Chris Lattner57382062006-11-02 01:45:28 +000014}
Tanya Lattnera99d8b52008-02-19 08:07:33 +000015
Jakob Stoklund Olesenc7579cd2012-09-04 18:38:28 +000016; CHECK: test3
17define i32 @test3(i32 %Y, i32 %X) {
18entry:
19 %tmp1 = tail call { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } asm sideeffect "foo $0, $1", "=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,=r,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19"( i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y, i32 %X, i32 %Y ) ; <i32> [#uses=1]
20 ret i32 1
21}