Add i64 tests to IsubBorrow and move tests.

Copyright (c) 2021, Arm Limited
This commit is contained in:
dheaton-arm
2021-08-25 14:56:06 +01:00
parent 721cfc16b3
commit d1fe72affa
3 changed files with 26 additions and 1 deletions

View File

@@ -70,4 +70,29 @@ block0(v0: i32, v1: i32, v2: b1):
; run: %isubborrow_i32_c(100, 20, true) == false
; run: %isubborrow_i32_c(100, 20, false) == false
; run: %isubborrow_i32_c(-2147483640, 8, true) == true
; run: %isubborrow_i32_c(-2147483640, 8, false) == true
; run: %isubborrow_i32_c(-2147483640, 8, false) == true
function %isubborrow_i64_v(i64, i64, b1) -> i64 {
block0(v0: i64, v1: i64, v2: b1):
v3, v4 = isub_borrow v0, v1, v2
return v3
}
; run: %isubborrow_i64_v(0, 1, true) == -2
; run: %isubborrow_i64_v(0, 1, false) == -1
; run: %isubborrow_i64_v(100, 20, true) == 79
; run: %isubborrow_i64_v(100, 20, false) == 80
; run: %isubborrow_i64_v(-9223372036854775800, 8, true) == 9223372036854775807
; run: %isubborrow_i64_v(-9223372036854775800, 8, false) == -9223372036854775808
function %isubborrow_i64_c(i64, i64, b1) -> b1 {
block0(v0: i64, v1: i64, v2: b1):
v3, v4 = isub_borrow v0, v1, v2
return v4
}
; run: %isubborrow_i64_c(0, 1, true) == true
; run: %isubborrow_i64_c(0, 1, false) == true
; run: %isubborrow_i64_c(100, 20, true) == false
; run: %isubborrow_i64_c(100, 20, false) == false
; run: %isubborrow_i64_c(-9223372036854775800, 8, true) == true
; run: %isubborrow_i64_c(-9223372036854775800, 8, false) == true