testcase for a regression introduced by the recent cast patch
[oota-llvm.git] / test / Transforms / IndVarsSimplify / 2006-12-10-BitCast.ll
1 ; RUN: llvm-as < %s | opt -indvars -disable-output
2
3 target datalayout = "e-p:32:32"
4 target endian = little
5 target pointersize = 32
6 target triple = "i686-apple-darwin8"
7         %struct.vorbis_dsp_state = type { int, %struct.vorbis_info*, float**, float**, int, int, int, int, int, int, int, int, int, long, long, long, long, long, long, sbyte* }
8         %struct.vorbis_info = type { int, int, int, int, int, int, int, sbyte* }
9
10 implementation   ; Functions:
11
12 void %_ve_envelope_search() {
13 entry:
14         br bool false, label %cond_true27, label %bb137
15
16 cond_true27:            ; preds = %entry
17         br bool false, label %cond_true52, label %bb80
18
19 cond_true52:            ; preds = %cond_true27
20         %tmp152.i = bitcast float 0.000000e+00 to uint          ; <uint> [#uses=1]
21         br label %cond_next182.i
22
23 cond_next182.i:         ; preds = %cond_next182.i, %cond_true52
24         %decay.i.0 = phi uint [ %tmp195.i, %cond_next182.i ], [ %tmp152.i, %cond_true52 ]               ; <uint> [#uses=1]
25         %tmp194.i53 = bitcast uint %decay.i.0 to float          ; <float> [#uses=1]
26         %tmp195.i = sub float %tmp194.i53, 8.000000e+00         ; <float> [#uses=1]
27         %tmp195.i = bitcast float %tmp195.i to uint             ; <uint> [#uses=1]
28         br bool false, label %cond_next182.i, label %bb418.i.preheader
29
30 bb418.i.preheader:              ; preds = %cond_next182.i
31         ret void
32
33 bb80:           ; preds = %cond_true27
34         ret void
35
36 bb137:          ; preds = %entry
37         ret void
38 }