brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 6e980dc Raw
54 lines · plain
1; RUN: llc < %s -mtriple=xcore | FileCheck %s2; CHECK-LABEL: f1:3; CHECK: foo r04define i32 @f1() nounwind {5entry:6  %asmtmp = tail call i32 asm sideeffect "foo $0", "=r"() nounwind7  ret i32 %asmtmp8}9 10; CHECK-LABEL: f2:11; CHECK: foo 512define void @f2() nounwind {13entry:14  tail call void asm sideeffect "foo $0", "i"(i32 5) nounwind15  ret void16}17 18; CHECK-LABEL: f3:19; CHECK: foo 4220define void @f3() nounwind {21entry:22  tail call void asm sideeffect "foo ${0:c}", "i"(i32 42) nounwind23  ret void24}25 26; CHECK-LABEL: f4:27; CHECK: foo -9928define void @f4() nounwind {29entry:30  tail call void asm sideeffect "foo ${0:n}", "i"(i32 99) nounwind31  ret void32}33 34@x = external global i3235@y = external global i32, section ".cp.rodata"36 37; CHECK-LABEL: f5:38; CHECK: ldw r0, dp[x]39; CHECK: retsp 040define i32 @f5() nounwind {41entry:42  %asmtmp = call i32 asm "ldw $0, $1", "=r,*m"(ptr elementtype(i32) @x) nounwind43  ret i32 %asmtmp44}45 46; CHECK-LABEL: f6:47; CHECK: ldw r0, cp[y]48; CHECK: retsp 049define i32 @f6() nounwind {50entry:51  %asmtmp = call i32 asm "ldw $0, $1", "=r,*m"(ptr elementtype(i32) @y) nounwind52  ret i32 %asmtmp53}54