gcc/
commit4f5712bd2b23b68ba510f4ed99018df2a7c5fb93
authorglisse <glisse@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 3 Aug 2012 12:21:14 +0000 (3 12:21 +0000)
committerglisse <glisse@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 3 Aug 2012 12:21:14 +0000 (3 12:21 +0000)
tree567eda01e87e579ad9caa799953466f4a2dfb161
parentbfa091eeca8305aee66359c5333e854ad3f2ddc1
gcc/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

PR tree-optimization/30318
* double-int.c (mul_double_wide_with_sign): New function.
(mul_double_with_sign): Call the new function.
* double-int.h (mul_double_wide_with_sign): Declare the new function.
* tree-vrp.c (extract_range_from_binary_expr_1) [MULT_EXPR]:
Handle integer types that wrap on overflow.
(quad_int_cmp): New helper function.
(quad_int_pair_sort): Likewise.

gcc/testsuite/
2012-08-03 Marc Glisse <marc.glisse@inria.fr>

PR tree-optimization/30318
* gcc.dg/tree-ssa/vrp77.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190125 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/double-int.c
gcc/double-int.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/vrp77.c [new file with mode: 0644]
gcc/tree-vrp.c