Bug#335881: numerix: FTBFS: Segfaults in tests
* Michel Quercia:
> I don't know how to make a patch. Is this ok ?
It is.
> --- 985,991 ----
> #define BODY(x,y,z) \
> adcl x(%ebx,%ecx,4), %eax; \
> ! /* movl y(%esi,%ecx,4), %edx */ .byte 0x8B, 0x54, 0x8E, y; \
> movl %eax, x(%edi,%ecx,4); \
> ! /* adcl y(%ebx,%ecx,4), %edx */ .byte 0x13, 0x54, 0x8B, y; \
> movl z(%esi,%ecx,4), %eax; \
> movl %edx, y(%edi,%ecx,4)
You must also byte-code the final movl instruction, I'm afraid:
50: 13 44 8b fc adc 0xfffffffc(%ebx,%ecx,4),%eax
54: 8b 54 8e 00 mov 0x0(%esi,%ecx,4),%edx
58: 89 44 8f fc mov %eax,0xfffffffc(%edi,%ecx,4)
5c: 13 54 8b 00 adc 0x0(%ebx,%ecx,4),%edx
60: 8b 44 8e 04 mov 0x4(%esi,%ecx,4),%eax
64: 89 14 8f mov %edx,(%edi,%ecx,4)
(This is after your patch has been applied.)
I've checked with the binutils folks; using .byte is indeed the
recommended way of dealing with this issue.
Reply to: