gcc에서 #define 등으로 복잡하게 정의되어 있는 것을 컴파일할 때 어떻게 해석했는지 알고 싶은데, 바이너리를 만들지 않고 #define이나 #if 등을 해석만 해서 다시 소스코드로 출력하 는 방법있나요? 어셈블리 코드를 만들어내는 옵션은 있는데 이런 옵션도 있나?