Forward reference in type declarations in LLVM 1.9

%TCDef = type { [16 x ubyte], [16 x ubyte], [16 x ubyte], [16 x ubyte], [64 x ubyte], ushort, %anonymous.5, %anonymous.5, %anonymous.5, uint, uint, uint, ushort, uint, uint, uint, uint }

%anonymous.5 = type { ubyte, ubyte, ubyte, ubyte }

I have a parser that reads LL files but doesn’t handle forward references to structure types. I’ve been using 1.9 for quite a while and have just now bumped into this. Are there any options available for llvm-dis to emit complete types first? Perhaps there’s another approach to get the optimizer and/or other tools to keep all the input types and retain their declaration order? I see there’s an opton -deadtypeelim to the optimizer. I tried -nodeadtypeelim and -deadtypeelim=0 and -deadtypeelim=false, but it doesn’t appear to accept any of those.

Thanks for your help.