Añadir código escrito en ASM a un programa en C++
Como la librería estándar de C++ deja mucho que desear (a mi gusto), pensé en añadir funciones para optimizar algunas funciones básicas en x86.
Io.h
void streamOut(int stream, char* output, int len);
io.asm
StreamOut:
mov eax, 4
pop ebx
pop ecx
pop edx
int 0x80
Y tengo unas cuantas dudas
1. Cuando se pasan parámetros en una función en C++, al hacer pop en ASM, ¿en qué orden lee?
2. Los archivos son compilados sin errores, pero cuando lo voy a convertir en un ejecutable me da referencia indefinida a la función.
3. Para que g++ me lea el código en ASM, ¿debo escribirlo en el estándar de GNU?
Io.h
void streamOut(int stream, char* output, int len);
io.asm
StreamOut:
mov eax, 4
pop ebx
pop ecx
pop edx
int 0x80
Y tengo unas cuantas dudas
1. Cuando se pasan parámetros en una función en C++, al hacer pop en ASM, ¿en qué orden lee?
2. Los archivos son compilados sin errores, pero cuando lo voy a convertir en un ejecutable me da referencia indefinida a la función.
3. Para que g++ me lea el código en ASM, ¿debo escribirlo en el estándar de GNU?
Respuesta de brisli
1