; RUN: llc < %s -march=alpha

target datalayout = "e-p:64:64"
target triple = "alphaev67-unknown-linux-gnu"
        %struct._Callback_list = type { %struct._Callback_list*, void (i32, %struct.ios_base*, i32)*, i32, i32 }
        %struct._Impl = type { i32, %struct.facet**, i64, %struct.facet**, i8** }
        %struct._Words = type { i8*, i64 }
        %"struct.__codecvt_abstract_base<char,char,__mbstate_t>" = type { %struct.facet }
        %"struct.basic_streambuf<char,std::char_traits<char> >" = type { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, %struct.locale }
        %struct.facet = type { i32 (...)**, i32 }
        %struct.ios_base = type { i32 (...)**, i64, i64, i32, i32, i32, %struct._Callback_list*, %struct._Words, [8 x %struct._Words], i32, %struct._Words*, %struct.locale }
        %struct.locale = type { %struct._Impl* }
        %"struct.ostreambuf_iterator<char,std::char_traits<char> >" = type { %"struct.basic_streambuf<char,std::char_traits<char> >"*, i1 }

define void @_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_() {
entry:
        %tmp234 = icmp eq i8 0, 0               ; <i1> [#uses=1]
        br i1 %tmp234, label %cond_next243, label %cond_true235

cond_true235:           ; preds = %entry
        ret void

cond_next243:           ; preds = %entry
        %tmp428 = load i64* null                ; <i64> [#uses=1]
        %tmp428.upgrd.1 = trunc i64 %tmp428 to i32              ; <i32> [#uses=1]
        %tmp429 = alloca i8, i32 %tmp428.upgrd.1                ; <i8*> [#uses=0]
        unreachable
}


