feat: add integer widths and checked numeric conversions
This commit is contained in:
@@ -7,6 +7,25 @@ runtime ::
|
||||
`declare ptr @__error()
|
||||
`declare i32 @snprintf(ptr, i64, ptr, ...)
|
||||
`declare void @exit(i32) noreturn
|
||||
`declare double @llvm.trunc.f64(double)
|
||||
`declare { i8, i1 } @llvm.sadd.with.overflow.i8(i8, i8)
|
||||
`declare { i8, i1 } @llvm.ssub.with.overflow.i8(i8, i8)
|
||||
`declare { i8, i1 } @llvm.smul.with.overflow.i8(i8, i8)
|
||||
`declare { i8, i1 } @llvm.uadd.with.overflow.i8(i8, i8)
|
||||
`declare { i8, i1 } @llvm.usub.with.overflow.i8(i8, i8)
|
||||
`declare { i8, i1 } @llvm.umul.with.overflow.i8(i8, i8)
|
||||
`declare { i16, i1 } @llvm.sadd.with.overflow.i16(i16, i16)
|
||||
`declare { i16, i1 } @llvm.ssub.with.overflow.i16(i16, i16)
|
||||
`declare { i16, i1 } @llvm.smul.with.overflow.i16(i16, i16)
|
||||
`declare { i16, i1 } @llvm.uadd.with.overflow.i16(i16, i16)
|
||||
`declare { i16, i1 } @llvm.usub.with.overflow.i16(i16, i16)
|
||||
`declare { i16, i1 } @llvm.umul.with.overflow.i16(i16, i16)
|
||||
`declare { i32, i1 } @llvm.sadd.with.overflow.i32(i32, i32)
|
||||
`declare { i32, i1 } @llvm.ssub.with.overflow.i32(i32, i32)
|
||||
`declare { i32, i1 } @llvm.smul.with.overflow.i32(i32, i32)
|
||||
`declare { i32, i1 } @llvm.uadd.with.overflow.i32(i32, i32)
|
||||
`declare { i32, i1 } @llvm.usub.with.overflow.i32(i32, i32)
|
||||
`declare { i32, i1 } @llvm.umul.with.overflow.i32(i32, i32)
|
||||
`declare { i64, i1 } @llvm.sadd.with.overflow.i64(i64, i64)
|
||||
`declare { i64, i1 } @llvm.ssub.with.overflow.i64(i64, i64)
|
||||
`declare { i64, i1 } @llvm.smul.with.overflow.i64(i64, i64)
|
||||
|
||||
Reference in New Issue
Block a user