Go 어셈블리 출력을 더 읽기 쉽게 만들기
Go 컴파일러에서 생성된 어셈블리 출력은 해독하기 어려울 수 있습니다. 이 문서에서는 어셈블리 출력 파일을 생성하고 어셈블리 코드를 레이블이 있는 별도의 함수로 구성하는 두 가지 일반적인 문제에 대한 솔루션을 제공합니다.
어셈블리 출력을 파일로 덤프
하려면 어셈블리 출력을 파일에 저장하고 다음 명령을 사용하여 리디렉션합니다.
go tool compile -S file.go > file.s
어셈블리를 다음으로 분리 함수
어셈블리 코드를 레이블이 있는 함수로 분리하려면 -N 플래그를 사용하여 컴파일러 최적화를 비활성화하세요.
go tool compile -S -N file.go
추가로 gccgo를 사용하면 다음과 같은 대체 접근 방식도 제공됩니다.
gccgo -S -O0 -masm=intel test.go
이렇게 하면 최적화 수준(-O0/1/2/3)을 조정할 수 있는 test.s라는 어셈블리 파일이 생성됩니다. 컴파일러 최적화의 효과를 관찰합니다.
위 내용은 Go 어셈블리 출력을 더 읽기 쉽고 체계적으로 만들려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!