This has probably already been identified, 
but %r15 etc should be %r15d. You can't zero-
extend directly to a 64-bit register because 
zero-extending to 32-bit is guaranteed to 
zero the upper 32 bits.

Gareth aka. Kit

On Sat 25/04/20 18:00 , "Jonas Maebe" 
jo...@freepascal.org sent:
> On 25/04/2020 16:46, Michael Ring via fpc-
devel wrote:
> 
> 
> 
> >
> /Users/ring/devel/fpc/rtl/units/x86_64-
darwin/system.s:3469:15: error:
> > invalid operand for instruction
> 
> >        
> movzbl  %r12b,%rdx
> >
>             &nb
> sp;         ^~~~
> 
> 
> Probably caused by r45057. It would be nice 
if the internal assembler
> 
> were more rigorous in its checks, so it 
would catch these errors too.
> 
> 
> 
> 
> 
> Jonas
> 
> 
_____________________________________________
__
> 
> fpc-devel maillist  -  fpc-
de...@lists.freepascal.org
> https://lists.freepascal.org/cgi-
bin/mailman/listinfo/fpc-devel
> 
> 
> 
> 
> 

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to