Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
Hi Hakan, thanks for the commits +# We want to check that the array bound checks are removed, +# so it's this part of the trace. However we dont care about +# the force_token()'s. Can they be ignored? yes, I think they can be just ignored, because AFAIK operations without side effects and whose result is unused, are removed by the backend regalloc. ciao, Anto ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev
Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
Right. My point was that since we dont care if they are there or not the test should not test that they are there and fail if they are not. So if there is an easy way to ignore them in this new test_pypy_c framework (which is very cool by the way), we should. If it's not easy I'm fine with keeping the test as it is. My main motivation here is to learn about the new framework :) ah, I understand now. No, ignoring all force_tokens at once is not possible at the moment, but I agree that it would be a nice feature, I think I'll implement it later. Btw, I fear I need more of your help with test_silly_max and test_iter_max (see 2e5bd737be0c): what do we want to check there? ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev
Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
On Fri, Apr 15, 2011 at 10:38 AM, Antonio Cuni anto.c...@gmail.com wrote: Right. My point was that since we dont care if they are there or not the test should not test that they are there and fail if they are not. So if there is an easy way to ignore them in this new test_pypy_c framework (which is very cool by the way), we should. If it's not easy I'm fine with keeping the test as it is. My main motivation here is to learn about the new framework :) ah, I understand now. No, ignoring all force_tokens at once is not possible at the moment, but I agree that it would be a nice feature, I think I'll implement it later. Btw, I fear I need more of your help with test_silly_max and test_iter_max (see 2e5bd737be0c): what do we want to check there? ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev Note that force_token operation is really cheap in the backend. It also does not use a whole lot of space. ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev
Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
Hi, the point here is that we want max(a,b) to be turned into a single guard while we dont want max(*range(300)) and max(range(300)) to blow up into 300 guards, since that might lead to 2**300 different traces. I'm not sure how to best test this... On Fri, Apr 15, 2011 at 10:38 AM, Antonio Cuni anto.c...@gmail.com wrote: Right. My point was that since we dont care if they are there or not the test should not test that they are there and fail if they are not. So if there is an easy way to ignore them in this new test_pypy_c framework (which is very cool by the way), we should. If it's not easy I'm fine with keeping the test as it is. My main motivation here is to learn about the new framework :) ah, I understand now. No, ignoring all force_tokens at once is not possible at the moment, but I agree that it would be a nice feature, I think I'll implement it later. Btw, I fear I need more of your help with test_silly_max and test_iter_max (see 2e5bd737be0c): what do we want to check there? ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev -- Håkan Ardö ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev
Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
On 15/04/11 10:50, Hakan Ardo wrote: Hi, the point here is that we want max(a,b) to be turned into a single guard while we dont want max(*range(300)) and max(range(300)) to blow up into 300 guards, since that might lead to 2**300 different traces. I'm not sure how to best test this... can't we just check that the loop contains a residual call to min_max_loop? ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev
Re: [pypy-dev] [pypy-svn] pypy default: fixed test_circular
OK, I also added a check on the guard count. On Fri, Apr 15, 2011 at 11:55 AM, Antonio Cuni anto.c...@gmail.com wrote: On 15/04/11 10:50, Hakan Ardo wrote: Hi, the point here is that we want max(a,b) to be turned into a single guard while we dont want max(*range(300)) and max(range(300)) to blow up into 300 guards, since that might lead to 2**300 different traces. I'm not sure how to best test this... can't we just check that the loop contains a residual call to min_max_loop? -- Håkan Ardö ___ pypy-dev@codespeak.net http://codespeak.net/mailman/listinfo/pypy-dev