--TEST-- 002: add_ov function --ARGS-- --emit-llvm --CODE-- { uint32_t c = 2; l_1 = START(l_2); uint32_t x = PARAM(l_1, "x", 1); uint32_t ret = ADD_OV(x, c); bool ov = OVERFLOW(ret); l_2 = RETURN(l_1, ov); } --EXPECT-- define i1 @test(i32 %d2) { %t3 = call {i32, i1} @llvm.uadd.with.overflow.i32(i32 %d2, i32 2) %d3 = extractvalue {i32, i1} %t3, 0 %d4 = extractvalue {i32, i1} %t3, 1 ret i1 %d4 } declare {i32, i1} @llvm.uadd.with.overflow.i32(i32, i32)