I've gotten as far as seeing that GTKWave supports this and thinking it would be cool to add it...
High level: this is probably doable without xml2stems and doing the analysis in a late-running FIRRTL transform. E.g., you run a transform that packages all the Info fields (which are the source locators) into a stems file.
This probably isn't that hard to do if you know what the format of the Stems file should be.
Would be super cool, I think.