File: 2008-08-06-Alloca.ll

package info (click to toggle)
llvm-3.0 3.0-10
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 75,412 kB
  • sloc: cpp: 468,043; asm: 109,345; ansic: 13,782; sh: 12,935; ml: 4,716; python: 4,351; perl: 2,096; makefile: 1,905; pascal: 1,578; exp: 389; xml: 283; lisp: 187; csh: 117
file content (17 lines) | stat: -rw-r--r-- 631 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
; RUN: llc < %s -march=mips | grep {subu.*sp} | count 2
; RUN: llc < %s -march=mips -regalloc=basic | grep {subu.*sp} | count 2

target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "mipsallegrexel-unknown-psp-elf"

define i32 @twoalloca(i32 %size) nounwind {
entry:
	alloca i8, i32 %size		; <i8*>:0 [#uses=1]
	alloca i8, i32 %size		; <i8*>:1 [#uses=1]
	call i32 @foo( i8* %0 ) nounwind		; <i32>:2 [#uses=1]
	call i32 @foo( i8* %1 ) nounwind		; <i32>:3 [#uses=1]
	add i32 %3, %2		; <i32>:4 [#uses=1]
	ret i32 %4
}

declare i32 @foo(i8*)