From 6e395fcb44dafbdbae218d396f32693b886d212a Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Fri, 16 Sep 2016 22:36:30 +0100 Subject: [PATCH] Fix documentation for overflow-checking builtins * doc/extend.texi (Integer Overflow Builtins): Fix type of out parameters for functions taking long long arguments. From-SVN: r240200 --- gcc/ChangeLog | 5 +++++ gcc/doc/extend.texi | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f87ea00dfd8..7dc82062f74 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-09-16 Jonathan Wakely + + * doc/extend.texi (Integer Overflow Builtins): Fix type of out + parameters for functions taking long long arguments. + 2016-09-16 Bill Schmidt PR target/77613 diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 8df9d6262b7..299986d86e8 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -9881,10 +9881,10 @@ together with checking whether the operations overflowed. @deftypefn {Built-in Function} bool __builtin_add_overflow (@var{type1} a, @var{type2} b, @var{type3} *res) @deftypefnx {Built-in Function} bool __builtin_sadd_overflow (int a, int b, int *res) @deftypefnx {Built-in Function} bool __builtin_saddl_overflow (long int a, long int b, long int *res) -@deftypefnx {Built-in Function} bool __builtin_saddll_overflow (long long int a, long long int b, long int *res) +@deftypefnx {Built-in Function} bool __builtin_saddll_overflow (long long int a, long long int b, long long int *res) @deftypefnx {Built-in Function} bool __builtin_uadd_overflow (unsigned int a, unsigned int b, unsigned int *res) @deftypefnx {Built-in Function} bool __builtin_uaddl_overflow (unsigned long int a, unsigned long int b, unsigned long int *res) -@deftypefnx {Built-in Function} bool __builtin_uaddll_overflow (unsigned long long int a, unsigned long long int b, unsigned long int *res) +@deftypefnx {Built-in Function} bool __builtin_uaddll_overflow (unsigned long long int a, unsigned long long int b, unsigned long long int *res) These built-in functions promote the first two operands into infinite precision signed type and perform addition on those promoted operands. The result is then @@ -9907,10 +9907,10 @@ after addition, conditional jump on carry etc. @deftypefn {Built-in Function} bool __builtin_sub_overflow (@var{type1} a, @var{type2} b, @var{type3} *res) @deftypefnx {Built-in Function} bool __builtin_ssub_overflow (int a, int b, int *res) @deftypefnx {Built-in Function} bool __builtin_ssubl_overflow (long int a, long int b, long int *res) -@deftypefnx {Built-in Function} bool __builtin_ssubll_overflow (long long int a, long long int b, long int *res) +@deftypefnx {Built-in Function} bool __builtin_ssubll_overflow (long long int a, long long int b, long long int *res) @deftypefnx {Built-in Function} bool __builtin_usub_overflow (unsigned int a, unsigned int b, unsigned int *res) @deftypefnx {Built-in Function} bool __builtin_usubl_overflow (unsigned long int a, unsigned long int b, unsigned long int *res) -@deftypefnx {Built-in Function} bool __builtin_usubll_overflow (unsigned long long int a, unsigned long long int b, unsigned long int *res) +@deftypefnx {Built-in Function} bool __builtin_usubll_overflow (unsigned long long int a, unsigned long long int b, unsigned long long int *res) These built-in functions are similar to the add overflow checking built-in functions above, except they perform subtraction, subtract the second argument @@ -9921,10 +9921,10 @@ from the first one, instead of addition. @deftypefn {Built-in Function} bool __builtin_mul_overflow (@var{type1} a, @var{type2} b, @var{type3} *res) @deftypefnx {Built-in Function} bool __builtin_smul_overflow (int a, int b, int *res) @deftypefnx {Built-in Function} bool __builtin_smull_overflow (long int a, long int b, long int *res) -@deftypefnx {Built-in Function} bool __builtin_smulll_overflow (long long int a, long long int b, long int *res) +@deftypefnx {Built-in Function} bool __builtin_smulll_overflow (long long int a, long long int b, long long int *res) @deftypefnx {Built-in Function} bool __builtin_umul_overflow (unsigned int a, unsigned int b, unsigned int *res) @deftypefnx {Built-in Function} bool __builtin_umull_overflow (unsigned long int a, unsigned long int b, unsigned long int *res) -@deftypefnx {Built-in Function} bool __builtin_umulll_overflow (unsigned long long int a, unsigned long long int b, unsigned long int *res) +@deftypefnx {Built-in Function} bool __builtin_umulll_overflow (unsigned long long int a, unsigned long long int b, unsigned long long int *res) These built-in functions are similar to the add overflow checking built-in functions above, except they perform multiplication, instead of addition. -- 2.30.2