[WebAssembly] Don't perform the returned-argument optimization on constants.
[oota-llvm.git] / test / CodeGen / Generic / fp-to-int-invalid.ll
1 ; RUN: llc < %s
2 ; PR4057
3 define void @test_cast_float_to_char(i8* %result) nounwind {
4 entry:
5         %result_addr = alloca i8*               ; <i8**> [#uses=2]
6         %test = alloca float            ; <float*> [#uses=2]
7         %"alloca point" = bitcast i32 0 to i32          ; <i32> [#uses=0]
8         store i8* %result, i8** %result_addr
9         store float 0x40B2AFA160000000, float* %test, align 4
10         %0 = load float, float* %test, align 4          ; <float> [#uses=1]
11         %1 = fptosi float %0 to i8              ; <i8> [#uses=1]
12         %2 = load i8*, i8** %result_addr, align 4               ; <i8*> [#uses=1]
13         store i8 %1, i8* %2, align 1
14         br label %return
15
16 return:         ; preds = %entry
17         ret void
18 }