summaryrefslogtreecommitdiff
path: root/gcc/double-int.h
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2006-08-28 23:15:19 +0200
committerZdenek Dvorak <rakdver@gcc.gnu.org>2006-08-28 21:15:19 +0000
commitf414f2f35e4cb2f18f2da8f28777ad797cf7b0fa (patch)
tree30bc9b33718fe7a8c347a8df8410345bef4030ee /gcc/double-int.h
parent689e7ddada015f50d4e535902f3079add578bbcc (diff)
downloadgcc-f414f2f35e4cb2f18f2da8f28777ad797cf7b0fa.tar.gz
re PR tree-optimization/28411 ("Illegal instruction" error with -ftrapv)
PR tree-optimization/28411 * double-int.c (double_int_div): Use double_int_divmod. (double_int_divmod, double_int_sdivmod, double_int_udivmod, double_int_mod, double_int_smod, double_int_umod): New functions. * double-int.h (double_int_divmod, double_int_sdivmod, double_int_udivmod, double_int_mod, double_int_smod, double_int_umod): Declare. * tree-ssa-loop-ivopts.c (constant_multiple_of): Returns the result in double_int. (get_computation_aff, get_computation_cost_at): Handle double_int return type of constant_multiple_of. From-SVN: r116529
Diffstat (limited to 'gcc/double-int.h')
-rw-r--r--gcc/double-int.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/double-int.h b/gcc/double-int.h
index f37bcb2f299..eddd7b7e2fe 100644
--- a/gcc/double-int.h
+++ b/gcc/double-int.h
@@ -116,6 +116,12 @@ unsigned HOST_WIDE_INT double_int_to_uhwi (double_int);
double_int double_int_div (double_int, double_int, bool, unsigned);
double_int double_int_sdiv (double_int, double_int, unsigned);
double_int double_int_udiv (double_int, double_int, unsigned);
+double_int double_int_mod (double_int, double_int, bool, unsigned);
+double_int double_int_smod (double_int, double_int, unsigned);
+double_int double_int_umod (double_int, double_int, unsigned);
+double_int double_int_divmod (double_int, double_int, bool, unsigned, double_int *);
+double_int double_int_sdivmod (double_int, double_int, unsigned, double_int *);
+double_int double_int_udivmod (double_int, double_int, unsigned, double_int *);
bool double_int_negative_p (double_int);
int double_int_cmp (double_int, double_int, bool);
int double_int_scmp (double_int, double_int);