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

Re: Mono 4.6.1 FTBFS on mipsel



The Runtime is supposed to lower 64 bit ops to sets of 32 bit ones. Will try to determine why that isn't happening 

Sent from my iPhone

> On 8 Oct 2016, at 15:18, Aurelien Jarno <aurelien@aurel32.net> wrote:
> 
>> On 2016-10-08 13:42, Aurelien Jarno wrote:
>>> On 2016-10-07 21:04, Jo Shields wrote:
>>> Dear MIPS team,
>>> 
>>> 
>>> It seems that between Mono 4.2 and 4.6, Mono stopped building properly on little-endian 32-bit MIPS.
>>> 
>>> 
>>> https://buildd.debian.org/status/fetch.php?pkg=mono&arch=mipsel&ver=4.6.1.3%2Bdfsg-2&stamp=1475869442
>> 
>> I have just got a quick look at the code triggering the assert:
>> 
>> |        case OP_LMUL:
>> |        case OP_LDIV:
>> |        case OP_LDIV_UN:
>> |        case OP_LREM:
>> |        case OP_LREM_UN:
>> |        case OP_LSHL:
>> |        case OP_LSHR:
>> |        case OP_LSHR_UN:
>> |                mono_print_ins (ins);
>> |                g_assert_not_reached ();
>> 
>> For what I understand, it means that one of the above "internal
>> intermediate instruction" (sorry don't know the mono name for that) has
>> been emitted, and is not yet implemented for the MIPS backend.
>> 
>> Could you confirm? If it is the case and the only problem, that should
>> be relatively easy to implement. I'll give a try in the next days.
> 
> These opcode concerns 64-bit long values. It's actually normal they are
> not implemented for 32-bit MIPS. Could it be that they are listed
> incorrectly in cpu-mips.md, probably in prevision of the 64-bit MIPS
> support?
> 
> Aurelien
> 
> -- 
> Aurelien Jarno                          GPG: 4096R/1DDD8C9B
> aurelien@aurel32.net                 http://www.aurel32.net


Reply to: