Re: extract_range_from_binary* cleanups for VRP

2018-07-04 Thread Richard Biener
On Tue, Jul 3, 2018 at 7:49 PM Aldy Hernandez wrote: > > > > On 07/03/2018 08:16 AM, Martin Liška wrote: > > Hi. > > > > It caused UBSAN errors: > > > > $ cat ubsan.i > > int a; > > void d() { int c, b = 8 - a; } > > > > $ /home/marxin/Programming/gcc2/objdir/./gcc/xgcc > > -B/home/marxin/Program

Re: extract_range_from_binary* cleanups for VRP

2018-07-04 Thread Martin Liška
On 07/03/2018 07:48 PM, Aldy Hernandez wrote: > > > On 07/03/2018 08:16 AM, Martin Liška wrote: >> Hi. >> >> It caused UBSAN errors: >> >> $ cat ubsan.i >> int a; >> void d() { int c, b = 8 - a; } >> >> $ /home/marxin/Programming/gcc2/objdir/./gcc/xgcc >> -B/home/marxin/Programming/gcc2/objdir/.

Re: extract_range_from_binary* cleanups for VRP

2018-07-03 Thread Aldy Hernandez
On 07/03/2018 08:16 AM, Martin Liška wrote: Hi. It caused UBSAN errors: $ cat ubsan.i int a; void d() { int c, b = 8 - a; } $ /home/marxin/Programming/gcc2/objdir/./gcc/xgcc -B/home/marxin/Programming/gcc2/objdir/./gcc/ ubsan.i -c -O2 ../../gcc/tree-vrp.c:1715:26: runtime error: load of val

Re: extract_range_from_binary* cleanups for VRP

2018-07-03 Thread Martin Liška
Hi. It caused UBSAN errors: $ cat ubsan.i int a; void d() { int c, b = 8 - a; } $ /home/marxin/Programming/gcc2/objdir/./gcc/xgcc -B/home/marxin/Programming/gcc2/objdir/./gcc/ ubsan.i -c -O2 ../../gcc/tree-vrp.c:1715:26: runtime error: load of value 255, which is not a valid value for type 'bo

Re: extract_range_from_binary* cleanups for VRP

2018-07-02 Thread Richard Biener
On Fri, Jun 29, 2018 at 7:55 PM Aldy Hernandez wrote: > > Howdy! > > Attached are some cleanups to the VRP code dealing with PLUS/MINUS_EXPR > on ranges. This will make it easier to share code with any other range > implementation in the future, but is completely independent from any > other work

extract_range_from_binary* cleanups for VRP

2018-06-29 Thread Aldy Hernandez
Howdy! Attached are some cleanups to the VRP code dealing with PLUS/MINUS_EXPR on ranges. This will make it easier to share code with any other range implementation in the future, but is completely independent from any other work. Currently there is a lot of code duplication in the PLUS/MIN