~ubuntu-branches/ubuntu/maverick/clamav/maverick-updates

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/test/CodeGen/Thumb2/2009-08-04-CoalescerBug.ll

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2010-12-17 12:30:20 UTC
  • mfrom: (97.1.1 maverick-proposed)
  • Revision ID: james.westby@ubuntu.com-20101217123020-o02fhyzykv5z98ri
Tags: 0.96.5+dfsg-1ubuntu1.10.10.1
* Microversion update for Maverick (LP: #691414)
  - Improved database login times
  - Expanded use of new bytecode signatures
  - Other bugfixes/improvements

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
; RUN: llc < %s -mtriple=thumbv7-apple-darwin -mattr=+neon -arm-use-neon-fp -relocation-model=pic -disable-fp-elim
2
 
 
3
 
        type { %struct.GAP }            ; type %0
4
 
        type { i16, i8, i8 }            ; type %1
5
 
        type { [2 x i32], [2 x i32] }           ; type %2
6
 
        type { %struct.rec* }           ; type %3
7
 
        type { i8, i8, i16, i8, i8, i8, i8 }            ; type %4
8
 
        %struct.FILE = type { i8*, i32, i32, i16, i16, %struct.__sbuf, i32, i8*, i32 (i8*)*, i32 (i8*, i8*, i32)*, i64 (i8*, i64, i32)*, i32 (i8*, i8*, i32)*, %struct.__sbuf, %struct.__sFILEX*, i32, [3 x i8], [1 x i8], %struct.__sbuf, i32, i64 }
9
 
        %struct.FILE_POS = type { i8, i8, i16, i32 }
10
 
        %struct.FIRST_UNION = type { %struct.FILE_POS }
11
 
        %struct.FOURTH_UNION = type { %struct.STYLE }
12
 
        %struct.GAP = type { i8, i8, i16 }
13
 
        %struct.LIST = type { %struct.rec*, %struct.rec* }
14
 
        %struct.SECOND_UNION = type { %1 }
15
 
        %struct.STYLE = type { %0, %0, i16, i16, i32 }
16
 
        %struct.THIRD_UNION = type { %2 }
17
 
        %struct.__sFILEX = type opaque
18
 
        %struct.__sbuf = type { i8*, i32 }
19
 
        %struct.head_type = type { [2 x %struct.LIST], %struct.FIRST_UNION, %struct.SECOND_UNION, %struct.THIRD_UNION, %struct.FOURTH_UNION, %struct.rec*, %3, %struct.rec*, %struct.rec*, %struct.rec*, %struct.rec*, %struct.rec*, %struct.rec*, %struct.rec*, %struct.rec*, i32 }
20
 
        %struct.rec = type { %struct.head_type }
21
 
@.str24239 = external constant [20 x i8], align 1               ; <[20 x i8]*> [#uses=1]
22
 
@no_file_pos = external global %4               ; <%4*> [#uses=1]
23
 
@zz_tmp = external global %struct.rec*          ; <%struct.rec**> [#uses=1]
24
 
@.str81872 = external constant [10 x i8], align 1               ; <[10 x i8]*> [#uses=1]
25
 
@out_fp = external global %struct.FILE*         ; <%struct.FILE**> [#uses=2]
26
 
@cpexists = external global i32         ; <i32*> [#uses=2]
27
 
@.str212784 = external constant [17 x i8], align 1              ; <[17 x i8]*> [#uses=1]
28
 
@.str1822946 = external constant [8 x i8], align 1              ; <[8 x i8]*> [#uses=1]
29
 
@.str1842948 = external constant [11 x i8], align 1             ; <[11 x i8]*> [#uses=1]
30
 
 
31
 
declare arm_apcscc i32 @fprintf(%struct.FILE* nocapture, i8* nocapture, ...) nounwind
32
 
 
33
 
declare arm_apcscc i32 @"\01_fwrite"(i8*, i32, i32, i8*)
34
 
 
35
 
declare arm_apcscc %struct.FILE* @OpenIncGraphicFile(i8*, i8 zeroext, %struct.rec** nocapture, %struct.FILE_POS*, i32* nocapture) nounwind
36
 
 
37
 
declare arm_apcscc void @Error(i32, i32, i8*, i32, %struct.FILE_POS*, ...) nounwind
38
 
 
39
 
declare arm_apcscc i8* @fgets(i8*, i32, %struct.FILE* nocapture) nounwind
40
 
 
41
 
define arm_apcscc void @PS_PrintGraphicInclude(%struct.rec* %x, i32 %colmark, i32 %rowmark) nounwind {
42
 
entry:
43
 
        br label %bb5
44
 
 
45
 
bb5:            ; preds = %bb5, %entry
46
 
        %.pn = phi %struct.rec* [ %y.0, %bb5 ], [ undef, %entry ]               ; <%struct.rec*> [#uses=1]
47
 
        %y.0.in = getelementptr %struct.rec* %.pn, i32 0, i32 0, i32 0, i32 1, i32 0            ; <%struct.rec**> [#uses=1]
48
 
        %y.0 = load %struct.rec** %y.0.in               ; <%struct.rec*> [#uses=2]
49
 
        br i1 undef, label %bb5, label %bb6
50
 
 
51
 
bb6:            ; preds = %bb5
52
 
        %0 = call arm_apcscc  %struct.FILE* @OpenIncGraphicFile(i8* undef, i8 zeroext 0, %struct.rec** undef, %struct.FILE_POS* null, i32* undef) nounwind              ; <%struct.FILE*> [#uses=1]
53
 
        br i1 false, label %bb.i, label %FontHalfXHeight.exit
54
 
 
55
 
bb.i:           ; preds = %bb6
56
 
        br label %FontHalfXHeight.exit
57
 
 
58
 
FontHalfXHeight.exit:           ; preds = %bb.i, %bb6
59
 
        br i1 undef, label %bb.i1, label %FontSize.exit
60
 
 
61
 
bb.i1:          ; preds = %FontHalfXHeight.exit
62
 
        br label %FontSize.exit
63
 
 
64
 
FontSize.exit:          ; preds = %bb.i1, %FontHalfXHeight.exit
65
 
        %1 = load i32* undef, align 4           ; <i32> [#uses=1]
66
 
        %2 = icmp ult i32 0, undef              ; <i1> [#uses=1]
67
 
        br i1 %2, label %bb.i5, label %FontName.exit
68
 
 
69
 
bb.i5:          ; preds = %FontSize.exit
70
 
        call arm_apcscc  void (i32, i32, i8*, i32, %struct.FILE_POS*, ...)* @Error(i32 1, i32 2, i8* getelementptr ([20 x i8]* @.str24239, i32 0, i32 0), i32 0, %struct.FILE_POS* bitcast (%4* @no_file_pos to %struct.FILE_POS*), i8* getelementptr ([10 x i8]* @.str81872, i32 0, i32 0)) nounwind
71
 
        br label %FontName.exit
72
 
 
73
 
FontName.exit:          ; preds = %bb.i5, %FontSize.exit
74
 
        %3 = call arm_apcscc  i32 (%struct.FILE*, i8*, ...)* @fprintf(%struct.FILE* undef, i8* getelementptr ([8 x i8]* @.str1822946, i32 0, i32 0), i32 %1, i8* undef) nounwind                ; <i32> [#uses=0]
75
 
        %4 = call arm_apcscc  i32 @"\01_fwrite"(i8* getelementptr ([11 x i8]* @.str1842948, i32 0, i32 0), i32 1, i32 10, i8* undef) nounwind           ; <i32> [#uses=0]
76
 
        %5 = sub i32 %colmark, undef            ; <i32> [#uses=1]
77
 
        %6 = sub i32 %rowmark, undef            ; <i32> [#uses=1]
78
 
        %7 = load %struct.FILE** @out_fp, align 4               ; <%struct.FILE*> [#uses=1]
79
 
        %8 = call arm_apcscc  i32 (%struct.FILE*, i8*, ...)* @fprintf(%struct.FILE* %7, i8* getelementptr ([17 x i8]* @.str212784, i32 0, i32 0), i32 %5, i32 %6) nounwind              ; <i32> [#uses=0]
80
 
        store i32 0, i32* @cpexists, align 4
81
 
        %9 = getelementptr %struct.rec* %y.0, i32 0, i32 0, i32 3, i32 0, i32 0, i32 1          ; <i32*> [#uses=1]
82
 
        %10 = load i32* %9, align 4             ; <i32> [#uses=1]
83
 
        %11 = sub i32 0, %10            ; <i32> [#uses=1]
84
 
        %12 = load %struct.FILE** @out_fp, align 4              ; <%struct.FILE*> [#uses=1]
85
 
        %13 = call arm_apcscc  i32 (%struct.FILE*, i8*, ...)* @fprintf(%struct.FILE* %12, i8* getelementptr ([17 x i8]* @.str212784, i32 0, i32 0), i32 undef, i32 %11) nounwind                ; <i32> [#uses=0]
86
 
        store i32 0, i32* @cpexists, align 4
87
 
        br label %bb100.outer.outer
88
 
 
89
 
bb100.outer.outer:              ; preds = %bb79.critedge, %bb1.i3, %FontName.exit
90
 
        %x_addr.0.ph.ph = phi %struct.rec* [ %x, %FontName.exit ], [ null, %bb79.critedge ], [ null, %bb1.i3 ]          ; <%struct.rec*> [#uses=1]
91
 
        %14 = getelementptr %struct.rec* %x_addr.0.ph.ph, i32 0, i32 0, i32 1, i32 0            ; <%struct.FILE_POS*> [#uses=0]
92
 
        br label %bb100.outer
93
 
 
94
 
bb.i80:         ; preds = %bb3.i85
95
 
        br i1 undef, label %bb2.i84, label %bb2.i51
96
 
 
97
 
bb2.i84:                ; preds = %bb100.outer, %bb.i80
98
 
        br i1 undef, label %bb3.i77, label %bb3.i85
99
 
 
100
 
bb3.i85:                ; preds = %bb2.i84
101
 
        br i1 false, label %StringBeginsWith.exit88, label %bb.i80
102
 
 
103
 
StringBeginsWith.exit88:                ; preds = %bb3.i85
104
 
        br i1 undef, label %bb3.i77, label %bb2.i51
105
 
 
106
 
bb2.i.i68:              ; preds = %bb3.i77
107
 
        br label %bb3.i77
108
 
 
109
 
bb3.i77:                ; preds = %bb2.i.i68, %StringBeginsWith.exit88, %bb2.i84
110
 
        br i1 false, label %bb1.i58, label %bb2.i.i68
111
 
 
112
 
bb1.i58:                ; preds = %bb3.i77
113
 
        unreachable
114
 
 
115
 
bb.i47:         ; preds = %bb3.i52
116
 
        br i1 undef, label %bb2.i51, label %bb2.i.i15.critedge
117
 
 
118
 
bb2.i51:                ; preds = %bb.i47, %StringBeginsWith.exit88, %bb.i80
119
 
        %15 = load i8* undef, align 1           ; <i8> [#uses=0]
120
 
        br i1 false, label %StringBeginsWith.exit55thread-split, label %bb3.i52
121
 
 
122
 
bb3.i52:                ; preds = %bb2.i51
123
 
        br i1 false, label %StringBeginsWith.exit55, label %bb.i47
124
 
 
125
 
StringBeginsWith.exit55thread-split:            ; preds = %bb2.i51
126
 
        br label %StringBeginsWith.exit55
127
 
 
128
 
StringBeginsWith.exit55:                ; preds = %StringBeginsWith.exit55thread-split, %bb3.i52
129
 
        br label %bb2.i41
130
 
 
131
 
bb2.i41:                ; preds = %bb2.i41, %StringBeginsWith.exit55
132
 
        br label %bb2.i41
133
 
 
134
 
bb2.i.i15.critedge:             ; preds = %bb.i47
135
 
        %16 = call arm_apcscc  i8* @fgets(i8* undef, i32 512, %struct.FILE* %0) nounwind                ; <i8*> [#uses=0]
136
 
        %iftmp.560.0 = select i1 undef, i32 2, i32 0            ; <i32> [#uses=1]
137
 
        br label %bb100.outer
138
 
 
139
 
bb2.i8:         ; preds = %bb100.outer
140
 
        br i1 undef, label %bb1.i3, label %bb79.critedge
141
 
 
142
 
bb1.i3:         ; preds = %bb2.i8
143
 
        br label %bb100.outer.outer
144
 
 
145
 
bb79.critedge:          ; preds = %bb2.i8
146
 
        store %struct.rec* null, %struct.rec** @zz_tmp, align 4
147
 
        br label %bb100.outer.outer
148
 
 
149
 
bb100.outer:            ; preds = %bb2.i.i15.critedge, %bb100.outer.outer
150
 
        %state.0.ph = phi i32 [ 0, %bb100.outer.outer ], [ %iftmp.560.0, %bb2.i.i15.critedge ]          ; <i32> [#uses=1]
151
 
        %cond = icmp eq i32 %state.0.ph, 1              ; <i1> [#uses=1]
152
 
        br i1 %cond, label %bb2.i8, label %bb2.i84
153
 
}