summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/2007-11-07-MulBy4.ll
blob: d5b630b59d9f542bd728f12543ea7fe25d0f73b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
; RUN: llc < %s -march=x86 | not grep imul

	%struct.eebb = type { %struct.eebb*, i16* }
	%struct.hf = type { %struct.hf*, i16*, i8*, i32, i32, %struct.eebb*, i32, i32, i8*, i8*, i8*, i8*, i16*, i8*, i16*, %struct.ri, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [30 x i32], %struct.eebb, i32, i8* }
	%struct.foo_data = type { i32, i32, i32, i32*, i32, i32, i8*, i8*, i32, i32, i32, i32, i32, i32, i32, i32, i8*, i16*, i16*, i16*, i16*, i32, i32, i32, %struct.ri*, i8*, %struct.hf* }
	%struct.ri = type { %struct.ri*, i32, i8*, i16*, i32*, i32 }

define fastcc i32 @foo(i16* %eptr, i8* %ecode, %struct.foo_data* %md, i32 %ims) {
entry:
	%tmp36 = load i32* null, align 4		; <i32> [#uses=1]
	%tmp37 = icmp ult i32 0, %tmp36		; <i1> [#uses=1]
	br i1 %tmp37, label %cond_next79, label %cond_true

cond_true:		; preds = %entry
	ret i32 0

cond_next79:		; preds = %entry
	%tmp85 = load i32* null, align 4		; <i32> [#uses=1]
	%tmp86 = icmp ult i32 0, %tmp85		; <i1> [#uses=1]
	br i1 %tmp86, label %cond_next130, label %cond_true89

cond_true89:		; preds = %cond_next79
	ret i32 0

cond_next130:		; preds = %cond_next79
	%tmp173 = icmp eq i32 0, 0		; <i1> [#uses=1]
	br i1 %tmp173, label %cond_next201, label %cond_true176

cond_true176:		; preds = %cond_next130
	ret i32 0

cond_next201:		; preds = %cond_next130
	switch i32 0, label %bb19955 [
		 i32 0, label %bb1266
		 i32 1, label %bb5018
		 i32 2, label %bb5075
		 i32 3, label %cond_true5534
		 i32 4, label %cond_true5534
		 i32 5, label %bb6039
		 i32 6, label %bb6181
		 i32 7, label %bb6323
		 i32 8, label %bb6463
		 i32 9, label %bb6605
		 i32 10, label %bb6746
		 i32 11, label %cond_next5871
		 i32 16, label %bb5452
		 i32 17, label %bb5395
		 i32 19, label %bb4883
		 i32 20, label %bb5136
		 i32 23, label %bb12899
		 i32 64, label %bb2162
		 i32 69, label %bb1447
		 i32 70, label %bb1737
		 i32 71, label %bb1447
		 i32 72, label %bb1737
		 i32 73, label %cond_true1984
		 i32 75, label %bb740
		 i32 80, label %bb552
	]

bb552:		; preds = %cond_next201
	ret i32 0

bb740:		; preds = %cond_next201
	ret i32 0

bb1266:		; preds = %cond_next201
	ret i32 0

bb1447:		; preds = %cond_next201, %cond_next201
	ret i32 0

bb1737:		; preds = %cond_next201, %cond_next201
	ret i32 0

cond_true1984:		; preds = %cond_next201
	ret i32 0

bb2162:		; preds = %cond_next201
	ret i32 0

bb4883:		; preds = %cond_next201
	ret i32 0

bb5018:		; preds = %cond_next201
	ret i32 0

bb5075:		; preds = %cond_next201
	ret i32 0

bb5136:		; preds = %cond_next201
	ret i32 0

bb5395:		; preds = %cond_next201
	ret i32 0

bb5452:		; preds = %cond_next201
	ret i32 0

cond_true5534:		; preds = %cond_next201, %cond_next201
	ret i32 0

cond_next5871:		; preds = %cond_next201
	ret i32 0

bb6039:		; preds = %cond_next201
	ret i32 0

bb6181:		; preds = %cond_next201
	ret i32 0

bb6323:		; preds = %cond_next201
	ret i32 0

bb6463:		; preds = %cond_next201
	ret i32 0

bb6605:		; preds = %cond_next201
	ret i32 0

bb6746:		; preds = %cond_next201
	ret i32 0

bb12899:		; preds = %cond_next201
	ret i32 0

bb19955:		; preds = %cond_next201
	ret i32 0
}