; This shouldn't crash ; RUN: llvm-upgrade < %s | llvm-as | llc -march=alpha ; ModuleID = 'bugpoint-reduced-simplified.bc' target endian = little target pointersize = 64 %.str_4 = external global [44 x sbyte] ; <[44 x sbyte]*> [#uses=0] implementation ; Functions: declare void %printf(int, ...) void %main() { entry: %tmp.11861 = setlt long 0, 1 ; [#uses=1] %tmp.19466 = setlt long 0, 1 ; [#uses=1] %tmp.21571 = setlt long 0, 1 ; [#uses=1] %tmp.36796 = setlt long 0, 1 ; [#uses=1] br bool %tmp.11861, label %loopexit.2, label %no_exit.2 no_exit.2: ; preds = %entry ret void loopexit.2: ; preds = %entry br bool %tmp.19466, label %loopexit.3, label %no_exit.3.preheader no_exit.3.preheader: ; preds = %loopexit.2 ret void loopexit.3: ; preds = %loopexit.2 br bool %tmp.21571, label %no_exit.6, label %no_exit.4 no_exit.4: ; preds = %loopexit.3 ret void no_exit.6: ; preds = %no_exit.6, %loopexit.3 %tmp.30793 = setgt long 0, 0 ; [#uses=1] br bool %tmp.30793, label %loopexit.6, label %no_exit.6 loopexit.6: ; preds = %no_exit.6 %Z.1 = select bool %tmp.36796, double 1.000000e+00, double 0x3FEFFF7CEDE74EAE ; [#uses=2] tail call void (int, ...)* %printf( int 0, long 0, long 0, long 0, double 1.000000e+00, double 1.000000e+00, double %Z.1, double %Z.1 ) ret void }