The current way that trivial addressing modes are detected incorrectly thinks that null pointers are non-trivial, leading to an infinite loop where we keep duplicating the same select. Fix this by being aware of null when deciding if an addressing mode is trivial.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Agreed. I also came up to the same case (null is not considered as non-trivial) however not sure it is a cause of hangs-up due to select is off by default in LLVM trunk at this moment. But probably we have the same issue with Phi.
There is also one issue related to initialMap due to it seems it is possible that two bases can have different types but we crash with assert in this case... Will try to come up with a patch today.