Re: [PATCH] Fix mpx testcases (Re: [CHKP] Fix for PR79990)

2017-06-08 Thread Ilya Enkovich
2017-06-08 22:45 GMT+03:00 Jakub Jelinek : > On Tue, May 09, 2017 at 03:29:40PM +0200, Alexander Ivchenko wrote: >> 2017-05-09 Alexander Ivchenko >> >> * gcc.target/i386/mpx/hard-reg-2-lbv.c: New test. >> * gcc.target/i386/mpx/hard-reg-2-nov.c: New test. >> * gcc.target/i

[PATCH] Fix mpx testcases (Re: [CHKP] Fix for PR79990)

2017-06-08 Thread Jakub Jelinek
On Tue, May 09, 2017 at 03:29:40PM +0200, Alexander Ivchenko wrote: > 2017-05-09 Alexander Ivchenko > > * gcc.target/i386/mpx/hard-reg-2-lbv.c: New test. > * gcc.target/i386/mpx/hard-reg-2-nov.c: New test. > * gcc.target/i386/mpx/hard-reg-2-ubv.c: New test. These tests

Re: [CHKP] Fix for PR79990

2017-05-10 Thread Ilya Enkovich
2017-05-09 16:29 GMT+03:00 Alexander Ivchenko : > Hi, > > Here is the latest version of the patch with all comments addressed: > > gcc/ChangeLog: > > 2017-05-09 Alexander Ivchenko > > * tree-chkp.c (chkp_get_hard_register_var_fake_base_address): > New function. > (chkp_get_hard_r

Re: [CHKP] Fix for PR79990

2017-05-09 Thread Alexander Ivchenko
Hi, Here is the latest version of the patch with all comments addressed: gcc/ChangeLog: 2017-05-09 Alexander Ivchenko * tree-chkp.c (chkp_get_hard_register_var_fake_base_address): New function. (chkp_get_hard_register_fake_addr_expr): Ditto. (chkp_build_addr_expr): Ad

Re: [CHKP] Fix for PR79990

2017-04-21 Thread Alexander Ivchenko
Something like that? diff --git a/gcc/tree-chkp.c b/gcc/tree-chkp.c index 3ef73a9..3fb76bc 100644 --- a/gcc/tree-chkp.c +++ b/gcc/tree-chkp.c @@ -3700,6 +3700,11 @@ chkp_find_bounds_1 (tree ptr, tree ptr_src, gimple_stmt_iterator *iter) case ARRAY_REF: case COMPONENT_REF: addr = g

Re: [CHKP] Fix for PR79990

2017-04-20 Thread Ilya Enkovich
2017-04-20 12:27 GMT+03:00 Alexander Ivchenko : > Thanks for correcting the usage of get_base_address. I fixed that. > Plus addressed the comment about the avoiding the usage of > chkp_find_bounds. > > > gcc/testsuite/ChangeLog: > > 2017-04-20 Alexander Ivchenko > > * gcc.target/i386/mpx

Re: [CHKP] Fix for PR79990

2017-04-20 Thread Alexander Ivchenko
Thanks for correcting the usage of get_base_address. I fixed that. Plus addressed the comment about the avoiding the usage of chkp_find_bounds. gcc/testsuite/ChangeLog: 2017-04-20 Alexander Ivchenko * gcc.target/i386/mpx/hard-reg-2-lbv.c: New test. * gcc.target/i386/mpx/hard-

Re: [CHKP] Fix for PR79990

2017-04-19 Thread Alexander Ivchenko
Hi, Thanks for the comments, that was a good idea to place all the logic inside of chkp_build_addr_expr function. I followed it and here is what I got: gcc/testsuite/ChangeLog: 2017-04-19 Alexander Ivchenko * gcc.target/i386/mpx/hard-reg-2-lbv.c: New test. * gcc.target/i386/m

Re: [CHKP] Fix for PR79990

2017-04-10 Thread Ilya Enkovich
2017-04-02 23:52 GMT+03:00 Alexander Ivchenko : > Hi, > > Here is the patch that roughly follows your idea. > Some comments: > > - There are more cases than array_ref overflow. We need to take care > of component_ref and both underflows/overflows are possible > - I could not make it work with "0" a

Re: [CHKP] Fix for PR79990

2017-04-02 Thread Alexander Ivchenko
Hi, Here is the patch that roughly follows your idea. Some comments: - There are more cases than array_ref overflow. We need to take care of component_ref and both underflows/overflows are possible - I could not make it work with "0" as a fake address, because then catching lower bounds violation

Re: [CHKP] Fix for PR79990

2017-03-23 Thread Ilya Enkovich
2017-03-23 17:18 GMT+03:00 Alexander Ivchenko : > Hi, > > The patch below attempts to fix the PR. I checked that it did not > break any of mpx.exp tests, but I did not run the full testing yet. > Would like to know whether this approach is generally correct or not. > > The issue is that we have the

[CHKP] Fix for PR79990

2017-03-23 Thread Alexander Ivchenko
Hi, The patch below attempts to fix the PR. I checked that it did not break any of mpx.exp tests, but I did not run the full testing yet. Would like to know whether this approach is generally correct or not. The issue is that we have the hard reg vector variable: typedef int U __attribute__ ((ve