Test source: git
Source: <stdin> ---------------------------------------- @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i64_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_3, align 8 ret void } => @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i64_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_3, align 8 ret void } Transformation seems to be correct! (syntactically equal) ---------------------------------------- @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i64_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %cvt2 = sitofp i64 %ld2 to double, exceptions=ignore %cvt3 = sitofp i64 %ld3 to double, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_7, align 8 ret void } => @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i64_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %cvt2 = sitofp i64 %ld2 to double, exceptions=ignore %cvt3 = sitofp i64 %ld3 to double, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_7, align 8 ret void } Transformation seems to be correct! (syntactically equal) ---------------------------------------- @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i64_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %__constexpr_4 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 4 %ld4 = load i64, ptr %__constexpr_4, align 32 %__constexpr_5 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 5 %ld5 = load i64, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 6 %ld6 = load i64, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 7 %ld7 = load i64, ptr %__constexpr_7, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %cvt2 = sitofp i64 %ld2 to double, exceptions=ignore %cvt3 = sitofp i64 %ld3 to double, exceptions=ignore %cvt4 = sitofp i64 %ld4 to double, exceptions=ignore %cvt5 = sitofp i64 %ld5 to double, exceptions=ignore %cvt6 = sitofp i64 %ld6 to double, exceptions=ignore %cvt7 = sitofp i64 %ld7 to double, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_9, align 8 %__constexpr_10 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_10, align 16 %__constexpr_11 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_11, align 8 %__constexpr_12 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 store double %cvt4, ptr %__constexpr_12, align 32 %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 5 store double %cvt5, ptr %__constexpr_13, align 8 %__constexpr_14 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 store double %cvt6, ptr %__constexpr_14, align 16 %__constexpr_15 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 7 store double %cvt7, ptr %__constexpr_15, align 8 ret void } => @src64 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i64_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %__constexpr_4 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 4 %ld4 = load i64, ptr %__constexpr_4, align 32 %__constexpr_5 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 5 %ld5 = load i64, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 6 %ld6 = load i64, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 7 %ld7 = load i64, ptr %__constexpr_7, align 8 %cvt0 = sitofp i64 %ld0 to double, exceptions=ignore %cvt1 = sitofp i64 %ld1 to double, exceptions=ignore %cvt2 = sitofp i64 %ld2 to double, exceptions=ignore %cvt3 = sitofp i64 %ld3 to double, exceptions=ignore %cvt4 = sitofp i64 %ld4 to double, exceptions=ignore %cvt5 = sitofp i64 %ld5 to double, exceptions=ignore %cvt6 = sitofp i64 %ld6 to double, exceptions=ignore %cvt7 = sitofp i64 %ld7 to double, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_9, align 8 %__constexpr_10 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_10, align 16 %__constexpr_11 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_11, align 8 %__constexpr_12 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 store double %cvt4, ptr %__constexpr_12, align 32 %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 5 store double %cvt5, ptr %__constexpr_13, align 8 %__constexpr_14 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 store double %cvt6, ptr %__constexpr_14, align 16 %__constexpr_15 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 7 store double %cvt7, ptr %__constexpr_15, align 8 ret void } Transformation seems to be correct! (syntactically equal) ---------------------------------------- @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i32_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %cvt0 = sitofp i32 %ld0 to double, exceptions=ignore %cvt1 = sitofp i32 %ld1 to double, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_3, align 8 ret void } => @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i32_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <2 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i32> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 ret void } Transformation seems to be correct! ---------------------------------------- @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i32_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %__constexpr_2 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %ld2 = load i32, ptr %__constexpr_2, align 8 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 3 %ld3 = load i32, ptr %__constexpr_3, align 4 %cvt0 = sitofp i32 %ld0 to double, exceptions=ignore %cvt1 = sitofp i32 %ld1 to double, exceptions=ignore %cvt2 = sitofp i32 %ld2 to double, exceptions=ignore %cvt3 = sitofp i32 %ld3 to double, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_7, align 8 ret void } => @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i32_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <2 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i32> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i32>, ptr %__constexpr_2, align 8 %4 = sitofp <2 x i32> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i32_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %__constexpr_2 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %ld2 = load i32, ptr %__constexpr_2, align 8 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 3 %ld3 = load i32, ptr %__constexpr_3, align 4 %__constexpr_4 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %ld4 = load i32, ptr %__constexpr_4, align 16 %__constexpr_5 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 5 %ld5 = load i32, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 6 %ld6 = load i32, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 7 %ld7 = load i32, ptr %__constexpr_7, align 4 %cvt0 = sitofp i32 %ld0 to double, exceptions=ignore %cvt1 = sitofp i32 %ld1 to double, exceptions=ignore %cvt2 = sitofp i32 %ld2 to double, exceptions=ignore %cvt3 = sitofp i32 %ld3 to double, exceptions=ignore %cvt4 = sitofp i32 %ld4 to double, exceptions=ignore %cvt5 = sitofp i32 %ld5 to double, exceptions=ignore %cvt6 = sitofp i32 %ld6 to double, exceptions=ignore %cvt7 = sitofp i32 %ld7 to double, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_9, align 8 %__constexpr_10 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_10, align 16 %__constexpr_11 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_11, align 8 %__constexpr_12 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 store double %cvt4, ptr %__constexpr_12, align 32 %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 5 store double %cvt5, ptr %__constexpr_13, align 8 %__constexpr_14 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 store double %cvt6, ptr %__constexpr_14, align 16 %__constexpr_15 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 7 store double %cvt7, ptr %__constexpr_15, align 8 ret void } => @src32 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i32_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <2 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i32> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i32>, ptr %__constexpr_2, align 8 %4 = sitofp <2 x i32> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <2 x i32>, ptr %__constexpr_6, align 16 %6 = sitofp <2 x i32> %5 to <2 x double>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <2 x double> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 6 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <2 x i32>, ptr %__constexpr_10, align 8 %8 = sitofp <2 x i32> %7 to <2 x double>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <2 x double> %8, ptr %__constexpr_12, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i16_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %cvt0 = sitofp i16 %ld0 to double, exceptions=ignore %cvt1 = sitofp i16 %ld1 to double, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_3, align 8 ret void } => @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i16_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <2 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i16> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 ret void } Transformation seems to be correct! ---------------------------------------- @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i16_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %__constexpr_2 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %ld2 = load i16, ptr %__constexpr_2, align 4 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 3 %ld3 = load i16, ptr %__constexpr_3, align 2 %cvt0 = sitofp i16 %ld0 to double, exceptions=ignore %cvt1 = sitofp i16 %ld1 to double, exceptions=ignore %cvt2 = sitofp i16 %ld2 to double, exceptions=ignore %cvt3 = sitofp i16 %ld3 to double, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_7, align 8 ret void } => @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i16_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <2 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i16> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i16>, ptr %__constexpr_2, align 4 %4 = sitofp <2 x i16> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i16_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %__constexpr_2 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %ld2 = load i16, ptr %__constexpr_2, align 4 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 3 %ld3 = load i16, ptr %__constexpr_3, align 2 %__constexpr_4 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %ld4 = load i16, ptr %__constexpr_4, align 8 %__constexpr_5 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 5 %ld5 = load i16, ptr %__constexpr_5, align 2 %__constexpr_6 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 6 %ld6 = load i16, ptr %__constexpr_6, align 4 %__constexpr_7 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 7 %ld7 = load i16, ptr %__constexpr_7, align 2 %cvt0 = sitofp i16 %ld0 to double, exceptions=ignore %cvt1 = sitofp i16 %ld1 to double, exceptions=ignore %cvt2 = sitofp i16 %ld2 to double, exceptions=ignore %cvt3 = sitofp i16 %ld3 to double, exceptions=ignore %cvt4 = sitofp i16 %ld4 to double, exceptions=ignore %cvt5 = sitofp i16 %ld5 to double, exceptions=ignore %cvt6 = sitofp i16 %ld6 to double, exceptions=ignore %cvt7 = sitofp i16 %ld7 to double, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_9, align 8 %__constexpr_10 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_10, align 16 %__constexpr_11 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_11, align 8 %__constexpr_12 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 store double %cvt4, ptr %__constexpr_12, align 32 %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 5 store double %cvt5, ptr %__constexpr_13, align 8 %__constexpr_14 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 store double %cvt6, ptr %__constexpr_14, align 16 %__constexpr_15 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 7 store double %cvt7, ptr %__constexpr_15, align 8 ret void } => @src16 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i16_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <2 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i16> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i16>, ptr %__constexpr_2, align 4 %4 = sitofp <2 x i16> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <2 x i16>, ptr %__constexpr_6, align 8 %6 = sitofp <2 x i16> %5 to <2 x double>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <2 x double> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 6 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <2 x i16>, ptr %__constexpr_10, align 4 %8 = sitofp <2 x i16> %7 to <2 x double>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <2 x double> %8, ptr %__constexpr_12, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i8_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %cvt0 = sitofp i8 %ld0 to double, exceptions=ignore %cvt1 = sitofp i8 %ld1 to double, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_3, align 8 ret void } => @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_2i8_2f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <2 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i8> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 ret void } Transformation seems to be correct! ---------------------------------------- @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i8_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %__constexpr_2 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %ld2 = load i8, ptr %__constexpr_2, align 2 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 3 %ld3 = load i8, ptr %__constexpr_3, align 1 %cvt0 = sitofp i8 %ld0 to double, exceptions=ignore %cvt1 = sitofp i8 %ld1 to double, exceptions=ignore %cvt2 = sitofp i8 %ld2 to double, exceptions=ignore %cvt3 = sitofp i8 %ld3 to double, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_7, align 8 ret void } => @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_4i8_4f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <2 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i8> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i8>, ptr %__constexpr_2, align 2 %4 = sitofp <2 x i8> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 ret void } Transformation seems to be correct! ---------------------------------------- @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i8_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %__constexpr_2 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %ld2 = load i8, ptr %__constexpr_2, align 2 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 3 %ld3 = load i8, ptr %__constexpr_3, align 1 %__constexpr_4 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %ld4 = load i8, ptr %__constexpr_4, align 4 %__constexpr_5 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 5 %ld5 = load i8, ptr %__constexpr_5, align 1 %__constexpr_6 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 6 %ld6 = load i8, ptr %__constexpr_6, align 2 %__constexpr_7 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 7 %ld7 = load i8, ptr %__constexpr_7, align 1 %cvt0 = sitofp i8 %ld0 to double, exceptions=ignore %cvt1 = sitofp i8 %ld1 to double, exceptions=ignore %cvt2 = sitofp i8 %ld2 to double, exceptions=ignore %cvt3 = sitofp i8 %ld3 to double, exceptions=ignore %cvt4 = sitofp i8 %ld4 to double, exceptions=ignore %cvt5 = sitofp i8 %ld5 to double, exceptions=ignore %cvt6 = sitofp i8 %ld6 to double, exceptions=ignore %cvt7 = sitofp i8 %ld7 to double, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 0 store double %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 1 store double %cvt1, ptr %__constexpr_9, align 8 %__constexpr_10 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 store double %cvt2, ptr %__constexpr_10, align 16 %__constexpr_11 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 3 store double %cvt3, ptr %__constexpr_11, align 8 %__constexpr_12 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 store double %cvt4, ptr %__constexpr_12, align 32 %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 5 store double %cvt5, ptr %__constexpr_13, align 8 %__constexpr_14 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 store double %cvt6, ptr %__constexpr_14, align 16 %__constexpr_15 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 7 store double %cvt7, ptr %__constexpr_15, align 8 ret void } => @src8 = global 64 bytes, align 64 @dst64 = global 64 bytes, align 64 define void @sitofp_8i8_8f64() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <2 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <2 x i8> %1 to <2 x double>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst64 to ptr store <2 x double> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <2 x i8>, ptr %__constexpr_2, align 2 %4 = sitofp <2 x i8> %3 to <2 x double>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 2 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <2 x double> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <2 x i8>, ptr %__constexpr_6, align 4 %6 = sitofp <2 x i8> %5 to <2 x double>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 4 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <2 x double> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 6 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <2 x i8>, ptr %__constexpr_10, align 2 %8 = sitofp <2 x i8> %7 to <2 x double>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst64, 64 x i32 0, 8 x i64 6 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <2 x double> %8, ptr %__constexpr_12, align 16 ret void } Transformation seems to be correct! ---------------------------------------- @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_2i64_2f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %cvt0 = sitofp i64 %ld0 to float, exceptions=ignore %cvt1 = sitofp i64 %ld1 to float, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_3, align 4 ret void } => @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_2i64_2f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %cvt0 = sitofp i64 %ld0 to float, exceptions=ignore %cvt1 = sitofp i64 %ld1 to float, exceptions=ignore %__constexpr_2 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_2, align 64 %__constexpr_3 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_3, align 4 ret void } Transformation seems to be correct! (syntactically equal) ---------------------------------------- @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i64_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %cvt0 = sitofp i64 %ld0 to float, exceptions=ignore %cvt1 = sitofp i64 %ld1 to float, exceptions=ignore %cvt2 = sitofp i64 %ld2 to float, exceptions=ignore %cvt3 = sitofp i64 %ld3 to float, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_7, align 4 ret void } => @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i64_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src64 to ptr %1 = load <4 x i64>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i64> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i64_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 0 %ld0 = load i64, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 1 %ld1 = load i64, ptr %__constexpr_1, align 8 %__constexpr_2 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 2 %ld2 = load i64, ptr %__constexpr_2, align 16 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 3 %ld3 = load i64, ptr %__constexpr_3, align 8 %__constexpr_4 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 4 %ld4 = load i64, ptr %__constexpr_4, align 32 %__constexpr_5 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 5 %ld5 = load i64, ptr %__constexpr_5, align 8 %__constexpr_6 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 6 %ld6 = load i64, ptr %__constexpr_6, align 16 %__constexpr_7 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 7 %ld7 = load i64, ptr %__constexpr_7, align 8 %cvt0 = sitofp i64 %ld0 to float, exceptions=ignore %cvt1 = sitofp i64 %ld1 to float, exceptions=ignore %cvt2 = sitofp i64 %ld2 to float, exceptions=ignore %cvt3 = sitofp i64 %ld3 to float, exceptions=ignore %cvt4 = sitofp i64 %ld4 to float, exceptions=ignore %cvt5 = sitofp i64 %ld5 to float, exceptions=ignore %cvt6 = sitofp i64 %ld6 to float, exceptions=ignore %cvt7 = sitofp i64 %ld7 to float, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_9, align 4 %__constexpr_10 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_10, align 8 %__constexpr_11 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_11, align 4 %__constexpr_12 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_12, align 16 %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_13, align 4 %__constexpr_14 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_14, align 8 %__constexpr_15 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_15, align 4 ret void } => @src64 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i64_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src64 to ptr %1 = load <4 x i64>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i64> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src64, 64 x i32 0, 8 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i64>, ptr %__constexpr_2, align 32 %4 = sitofp <4 x i64> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i32_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %__constexpr_2 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %ld2 = load i32, ptr %__constexpr_2, align 8 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 3 %ld3 = load i32, ptr %__constexpr_3, align 4 %cvt0 = sitofp i32 %ld0 to float, exceptions=ignore %cvt1 = sitofp i32 %ld1 to float, exceptions=ignore %cvt2 = sitofp i32 %ld2 to float, exceptions=ignore %cvt3 = sitofp i32 %ld3 to float, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_7, align 4 ret void } => @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i32_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <4 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i32> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i32_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %__constexpr_2 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %ld2 = load i32, ptr %__constexpr_2, align 8 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 3 %ld3 = load i32, ptr %__constexpr_3, align 4 %__constexpr_4 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %ld4 = load i32, ptr %__constexpr_4, align 16 %__constexpr_5 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 5 %ld5 = load i32, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 6 %ld6 = load i32, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 7 %ld7 = load i32, ptr %__constexpr_7, align 4 %cvt0 = sitofp i32 %ld0 to float, exceptions=ignore %cvt1 = sitofp i32 %ld1 to float, exceptions=ignore %cvt2 = sitofp i32 %ld2 to float, exceptions=ignore %cvt3 = sitofp i32 %ld3 to float, exceptions=ignore %cvt4 = sitofp i32 %ld4 to float, exceptions=ignore %cvt5 = sitofp i32 %ld5 to float, exceptions=ignore %cvt6 = sitofp i32 %ld6 to float, exceptions=ignore %cvt7 = sitofp i32 %ld7 to float, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_9, align 4 %__constexpr_10 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_10, align 8 %__constexpr_11 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_11, align 4 %__constexpr_12 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_12, align 16 %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_13, align 4 %__constexpr_14 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_14, align 8 %__constexpr_15 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_15, align 4 ret void } => @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i32_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <4 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i32> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i32>, ptr %__constexpr_2, align 16 %4 = sitofp <4 x i32> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i32_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 0 %ld0 = load i32, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 1 %ld1 = load i32, ptr %__constexpr_1, align 4 %__constexpr_2 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 2 %ld2 = load i32, ptr %__constexpr_2, align 8 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 3 %ld3 = load i32, ptr %__constexpr_3, align 4 %__constexpr_4 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %ld4 = load i32, ptr %__constexpr_4, align 16 %__constexpr_5 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 5 %ld5 = load i32, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 6 %ld6 = load i32, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 7 %ld7 = load i32, ptr %__constexpr_7, align 4 %__constexpr_8 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 8 %ld8 = load i32, ptr %__constexpr_8, align 32 %__constexpr_9 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 9 %ld9 = load i32, ptr %__constexpr_9, align 4 %__constexpr_10 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 10 %ld10 = load i32, ptr %__constexpr_10, align 8 %__constexpr_11 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 11 %ld11 = load i32, ptr %__constexpr_11, align 4 %__constexpr_12 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 12 %ld12 = load i32, ptr %__constexpr_12, align 16 %__constexpr_13 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 13 %ld13 = load i32, ptr %__constexpr_13, align 4 %__constexpr_14 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 14 %ld14 = load i32, ptr %__constexpr_14, align 8 %__constexpr_15 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 15 %ld15 = load i32, ptr %__constexpr_15, align 4 %cvt0 = sitofp i32 %ld0 to float, exceptions=ignore %cvt1 = sitofp i32 %ld1 to float, exceptions=ignore %cvt2 = sitofp i32 %ld2 to float, exceptions=ignore %cvt3 = sitofp i32 %ld3 to float, exceptions=ignore %cvt4 = sitofp i32 %ld4 to float, exceptions=ignore %cvt5 = sitofp i32 %ld5 to float, exceptions=ignore %cvt6 = sitofp i32 %ld6 to float, exceptions=ignore %cvt7 = sitofp i32 %ld7 to float, exceptions=ignore %cvt8 = sitofp i32 %ld8 to float, exceptions=ignore %cvt9 = sitofp i32 %ld9 to float, exceptions=ignore %cvt10 = sitofp i32 %ld10 to float, exceptions=ignore %cvt11 = sitofp i32 %ld11 to float, exceptions=ignore %cvt12 = sitofp i32 %ld12 to float, exceptions=ignore %cvt13 = sitofp i32 %ld13 to float, exceptions=ignore %cvt14 = sitofp i32 %ld14 to float, exceptions=ignore %cvt15 = sitofp i32 %ld15 to float, exceptions=ignore %__constexpr_16 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_16, align 64 %__constexpr_17 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_17, align 4 %__constexpr_18 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_18, align 8 %__constexpr_19 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_19, align 4 %__constexpr_20 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_20, align 16 %__constexpr_21 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_21, align 4 %__constexpr_22 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_22, align 8 %__constexpr_23 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_23, align 4 %__constexpr_24 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 store float %cvt8, ptr %__constexpr_24, align 32 %__constexpr_25 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 9 store float %cvt9, ptr %__constexpr_25, align 4 %__constexpr_26 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 10 store float %cvt10, ptr %__constexpr_26, align 8 %__constexpr_27 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 11 store float %cvt11, ptr %__constexpr_27, align 4 %__constexpr_28 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 store float %cvt12, ptr %__constexpr_28, align 16 %__constexpr_29 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 13 store float %cvt13, ptr %__constexpr_29, align 4 %__constexpr_30 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 14 store float %cvt14, ptr %__constexpr_30, align 8 %__constexpr_31 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 15 store float %cvt15, ptr %__constexpr_31, align 4 ret void } => @src32 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i32_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src32 to ptr %1 = load <4 x i32>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i32> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i32>, ptr %__constexpr_2, align 16 %4 = sitofp <4 x i32> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 8 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <4 x i32>, ptr %__constexpr_6, align 32 %6 = sitofp <4 x i32> %5 to <4 x float>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <4 x float> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src32, 64 x i32 0, 4 x i64 12 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <4 x i32>, ptr %__constexpr_10, align 16 %8 = sitofp <4 x i32> %7 to <4 x float>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <4 x float> %8, ptr %__constexpr_12, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i16_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %__constexpr_2 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %ld2 = load i16, ptr %__constexpr_2, align 4 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 3 %ld3 = load i16, ptr %__constexpr_3, align 2 %cvt0 = sitofp i16 %ld0 to float, exceptions=ignore %cvt1 = sitofp i16 %ld1 to float, exceptions=ignore %cvt2 = sitofp i16 %ld2 to float, exceptions=ignore %cvt3 = sitofp i16 %ld3 to float, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_7, align 4 ret void } => @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i16_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <4 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i16> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 ret void } Transformation seems to be correct! ---------------------------------------- @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i16_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %__constexpr_2 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %ld2 = load i16, ptr %__constexpr_2, align 4 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 3 %ld3 = load i16, ptr %__constexpr_3, align 2 %__constexpr_4 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %ld4 = load i16, ptr %__constexpr_4, align 8 %__constexpr_5 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 5 %ld5 = load i16, ptr %__constexpr_5, align 2 %__constexpr_6 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 6 %ld6 = load i16, ptr %__constexpr_6, align 4 %__constexpr_7 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 7 %ld7 = load i16, ptr %__constexpr_7, align 2 %cvt0 = sitofp i16 %ld0 to float, exceptions=ignore %cvt1 = sitofp i16 %ld1 to float, exceptions=ignore %cvt2 = sitofp i16 %ld2 to float, exceptions=ignore %cvt3 = sitofp i16 %ld3 to float, exceptions=ignore %cvt4 = sitofp i16 %ld4 to float, exceptions=ignore %cvt5 = sitofp i16 %ld5 to float, exceptions=ignore %cvt6 = sitofp i16 %ld6 to float, exceptions=ignore %cvt7 = sitofp i16 %ld7 to float, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_9, align 4 %__constexpr_10 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_10, align 8 %__constexpr_11 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_11, align 4 %__constexpr_12 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_12, align 16 %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_13, align 4 %__constexpr_14 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_14, align 8 %__constexpr_15 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_15, align 4 ret void } => @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i16_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <4 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i16> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i16>, ptr %__constexpr_2, align 8 %4 = sitofp <4 x i16> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i16_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 0 %ld0 = load i16, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 1 %ld1 = load i16, ptr %__constexpr_1, align 2 %__constexpr_2 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 2 %ld2 = load i16, ptr %__constexpr_2, align 4 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 3 %ld3 = load i16, ptr %__constexpr_3, align 2 %__constexpr_4 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %ld4 = load i16, ptr %__constexpr_4, align 8 %__constexpr_5 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 5 %ld5 = load i16, ptr %__constexpr_5, align 2 %__constexpr_6 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 6 %ld6 = load i16, ptr %__constexpr_6, align 4 %__constexpr_7 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 7 %ld7 = load i16, ptr %__constexpr_7, align 2 %__constexpr_8 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 8 %ld8 = load i16, ptr %__constexpr_8, align 16 %__constexpr_9 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 9 %ld9 = load i16, ptr %__constexpr_9, align 2 %__constexpr_10 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 10 %ld10 = load i16, ptr %__constexpr_10, align 4 %__constexpr_11 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 11 %ld11 = load i16, ptr %__constexpr_11, align 2 %__constexpr_12 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 12 %ld12 = load i16, ptr %__constexpr_12, align 8 %__constexpr_13 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 13 %ld13 = load i16, ptr %__constexpr_13, align 2 %__constexpr_14 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 14 %ld14 = load i16, ptr %__constexpr_14, align 4 %__constexpr_15 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 15 %ld15 = load i16, ptr %__constexpr_15, align 2 %cvt0 = sitofp i16 %ld0 to float, exceptions=ignore %cvt1 = sitofp i16 %ld1 to float, exceptions=ignore %cvt2 = sitofp i16 %ld2 to float, exceptions=ignore %cvt3 = sitofp i16 %ld3 to float, exceptions=ignore %cvt4 = sitofp i16 %ld4 to float, exceptions=ignore %cvt5 = sitofp i16 %ld5 to float, exceptions=ignore %cvt6 = sitofp i16 %ld6 to float, exceptions=ignore %cvt7 = sitofp i16 %ld7 to float, exceptions=ignore %cvt8 = sitofp i16 %ld8 to float, exceptions=ignore %cvt9 = sitofp i16 %ld9 to float, exceptions=ignore %cvt10 = sitofp i16 %ld10 to float, exceptions=ignore %cvt11 = sitofp i16 %ld11 to float, exceptions=ignore %cvt12 = sitofp i16 %ld12 to float, exceptions=ignore %cvt13 = sitofp i16 %ld13 to float, exceptions=ignore %cvt14 = sitofp i16 %ld14 to float, exceptions=ignore %cvt15 = sitofp i16 %ld15 to float, exceptions=ignore %__constexpr_16 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_16, align 64 %__constexpr_17 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_17, align 4 %__constexpr_18 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_18, align 8 %__constexpr_19 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_19, align 4 %__constexpr_20 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_20, align 16 %__constexpr_21 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_21, align 4 %__constexpr_22 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_22, align 8 %__constexpr_23 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_23, align 4 %__constexpr_24 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 store float %cvt8, ptr %__constexpr_24, align 32 %__constexpr_25 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 9 store float %cvt9, ptr %__constexpr_25, align 4 %__constexpr_26 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 10 store float %cvt10, ptr %__constexpr_26, align 8 %__constexpr_27 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 11 store float %cvt11, ptr %__constexpr_27, align 4 %__constexpr_28 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 store float %cvt12, ptr %__constexpr_28, align 16 %__constexpr_29 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 13 store float %cvt13, ptr %__constexpr_29, align 4 %__constexpr_30 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 14 store float %cvt14, ptr %__constexpr_30, align 8 %__constexpr_31 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 15 store float %cvt15, ptr %__constexpr_31, align 4 ret void } => @src16 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i16_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src16 to ptr %1 = load <4 x i16>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i16> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i16>, ptr %__constexpr_2, align 8 %4 = sitofp <4 x i16> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 8 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <4 x i16>, ptr %__constexpr_6, align 16 %6 = sitofp <4 x i16> %5 to <4 x float>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <4 x float> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src16, 64 x i32 0, 2 x i64 12 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <4 x i16>, ptr %__constexpr_10, align 8 %8 = sitofp <4 x i16> %7 to <4 x float>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <4 x float> %8, ptr %__constexpr_12, align 16 ret void } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i8_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %__constexpr_2 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %ld2 = load i8, ptr %__constexpr_2, align 2 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 3 %ld3 = load i8, ptr %__constexpr_3, align 1 %cvt0 = sitofp i8 %ld0 to float, exceptions=ignore %cvt1 = sitofp i8 %ld1 to float, exceptions=ignore %cvt2 = sitofp i8 %ld2 to float, exceptions=ignore %cvt3 = sitofp i8 %ld3 to float, exceptions=ignore %__constexpr_4 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_4, align 64 %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_5, align 4 %__constexpr_6 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_6, align 8 %__constexpr_7 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_7, align 4 ret void } => @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_4i8_4f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <4 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i8> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 ret void } Transformation seems to be correct! ---------------------------------------- @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i8_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %__constexpr_2 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %ld2 = load i8, ptr %__constexpr_2, align 2 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 3 %ld3 = load i8, ptr %__constexpr_3, align 1 %__constexpr_4 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %ld4 = load i8, ptr %__constexpr_4, align 4 %__constexpr_5 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 5 %ld5 = load i8, ptr %__constexpr_5, align 1 %__constexpr_6 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 6 %ld6 = load i8, ptr %__constexpr_6, align 2 %__constexpr_7 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 7 %ld7 = load i8, ptr %__constexpr_7, align 1 %cvt0 = sitofp i8 %ld0 to float, exceptions=ignore %cvt1 = sitofp i8 %ld1 to float, exceptions=ignore %cvt2 = sitofp i8 %ld2 to float, exceptions=ignore %cvt3 = sitofp i8 %ld3 to float, exceptions=ignore %cvt4 = sitofp i8 %ld4 to float, exceptions=ignore %cvt5 = sitofp i8 %ld5 to float, exceptions=ignore %cvt6 = sitofp i8 %ld6 to float, exceptions=ignore %cvt7 = sitofp i8 %ld7 to float, exceptions=ignore %__constexpr_8 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_8, align 64 %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_9, align 4 %__constexpr_10 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_10, align 8 %__constexpr_11 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_11, align 4 %__constexpr_12 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_12, align 16 %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_13, align 4 %__constexpr_14 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_14, align 8 %__constexpr_15 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_15, align 4 ret void } => @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_8i8_8f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <4 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i8> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i8>, ptr %__constexpr_2, align 4 %4 = sitofp <4 x i8> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 ret void } Transformation seems to be correct! ---------------------------------------- @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i8_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 0 %ld0 = load i8, ptr %__constexpr_0, align 64 %__constexpr_1 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 1 %ld1 = load i8, ptr %__constexpr_1, align 1 %__constexpr_2 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 2 %ld2 = load i8, ptr %__constexpr_2, align 2 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 3 %ld3 = load i8, ptr %__constexpr_3, align 1 %__constexpr_4 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %ld4 = load i8, ptr %__constexpr_4, align 4 %__constexpr_5 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 5 %ld5 = load i8, ptr %__constexpr_5, align 1 %__constexpr_6 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 6 %ld6 = load i8, ptr %__constexpr_6, align 2 %__constexpr_7 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 7 %ld7 = load i8, ptr %__constexpr_7, align 1 %__constexpr_8 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 8 %ld8 = load i8, ptr %__constexpr_8, align 8 %__constexpr_9 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 9 %ld9 = load i8, ptr %__constexpr_9, align 1 %__constexpr_10 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 10 %ld10 = load i8, ptr %__constexpr_10, align 2 %__constexpr_11 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 11 %ld11 = load i8, ptr %__constexpr_11, align 1 %__constexpr_12 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 12 %ld12 = load i8, ptr %__constexpr_12, align 4 %__constexpr_13 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 13 %ld13 = load i8, ptr %__constexpr_13, align 1 %__constexpr_14 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 14 %ld14 = load i8, ptr %__constexpr_14, align 2 %__constexpr_15 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 15 %ld15 = load i8, ptr %__constexpr_15, align 1 %cvt0 = sitofp i8 %ld0 to float, exceptions=ignore %cvt1 = sitofp i8 %ld1 to float, exceptions=ignore %cvt2 = sitofp i8 %ld2 to float, exceptions=ignore %cvt3 = sitofp i8 %ld3 to float, exceptions=ignore %cvt4 = sitofp i8 %ld4 to float, exceptions=ignore %cvt5 = sitofp i8 %ld5 to float, exceptions=ignore %cvt6 = sitofp i8 %ld6 to float, exceptions=ignore %cvt7 = sitofp i8 %ld7 to float, exceptions=ignore %cvt8 = sitofp i8 %ld8 to float, exceptions=ignore %cvt9 = sitofp i8 %ld9 to float, exceptions=ignore %cvt10 = sitofp i8 %ld10 to float, exceptions=ignore %cvt11 = sitofp i8 %ld11 to float, exceptions=ignore %cvt12 = sitofp i8 %ld12 to float, exceptions=ignore %cvt13 = sitofp i8 %ld13 to float, exceptions=ignore %cvt14 = sitofp i8 %ld14 to float, exceptions=ignore %cvt15 = sitofp i8 %ld15 to float, exceptions=ignore %__constexpr_16 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 0 store float %cvt0, ptr %__constexpr_16, align 64 %__constexpr_17 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 1 store float %cvt1, ptr %__constexpr_17, align 4 %__constexpr_18 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 2 store float %cvt2, ptr %__constexpr_18, align 8 %__constexpr_19 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 3 store float %cvt3, ptr %__constexpr_19, align 4 %__constexpr_20 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 store float %cvt4, ptr %__constexpr_20, align 16 %__constexpr_21 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 5 store float %cvt5, ptr %__constexpr_21, align 4 %__constexpr_22 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 6 store float %cvt6, ptr %__constexpr_22, align 8 %__constexpr_23 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 7 store float %cvt7, ptr %__constexpr_23, align 4 %__constexpr_24 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 store float %cvt8, ptr %__constexpr_24, align 32 %__constexpr_25 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 9 store float %cvt9, ptr %__constexpr_25, align 4 %__constexpr_26 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 10 store float %cvt10, ptr %__constexpr_26, align 8 %__constexpr_27 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 11 store float %cvt11, ptr %__constexpr_27, align 4 %__constexpr_28 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 store float %cvt12, ptr %__constexpr_28, align 16 %__constexpr_29 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 13 store float %cvt13, ptr %__constexpr_29, align 4 %__constexpr_30 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 14 store float %cvt14, ptr %__constexpr_30, align 8 %__constexpr_31 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 15 store float %cvt15, ptr %__constexpr_31, align 4 ret void } => @src8 = global 64 bytes, align 64 @dst32 = global 64 bytes, align 64 define void @sitofp_16i8_16f32() denormal-fp-math=ieee,ieee { %0: %__constexpr_0 = bitcast ptr @src8 to ptr %1 = load <4 x i8>, ptr %__constexpr_0, align 64 %2 = sitofp <4 x i8> %1 to <4 x float>, exceptions=ignore %__constexpr_1 = bitcast ptr @dst32 to ptr store <4 x float> %2, ptr %__constexpr_1, align 64 %__constexpr_3 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 4 %__constexpr_2 = bitcast ptr %__constexpr_3 to ptr %3 = load <4 x i8>, ptr %__constexpr_2, align 4 %4 = sitofp <4 x i8> %3 to <4 x float>, exceptions=ignore %__constexpr_5 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 4 %__constexpr_4 = bitcast ptr %__constexpr_5 to ptr store <4 x float> %4, ptr %__constexpr_4, align 16 %__constexpr_7 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 8 %__constexpr_6 = bitcast ptr %__constexpr_7 to ptr %5 = load <4 x i8>, ptr %__constexpr_6, align 8 %6 = sitofp <4 x i8> %5 to <4 x float>, exceptions=ignore %__constexpr_9 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 8 %__constexpr_8 = bitcast ptr %__constexpr_9 to ptr store <4 x float> %6, ptr %__constexpr_8, align 32 %__constexpr_11 = gep inbounds ptr @src8, 64 x i32 0, 1 x i64 12 %__constexpr_10 = bitcast ptr %__constexpr_11 to ptr %7 = load <4 x i8>, ptr %__constexpr_10, align 4 %8 = sitofp <4 x i8> %7 to <4 x float>, exceptions=ignore %__constexpr_13 = gep inbounds ptr @dst32, 64 x i32 0, 4 x i64 12 %__constexpr_12 = bitcast ptr %__constexpr_13 to ptr store <4 x float> %8, ptr %__constexpr_12, align 16 ret void } Transformation seems to be correct! ---------------------------------------- define <4 x double> @sitofp_4xi32_4f64(i32 %a0, i32 %a1, i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %cvt0 = sitofp i32 %a0 to double, exceptions=ignore %cvt1 = sitofp i32 %a1 to double, exceptions=ignore %cvt2 = sitofp i32 %a2 to double, exceptions=ignore %cvt3 = sitofp i32 %a3 to double, exceptions=ignore %res0 = insertelement <4 x double> undef, double %cvt0, i32 0 %res1 = insertelement <4 x double> %res0, double %cvt1, i32 1 %res2 = insertelement <4 x double> %res1, double %cvt2, i32 2 %res3 = insertelement <4 x double> %res2, double %cvt3, i32 3 ret <4 x double> %res3 } => define <4 x double> @sitofp_4xi32_4f64(i32 %a0, i32 %a1, i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %1 = insertelement <2 x i32> poison, i32 %a0, i32 0 %2 = insertelement <2 x i32> %1, i32 %a1, i32 1 %3 = sitofp <2 x i32> %2 to <2 x double>, exceptions=ignore %4 = insertelement <2 x i32> poison, i32 %a2, i32 0 %5 = insertelement <2 x i32> %4, i32 %a3, i32 1 %6 = sitofp <2 x i32> %5 to <2 x double>, exceptions=ignore %7 = shufflevector <2 x double> %3, <2 x double> poison, 0, 1, 4294967295, 4294967295 %8 = shufflevector <2 x double> %6, <2 x double> poison, 0, 1, 4294967295, 4294967295 %res31 = shufflevector <4 x double> %7, <4 x double> %8, 0, 1, 4, 5 ret <4 x double> %res31 } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- define <4 x double> @sitofp_with_const_4xi32_4f64(i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %cvt2 = sitofp i32 %a2 to double, exceptions=ignore %cvt3 = sitofp i32 %a3 to double, exceptions=ignore %res0 = insertelement <4 x double> undef, double 1.000000, i32 3 %res2 = insertelement <4 x double> %res0, double %cvt2, i32 0 %res3 = insertelement <4 x double> %res2, double %cvt3, i32 1 ret <4 x double> %res3 } => define <4 x double> @sitofp_with_const_4xi32_4f64(i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %1 = insertelement <2 x i32> poison, i32 %a2, i32 0 %2 = insertelement <2 x i32> %1, i32 %a3, i32 1 %3 = sitofp <2 x i32> %2 to <2 x double>, exceptions=ignore %res0 = insertelement <4 x double> undef, double 1.000000, i32 3 %4 = shufflevector <2 x double> %3, <2 x double> poison, 0, 1, 4294967295, 4294967295 %res31 = shufflevector <4 x double> %res0, <4 x double> %4, 4, 5, 2, 3 ret <4 x double> %res31 } Transformation doesn't verify! ERROR: Timeout ---------------------------------------- define <4 x double> @sitofp_with_undef_4xi32_4f64(i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %cvt2 = sitofp i32 %a2 to double, exceptions=ignore %cvt3 = sitofp i32 %a3 to double, exceptions=ignore %res2 = insertelement <4 x double> undef, double %cvt2, i32 0 %res3 = insertelement <4 x double> %res2, double %cvt3, i32 1 ret <4 x double> %res3 } => define <4 x double> @sitofp_with_undef_4xi32_4f64(i32 %a2, i32 %a3) denormal-fp-math=ieee,ieee { %0: %1 = insertelement <2 x i32> poison, i32 %a2, i32 0 %2 = insertelement <2 x i32> %1, i32 %a3, i32 1 %3 = sitofp <2 x i32> %2 to <2 x double>, exceptions=ignore %4 = shufflevector <2 x double> %3, <2 x double> poison, 0, 1, 4294967295, 4294967295 ret <4 x double> %4 } Transformation doesn't verify! ERROR: Target is more poisonous than source Example: i32 %a2 = poison i32 %a3 = poison Source: double %cvt2 = poison double %cvt3 = poison <4 x double> %res2 = < poison, NaN [based on undef value], NaN, NaN > <4 x double> %res3 = < poison, poison, NaN, NaN > Target: <2 x i32> %1 = < poison, poison > <2 x i32> %2 = < poison, poison > <2 x double> %3 = < poison, poison > <4 x double> %4 = < poison, poison, poison, poison > Source value: < poison, poison, NaN, NaN > Target value: < poison, poison, poison, poison > ------------------- SMT STATS ------------------- Num queries: 114 Num invalid: 0 Num skips: 0 Num trivial: 113 (49.8%) Num timeout: 13 (11.4%) Num errors: 0 (0.0%) Num SAT: 88 (77.2%) Num UNSAT: 13 (11.4%) Alive2: Transform doesn't verify; aborting!
+ : 'RUN: at line 2' + /home/nlopes/alive2/build/opt-alive.sh -mtriple=x86_64-unknown -basic-aa -slp-vectorizer -S + /bitbucket/nlopes/llvm/build/bin/FileCheck /bitbucket/nlopes/llvm/llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll --check-prefixes=CHECK,SSE FileCheck error: '<stdin>' is empty. FileCheck command line: /bitbucket/nlopes/llvm/build/bin/FileCheck /bitbucket/nlopes/llvm/llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll --check-prefixes=CHECK,SSE