Mangler problem building libraries/ with gcc 3.0.4

Simon Marlow simonmar at microsoft.com
Fri Feb 22 07:09:12 EST 2002


> | srRN_ret:
> |         movl    %esi, %eax
> |         andl    8(%ebp), %eax
> |         cmpl    4(%ebp), %eax
> |         setne   %al				# al = eax==4(ebp) ? 1 :
> 0
> |         movzbl  %al, %edi			# edi is 0 or 1
> |         addl    $12, %ebp
> |         movl    GHCziBase_Bool_closure_tbl(,%edi,4), %esi
> |         sall    $2, %edi			# edi is 0 or 4
> |         negl    %edi				# edi is 0 or -4
> |         jmp     *stg_upd_frame_info-16(%edi)
> 
> Thing is, it beats me how gcc thought %edi was available for 
> allocation,
> unless -monly[234]-regs was in effect at the time.

Data.Array.Base is compiled with -monly-3-regs.

This looks like paranoia on the part of the mangler - I'll bet this error could just be disabled and things would work.  Nick: would you like to try that?

Cheers,
	Simon



More information about the Glasgow-haskell-bugs mailing list