Re: sparse-next assertion failures on cygwin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 08/03/17 01:38, Ramsay Jones wrote:
> 
> On 07/03/17 06:35, Luc Van Oostenryck wrote:
>> On Mon, Mar 06, 2017 at 10:17:36PM +0000, Ramsay Jones wrote:
>>> So, this looks like a cygwin specific toolchain problem. I also assumed that
>>> the 'backend/loop.c' test had the same problem (but I admit to never having
>>> checked properly!).
>>>
>>> ...
>>>
>>> So, again, this seems like a cygwin specific llvm tool problem.
>>>
>>> ...
>>>    
>>>         TEST     Loops (backend/loop.c)
>>>    error: actual error text does not match expected error text.
>>>    error: see backend/loop.c.error.* for further investigation.
>>>    --- backend/loop.c.error.expected	2017-03-06 21:57:27.695953300 +0000
>>>    +++ backend/loop.c.error.got	2017-03-06 21:57:30.636386100 +0000
>>>    @@ -0,0 +1,2 @@
>>>    +assertion "ctype" failed: file "sparse-llvm.c", line 312, function: val_to_value
>>>    +.././sparsec: line 35:  8900 Aborted                 (core dumped) $DIRNAME/sparse-llvm $SPARSEOPTS > $TMPLLVM
>>
>> That's surprising as it appears that you have linearized code that is
>> different that what we have on Linux (one of the type/symbol is NULL).
> 
> No, the linearized code is exactly the same on Linux and cygwin.
> (checked with both diff and sha1sum).
> 
>> It whould be very interesting to:
>> 1) show the result of test-linearize on the file
> 
> $ ./test-linearize validation/backend/loop.c
> foo:
> .L0:
> 	<entry-point>
> 	phisrc.32   %phi4(y) <- $0
> 	br          .L4
> 
> .L4:
> 	phi.32      %r1(y) <- %phi4(y), %phi5(y)
> 	setlt.32    %r2 <- %r1(y), $1000
> 	cbr         %r2, .L1, .L5
> 
> .L1:
> 	call.32     %r4 <- bar, %arg1
> 	add.32      %r7 <- %r1(y), %r4
> 	phisrc.32   %phi5(y) <- %r7
> 	br          .L4
> 
> .L5:
> 	ret.32      %r1(y)
> 
> 
> $ 
> 
>> 2) replace the assert with a check followed with a dump of the
>>    offending pseudo (show_pseudo()) and ideally the corresponding
>>    instruction (show_instruction()).
> 
> <show_pseudo>: $0
> <show_instruction>: phisrc.32   %phi4(y) <- $0     (%r1(y))
> 
>> No, nothing like that on Linux.
> 
> It seems Christopher is seeing the same thing. (He didn't say that
> he saw it on Linux, but ...).
> 
> Are you sure you are running/testing the sparse-next branch (which
> is currently at commit ab8076b83d ("llvm: fix output_op_[ptr]cast()",
> 05-03-2017)?

And, of course, I've just noticed that sparse-next has been updated
to remove the top four commits! (which, naturally, also removes the
problem :-P ).

ATB,
Ramsay Jones

--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux