search for: __builtin_add_overflow

Displaying 5 results from an estimated 5 matches for "__builtin_add_overflow".

2018 Nov 20
2
A pattern for portable __builtin_add_overflow()
Hi LLVM, clang, I'm trying to write a portable version of __builtin_add_overflow() it a way that the compiler would recognize the pattern and use the add_overflow intrinsic / the best possible machine instruction. Here are docs about these builtins: https://clang.llvm.org/docs/LanguageExtensions.html#checked-arithmetic-builtins . With unsigned types this is easy: int uaddo_n...
2023 Dec 02
1
Small inconsistencies in configure checks
...reter found as a default (unless the user has explicitly overridden by running ./configure RDOC=/path/to/rdoc or similar), but it looks like the way that's currently being done doesn't actually work. I'll fix that. > 2. xapian-core when built with GCC: > > checking whether __builtin_add_overflow is declared... yes > ... > checking whether _addcarry_u64 is declared... no > > There is actually _addcarry_u64 in GCC too, but it's in x86intrin.h > instead of intrin.h. This is no problem either, since it's superimposed > by __builtin_add_overflow anyway. I think _...
2023 Dec 02
1
Small inconsistencies in configure checks
...ting but, when building 2.5.5 for ALT I noticed small inconsistencies in configure output. 1. xapian-binding: checking for /usr/bin/rdoc... no checking for rdoc... /usr/bin/rdoc Looks curious but no problem since it's found anyway. 2. xapian-core when built with GCC: checking whether __builtin_add_overflow is declared... yes ... checking whether _addcarry_u64 is declared... no There is actually _addcarry_u64 in GCC too, but it's in x86intrin.h instead of intrin.h. This is no problem either, since it's superimposed by __builtin_add_overflow anyway. Thanks,
2020 Oct 17
0
[PATCH nbdkit] common/include/tvdiff.h: Add formal specification.
...fdef FRAMA_C + +/*@ + assigns *r; + behavior success: + assumes INT64_MIN <= a + b <= INT64_MAX; + ensures *r == a + b; + ensures \result == \false; + behavior overflow: + assumes !(INT64_MIN <= a + b <= INT64_MAX); + ensures \result == \true; + */ +extern bool __builtin_add_overflow (int64_t a, int64_t b, int64_t *r); +/*@ + assigns *r; + behavior success: + assumes INT64_MIN <= a - b <= INT64_MAX; + ensures *r == a - b; + ensures \result == \false; + behavior overflow: + assumes !(INT64_MIN <= a - b <= INT64_MAX); + ensures \result == \tr...
2019 Jul 29
10
[9.0.0 Release] Release Candidate 1 is here
Hi everyone, 9.0.0-rc1 was just tagged from the release_90 branch at r367217 (tagged as llvmorg-9.0.0-rc1 in the Git monorepo). Source code and docs are available at https://prereleases.llvm.org/9.0.0/#rc1 Binaries will be added as they become available. Please file bug reports for any issues you find as blockers of https://llvm.org/PR42474 Release testers: please start your engines, run the