blob: 960d2feadeda4c9676deed76f431b3a481b09434 [file] [log] [blame]
Dan Gohman0cb2f672009-09-11 18:36:27 +00001; RUN: llc < %s -march=cellspu > %t1.s
Chris Lattnerb39abf92008-01-18 19:53:43 +00002; RUN: grep brsl %t1.s | count 1
Scott Michel314acc22007-12-19 20:50:49 +00003; RUN: grep brasl %t1.s | count 1
Scott Michel48eef222008-12-09 06:12:03 +00004; RUN: grep stqd %t1.s | count 80
Scott Michel314acc22007-12-19 20:50:49 +00005
6target datalayout = "E-p:32:32:128-f64:64:128-f32:32:128-i64:32:128-i32:32:128-i16:16:128-i8:8:128-i1:8:128-a0:0:128-v128:128:128-s0:128:128"
7target triple = "spu"
8
9define i32 @main() {
10entry:
11 %a = call i32 @stub_1(i32 1, float 0x400921FA00000000)
12 call void @extern_stub_1(i32 %a, i32 4)
13 ret i32 %a
14}
15
16declare void @extern_stub_1(i32, i32)
17
18define i32 @stub_1(i32 %x, float %y) {
19entry:
20 ret i32 0
21}
Scott Michela313fb02008-10-30 01:51:48 +000022
23; vararg call: ensure that all caller-saved registers are spilled to the
24; stack:
25define i32 @stub_2(...) {
26entry:
27 ret i32 0
28}