[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
On Tue Oct 28 20:03:36 2008, [EMAIL PROTECTED] wrote: This has continued to pass for me on 10.4/PPC. Coke, if it's passing for you as well (which, from Smolder reports, appears to be the case), then can you close the ticket? No feedback from Coke, so I'm closing the ticket.
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
On Wed Oct 22 19:03:27 2008, [EMAIL PROTECTED] wrote: After yesterday's release, this passed for me on Darwin PPC 10.4 at r32119. I'll keep my fingers crossed and keep watching the Smolder reports. This has continued to pass for me on 10.4/PPC. Coke, if it's passing for you as well (which, from Smolder reports, appears to be the case), then can you close the ticket? thanks. kid51
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
After yesterday's release, this passed for me on Darwin PPC 10.4 at r32119. I'll keep my fingers crossed and keep watching the Smolder reports. kid51
Re: [perl #59636] [BUG] t/op/bitwise.t fails on Darwin
I don't know who is submitting the Darwin x86 tests. Probably Seneca. -- Email and shopping with the feelgood factor! 55% of income to good causes. http://www.ippimail.com
Re: [perl #59636] [BUG] t/op/bitwise.t fails on Darwin
James Keenan via RT wrote: On Sat Oct 18 16:28:22 2008, coke wrote: I'm submitting some every night at midnight on my osx/x86 box; if it's obviously a temp directory and the right time frame, it's probably me. Coke, can you confirm that the test is failing for you now? And, what version of Mac OS? So it seems to be failing consistently on Darwin regardless of platform. It's passing on Mac OS 10.5.5 on my Intel laptop. Which makes it difficult to debug the failure. Also, tonight I confirmed that the failure began at the recent merge in r31668. For the record, the svn diff of the test file at that point was: $ svn diff -r 31667:31668 t/op/bitwise.t Index: t/op/bitwise.t === --- t/op/bitwise.t (revision 31667) +++ t/op/bitwise.t (revision 31668) @@ -552,11 +552,11 @@ loop: if $P1 100 goto done ## shift number and i_number into $P2 and $I2. -n_shl $P2, number, $P1 +shl $P2, number, $P1 $I1 = $P1 shl $I2, i_number, $I1 ## compare in I registers. -$P3 = n_mod $P2, integer_modulus +$P3 = mod $P2, integer_modulus $I3 = $P3 if $I2 = 0 goto pos_check ## The register op gave a negative result, but the modulus will always be However, as this test is passing on many other platforms, it's quite possible that the failure is due to something that happened elsewhere in r31668. I would suggest reverting that one change to see if it solves the problem, but the n_mod and n_shl opcodes don't exist anymore. Could you run the attached modified version of the test file and send me the output? Allison ## The PMC shl op will promote Integer to Bigint when needed. We can't stuff a ## BigInt in an I register, but we can produce the same result modulo wordsize. ## [Only we cheat by using the word size minus one, so that we don't have to ## deal with negative numbers. -- rgr, 2-Jun-07.] .sub main :main ## Figure out the wordsize. We need integer_modulus because assigning a ## too-big BigInt throws an error otherwise. .include 'sysinfo.pasm' .local int i_bytes_per_word, i_bits_per_word_minus_one .local pmc bits_per_word_minus_one, integer_modulus i_bytes_per_word = sysinfo .SYSINFO_PARROT_INTSIZE i_bits_per_word_minus_one = 8 * i_bytes_per_word dec i_bits_per_word_minus_one bits_per_word_minus_one = new 'Integer' bits_per_word_minus_one = i_bits_per_word_minus_one integer_modulus = new 'BigInt' integer_modulus = 1 integer_modulus = bits_per_word_minus_one ## Test shifting a positive number. new $P0, 'Integer' set $P0, 101 test_shift($P0, integer_modulus) ## Test shifting a negative number. set $P0, -101 test_shift($P0, integer_modulus) .end .sub test_shift .param pmc number .param pmc integer_modulus new $P1, 'Integer' set $P1, 1 .local int i_number i_number = number ## Start the loop. loop: if $P1 100 goto done ## shift number and i_number into $P2 and $I2. say \nno error before shl $S0 = typeof number print typeof first argument 'number' is say $S0 $S0 = typeof $P1 print typeof second argument '$P1' is say $S0 shl $P2, number, $P1 say no error after shl $S0 = typeof $P2 print typeof result '$P2' is say $S0 $I1 = $P1 shl $I2, i_number, $I1 ## compare in I registers. say \nno error before mod $S0 = typeof $P2 print typeof first argument '$P2' is say $S0 $S0 = typeof integer_modulus print typeof second argument 'integer_modulus' is say $S0 $P3 = mod $P2, integer_modulus say no error after mod $S0 = typeof $P3 print typeof result '$P3' is say $S0 $I3 = $P3 if $I2 = 0 goto pos_check ## The register op gave a negative result, but the modulus will always be ## positive. If the truncated result is correct, then the difference will ## be the most negative INTVAL, which is the only number for which -x==x. $I4 = $I3 - $I2 $I5 = - $I4 if $I4 == $I5 goto ok goto bad pos_check: if $I2 == $I3 goto ok bad: print oops; not ok: print i_number print ' ' print $I1 print ' gives I ' print $I2 print ' vs. P ' print $P3 print .\n print $I5 print \n ok: ## set up for the next one inc $P1 goto loop done: print done.\n .end
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
Still failing on Darwin/PPC as of r32014: http://smolder.plusthree.com/app/public_projects/tap_stream/6320/163 And I should note that it's also been failing on Darwin/i386: http://smolder.plusthree.com/app/public_projects/tap_stream/6316/163
Re: [perl #59636] [BUG] t/op/bitwise.t fails on Darwin
James Keenan via RT wrote: Still failing on Darwin/PPC as of r32014: http://smolder.plusthree.com/app/public_projects/tap_stream/6320/163 Looking at the specific test in question, this may be an integer size problem. And I should note that it's also been failing on Darwin/i386: http://smolder.plusthree.com/app/public_projects/tap_stream/6316/163 What version of Darwin and what x86 hardware? Allison
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
On Sat Oct 18 12:01:13 2008, [EMAIL PROTECTED] wrote: James Keenan via RT wrote: Still failing on Darwin/PPC as of r32014: http://smolder.plusthree.com/app/public_projects/tap_stream/6320/163 Looking at the specific test in question, this may be an integer size problem. And I should note that it's also been failing on Darwin/i386: http://smolder.plusthree.com/app/public_projects/tap_stream/6316/163 What version of Darwin and what x86 hardware? The tests with this tag are from my 10.4 iBook (which many Parrot developers have seen and even worked on!): Tags(/usr/bin/gcc, 0.7.1, Perl 5.10.0 darwin-2level, darwin, ppc) I don't know who is submitting the Darwin x86 tests. Tags(0.7.1, Perl 5.8.8 darwin-2level, cc, darwin, i386) Smolder, FBOW, does not indicate who submitted reports. kid51
Re: [perl #59636] [BUG] t/op/bitwise.t fails on Darwin
On Sat, Oct 18, 2008 at 6:24 PM, James Keenan via RT [EMAIL PROTECTED] wrote: On Sat Oct 18 12:01:13 2008, [EMAIL PROTECTED] wrote: James Keenan via RT wrote: Still failing on Darwin/PPC as of r32014: http://smolder.plusthree.com/app/public_projects/tap_stream/6320/163 Looking at the specific test in question, this may be an integer size problem. And I should note that it's also been failing on Darwin/i386: http://smolder.plusthree.com/app/public_projects/tap_stream/6316/163 What version of Darwin and what x86 hardware? The tests with this tag are from my 10.4 iBook (which many Parrot developers have seen and even worked on!): Tags(/usr/bin/gcc, 0.7.1, Perl 5.10.0 darwin-2level, darwin, ppc) I don't know who is submitting the Darwin x86 tests. Tags(0.7.1, Perl 5.8.8 darwin-2level, cc, darwin, i386) Smolder, FBOW, does not indicate who submitted reports. kid51 I'm submitting some every night at midnight on my osx/x86 box; if it's obviously a temp directory and the right time frame, it's probably me. -- Will Coke Coleda
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
On Sat Oct 18 16:28:22 2008, coke wrote: I'm submitting some every night at midnight on my osx/x86 box; if it's obviously a temp directory and the right time frame, it's probably me. So it seems to be failing consistently on Darwin regardless of platform. Also, tonight I confirmed that the failure began at the recent merge in r31668. For the record, the svn diff of the test file at that point was: $ svn diff -r 31667:31668 t/op/bitwise.t Index: t/op/bitwise.t === --- t/op/bitwise.t (revision 31667) +++ t/op/bitwise.t (revision 31668) @@ -552,11 +552,11 @@ loop: if $P1 100 goto done ## shift number and i_number into $P2 and $I2. -n_shl $P2, number, $P1 +shl $P2, number, $P1 $I1 = $P1 shl $I2, i_number, $I1 ## compare in I registers. -$P3 = n_mod $P2, integer_modulus +$P3 = mod $P2, integer_modulus $I3 = $P3 if $I2 = 0 goto pos_check ## The register op gave a negative result, but the modulus will always be However, as this test is passing on many other platforms, it's quite possible that the failure is due to something that happened elsewhere in r31668. kid51
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
Still failing as of r31872.
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
This was passing on Darwin as of r31667, i.e., just before the merge. See http://smolder.plusthree.com/app/public_projects/tap_stream/5891/163
[perl #59636] [BUG] t/op/bitwise.t fails on Darwin
FWIW, this test passed for me on Linux at the same SVN revision. And it has always passed for me on Darwin previously, most recently at r31503 on 20080929.