-ddump-cmm doesn't work when compiling cmm files
I want to see Cmm generated for StgMiscClosures.cmm so I tried adding -ddump-cmm to the command the build system runs to build it, which doesn't work:
$ "inplace/bin/ghc-stage1" -static -O0 -H64m -Wall -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-ghcconstants/header -Irts -Irts/dist/build -DCOMPILING_RTS -DFS_NAMESPACE=rts -this-unit-id rts -dcmm-lint -i -irts -irts/dist/build -Irts/dist/build -irts/dist/build/./autogen -Irts/dist/build/./autogen -O2 -Wcpp-undef -Wnoncanonical-monad-instances -c rts/StgMiscClosures.cmm -o rts/dist/build/StgMiscClosures.o -fforce-recomp -ddump-cmm
Why do I need cmm dumps of cmm files?
- When building Cmm even the parser does code generation, so the Cmm after parsing is quite different than the input and contains useful information.
- I want all macros to be expanded, running CPP manually is painful.
- I currently can't see output of Cmm optimisations when building Cmm files.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.6.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |