Home | History | Annotate | Download | only in MSP430
      1 ; RUN: llc -march=msp430 < %s
      2 %VeryLarge = type { i8, i32, i32, i32, i32, i32, i32, i32, i32, i32 }
      3 
      4 ; intentionally cause a spill
      5 define void @inc(%VeryLarge* byval align 1 %s) {
      6 entry:
      7   %p0 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 0
      8   %0 = load i8, i8* %p0
      9   %p1 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 1
     10   %1 = load i32, i32* %p1
     11   %p2 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 2
     12   %2 = load i32, i32* %p2
     13   %p3 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 3
     14   %3 = load i32, i32* %p3
     15   %p4 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 4
     16   %4 = load i32, i32* %p4
     17   %p5 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 5
     18   %5 = load i32, i32* %p5
     19   %p6 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 6
     20   %6 = load i32, i32* %p6
     21   %p7 = getelementptr inbounds %VeryLarge, %VeryLarge* %s, i32 0, i32 7
     22   %7 = load i32, i32* %p7
     23   %add = add i8 %0, 1
     24   store i8 %add, i8* %p0
     25   %add2 = add i32 %1, 2
     26   store i32 %add2, i32* %p1
     27   %add3 = add i32 %2, 3
     28   store i32 %add3, i32* %p2
     29   %add4 = add i32 %3, 4
     30   store i32 %add4, i32* %p3
     31   %add5 = add i32 %4, 5
     32   store i32 %add5, i32* %p4
     33   %add6 = add i32 %5, 6
     34   store i32 %add6, i32* %p5
     35   %add7 = add i32 %6, 7
     36   store i32 %add7, i32* %p6
     37   %add8 = add i32 %7, 8
     38   store i32 %add8, i32* %p7
     39   ret void
     40 }
     41