[fpc-pascal] Invalid combination of opcode and operands

Marco van de Voort fpc at pascalprogramming.org
Mon Feb 23 17:00:14 CET 2026


Op 23-2-2026 om 16:35 schreef Adriaan van Os via fpc-pascal:
>
> The following error message seeems to be new for fpc-3.3.1 (using 
> -RIntel)
>
> ....
>
>     @Remainder_1:
>      MOV   Length,EBX
>      AND   Length,1
>      JZ    @TheEnd
>      MOVSS xmm2,[SourceBuffer] <--- Asm: [movss xmmreg2,mem64] invalid 
> combination of opcode and operands
>      MINSS xmm0,xmm2
>      MAXSS xmm1,xmm2
>
>
> Has anything changed here ?
>
Disclaimer:  I don't known 100% how OS X handles the analogue, so 
assuming windows for a moment.

Was this code meant for 64-bit or 32-bit, and are you running it on the 
same architecture where you originally tested/used it?

This because the sourcebuffer seems to indicate [mem64], which sounds 
like target 64-bit intel, which might expect a rip relative addressing like

MOVSS xmm2,[rip+SourceBuffer]

But if the code was originally 32-bit the original expression would have 
been valid.




More information about the fpc-pascal mailing list