[InstCombine] Signed saturation patterns
[llvm-core.git] / test / CodeGen / Mips / micromips-load-effective-address.ll
blob470458098212562d5c8ed9adea6bd450c26274dc
1 ; RUN: llc %s -march=mipsel -mattr=micromips -filetype=asm \
2 ; RUN: -relocation-model=pic -O3 -o - | FileCheck %s
4 define i32 @sum(i32* %x, i32* %y) nounwind uwtable {
5 entry:
6   %x.addr = alloca i32*, align 8
7   %y.addr = alloca i32*, align 8
8   store i32* %x, i32** %x.addr, align 8
9   store i32* %y, i32** %y.addr, align 8
10   %0 = load i32*, i32** %x.addr, align 8
11   %1 = load i32, i32* %0, align 4
12   %2 = load i32*, i32** %y.addr, align 8
13   %3 = load i32, i32* %2, align 4
14   %add = add nsw i32 %1, %3
15   ret i32 %add
18 define i32 @main() nounwind uwtable {
19 entry:
20   %retval = alloca i32, align 4
21   %x = alloca i32, align 4
22   %y = alloca i32, align 4
23   store i32 0, i32* %retval
24   %call = call i32 @sum(i32* %x, i32* %y)
25   ret i32 %call
28 ; CHECK: addiu ${{[0-9]+}}, $sp, {{[0-9]+}}
29 ; CHECK: addiu ${{[0-9]+}}, $sp, {{[0-9]+}}