Zamiana .cpp na .asm

Zamiana .cpp na .asm
LU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

chciałbym z pliku .cpp otrzymać plik assemblera. Czy istnieje taka możliwość?
(aplikacja konsolowa)

plx211
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 181
5

Istnieje taka możliwość.
Dla przykładu dla GCC wystarczy dodać flagę -S -fverbose-asm.
Jeśli masz skompilowaną binarke z sybolami debygowania możesz użyć objdump.
Wszystko zależy gdzie, jak i przy pomocy czego kompilujesz :)

MarekR22
  • Rejestracja: dni
  • Ostatnio: dni
3

https://godbolt.org/

Można podejrzeć jakich flag używa godbolt:
Dla gcc jest to:

Kopiuj
g++ -g -o /tmp/compiler-explorer-compiler2021413-4764-178um45.4vou/output.s -masm=intel -S -fdiagnostics-color=always /tmp/compiler-explorer-compiler2021413-4764-178um45.4vou/example.cpp

dla msvc

Kopiuj
cl /nologo /FA /c /FaC:\Users\ContainerAdministrator\AppData\Local\Temp\compiler-explorer-compiler2021413-23568-35mvnv.aeqzs\output.s /FoC:\Users\ContainerAdministrator\AppData\Local\Temp\compiler-explorer-compiler2021413-23568-35mvnv.aeqzs\output.s.obj -EHsc C:\Users\ContainerAdministrator\AppData\Local\Temp\compiler-explorer-compiler2021413-23568-35mvnv.aeqzs\example.cpp

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.