Building GHC 7.7.20130526 (perf) for Windows x86_64 fails with Cmm lint error
Building GHC 7.7.20130526 for Windows x86_64 fails with the following error:
"inplace/bin/ghc-stage1.exe" -static -optc-DDEBUG -ticky -DTICKY_TICKY -O -H256m -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-ghcconstants/header -Irts -Irts/dist/build -DCOMPILING_RTS -package-name rts -dcmm-lint -i -irts -irts/dist/build -irts/dist/build/autogen -Irts/dist/build -Irts/dist/build/autogen -O2 -O0 -c rts/PrimOps.cmm -o rts/dist/build/PrimOps.debug_o
Cmm lint error:
in basic block cf
in MachOp application:
I32[ALLOC_PRIM_adm] + (8 + 8)
op is expecting: [W32, W32]
arguments provide: [I32, I64]
Program was:
{offset
cc: _cd::I64 = R1;
if (I64[CurrentNursery + 16] == 0) goto cg; else goto ci;
ci: if (I64[I64[g0] + 56] >= %MO_SS_Conv_W32_W64(I32[large_alloc_lim])) goto cg; else goto ch;
cg: HpAlloc = 0;
R9 = stg_newByteArrayzh;
R1 = _cd::I64;
call stg_gc_prim_n(R1) args: 8, res: 0, upd: 8;
ch: _cj::I64 = (_cd::I64 + 8 - 1) / 8;
_cn::I64 = (8 + 8) / 8 + _cj::I64;
_cm::I64 = allocate;
_cl::I64 = BaseReg - 24;
_ck::I64 = _cn::I64;
(_ce::P64) = call "ccall" arg hints: [PtrHint,] result hints: [PtrHint] (_cm::I64)(_cl::I64, _ck::I64);
I32[ALLOC_PRIM_ctr] = I32[ALLOC_PRIM_ctr] + 1 :: W32;
I32[ALLOC_PRIM_adm] = I32[ALLOC_PRIM_adm] + (8 + 8);
I32[ALLOC_PRIM_gds] = I32[ALLOC_PRIM_gds] + _cj::I64 * 8;
I32[ALLOC_PRIM_slp] = I32[ALLOC_PRIM_slp] + 0;
I64[_ce::P64] = stg_ARR_WORDS_info;
I64[_ce::P64 + 8 + 0] = _cd::I64;
R1 = _ce::P64;
call (P64[(old + 8)])(R1) args: 8, res: 0, upd: 8;
}
<no location info>:
Compilation had errors
Trac metadata
Trac field | Value |
---|---|
Version | 7.7 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |