~pali/+junk/llvm-toolchain-3.7

« back to all changes in this revision

Viewing changes to test/CodeGen/ARM/2007-03-13-InstrSched.ll

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2015-07-15 17:51:08 UTC
  • Revision ID: package-import@ubuntu.com-20150715175108-l8mynwovkx4zx697
Tags: upstream-3.7~+rc2
ImportĀ upstreamĀ versionĀ 3.7~+rc2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
; REQUIRES: asserts
 
2
; RUN: llc < %s -mtriple=arm-apple-darwin -relocation-model=pic \
 
3
; RUN:   -mattr=+v6 | grep r9
 
4
; RUN: llc < %s -mtriple=arm-apple-darwin -relocation-model=pic \
 
5
; RUN:   -mattr=+v6 -arm-reserve-r9 -ifcvt-limit=0 -stats 2>&1 | grep asm-printer
 
6
; | grep 35
 
7
 
 
8
define void @test(i32 %tmp56222, i32 %tmp36224, i32 %tmp46223, i32 %i.0196.0.ph, i32 %tmp8, i32* %tmp1011, i32** %tmp1, i32* %d2.1.out, i32* %d3.1.out, i32* %d0.1.out, i32* %d1.1.out) {
 
9
newFuncRoot:
 
10
        br label %bb74
 
11
 
 
12
bb78.exitStub:          ; preds = %bb74
 
13
        store i32 %d2.1, i32* %d2.1.out
 
14
        store i32 %d3.1, i32* %d3.1.out
 
15
        store i32 %d0.1, i32* %d0.1.out
 
16
        store i32 %d1.1, i32* %d1.1.out
 
17
        ret void
 
18
 
 
19
bb74:           ; preds = %bb26, %newFuncRoot
 
20
        %fp.1.rec = phi i32 [ 0, %newFuncRoot ], [ %tmp71.rec, %bb26 ]          ; <i32> [#uses=3]
 
21
        %fm.1.in = phi i32* [ %tmp71, %bb26 ], [ %tmp1011, %newFuncRoot ]               ; <i32*> [#uses=1]
 
22
        %d0.1 = phi i32 [ %tmp44, %bb26 ], [ 8192, %newFuncRoot ]               ; <i32> [#uses=2]
 
23
        %d1.1 = phi i32 [ %tmp54, %bb26 ], [ 8192, %newFuncRoot ]               ; <i32> [#uses=2]
 
24
        %d2.1 = phi i32 [ %tmp64, %bb26 ], [ 8192, %newFuncRoot ]               ; <i32> [#uses=2]
 
25
        %d3.1 = phi i32 [ %tmp69, %bb26 ], [ 8192, %newFuncRoot ]               ; <i32> [#uses=2]
 
26
        %fm.1 = load i32, i32* %fm.1.in         ; <i32> [#uses=4]
 
27
        icmp eq i32 %fp.1.rec, %tmp8            ; <i1>:0 [#uses=1]
 
28
        br i1 %0, label %bb78.exitStub, label %bb26
 
29
 
 
30
bb26:           ; preds = %bb74
 
31
        %tmp28 = getelementptr i32*, i32** %tmp1, i32 %fp.1.rec         ; <i32**> [#uses=1]
 
32
        %tmp30 = load i32*, i32** %tmp28                ; <i32*> [#uses=4]
 
33
        %tmp33 = getelementptr i32, i32* %tmp30, i32 %i.0196.0.ph               ; <i32*> [#uses=1]
 
34
        %tmp34 = load i32, i32* %tmp33          ; <i32> [#uses=1]
 
35
        %tmp38 = getelementptr i32, i32* %tmp30, i32 %tmp36224          ; <i32*> [#uses=1]
 
36
        %tmp39 = load i32, i32* %tmp38          ; <i32> [#uses=1]
 
37
        %tmp42 = mul i32 %tmp34, %fm.1          ; <i32> [#uses=1]
 
38
        %tmp44 = add i32 %tmp42, %d0.1          ; <i32> [#uses=1]
 
39
        %tmp48 = getelementptr i32, i32* %tmp30, i32 %tmp46223          ; <i32*> [#uses=1]
 
40
        %tmp49 = load i32, i32* %tmp48          ; <i32> [#uses=1]
 
41
        %tmp52 = mul i32 %tmp39, %fm.1          ; <i32> [#uses=1]
 
42
        %tmp54 = add i32 %tmp52, %d1.1          ; <i32> [#uses=1]
 
43
        %tmp58 = getelementptr i32, i32* %tmp30, i32 %tmp56222          ; <i32*> [#uses=1]
 
44
        %tmp59 = load i32, i32* %tmp58          ; <i32> [#uses=1]
 
45
        %tmp62 = mul i32 %tmp49, %fm.1          ; <i32> [#uses=1]
 
46
        %tmp64 = add i32 %tmp62, %d2.1          ; <i32> [#uses=1]
 
47
        %tmp67 = mul i32 %tmp59, %fm.1          ; <i32> [#uses=1]
 
48
        %tmp69 = add i32 %tmp67, %d3.1          ; <i32> [#uses=1]
 
49
        %tmp71.rec = add i32 %fp.1.rec, 1               ; <i32> [#uses=2]
 
50
        %tmp71 = getelementptr i32, i32* %tmp1011, i32 %tmp71.rec               ; <i32*> [#uses=1]
 
51
        br label %bb74
 
52
}