Cómo escribir en ensamblador en línea de GNU Pascal?
-
12-09-2019 - |
Pregunta
Dado que no hay referencia oficial, tengo sólo un tutorial gpcasm.zip .Pero cuando trato de seguir el Tut y probar la línea ejemplo de montaje en mi GPC debian.The no estaba contento con él.
gnu_asm.pas : In procedure 'MyStupidDelay': gnu_asm.pas:3: error : can't find a register in class AREG while reloading asm
Este es el código
program gnu_asm;
Procedure MyStupidDelay(time : integer);
Begin
Asm("0 : pushl $0xfffff
1 : decl(%%esp)
jnz 1b
addl $0x4, %%esp
decl %%eax
jnz 0b"
:
: "a" (time)
: "eax" );
end;
begin
write("only for test");
end.
Otra pregunta, ¿hay alguna otra refernece, tutoriales, ejemplos de ensamblado en línea en Pascal de GNU.
Gracias.
Solución
El problema puede no ser la parte pascal pero la parte ensamblador.
este para un problema similar.
Para obtener más información pls el estado de su equipo de destino y informaciones sobre las opciones de compilación.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow