Avatar ·

Cómo obtener el listado en ensamblador del código C/C++ en GCC

Hola a todos. Estoy aprendiendo C++ y trato de entender cómo el compilador traduce mi código a instrucciones de máquina. Quiero ver en qué se convierte, por ejemplo, un bucle simple o una llamada a función. Uso GCC (g++) en Linux. Probé la flag `-S`, que parece crear un archivo `.s`, pero hay mucha basura: etiquetas, directivas `.cfi_*`, nombres extraños como `.LC0`. Incluso un simple `hello.cpp`: ```cpp #include int main() { std::cout << "Hello\n"; return 0; } ``` Después de `g++ -S hello.cpp`, en `hello.s` veo no solo código, sino también mucha información adicional. ¿Cómo obtener un listado en ensamblador limpio, donde solo se vea el código de mi función, sin toda esa información de servicio? También me interesa: ¿se puede ver el ensamblador directamente en la terminal, sin crear un archivo? ¿Y cómo hacer un listado con el código fuente intercalado, para ver claramente en qué se convierte cada línea de C++? En resumen, por favor, indíquenme las mejores prácticas para obtener la salida en ensamblador de C/C++ en GCC. ¡Gracias! <<>> <