After linking each _DxxTypeInfo_yyyy__initZ symbol should have a unique address, so why are we using hash of type name as TypeInfo.toHash()? I don't think this has anything to do with compacting GC. Is there something I'm missing?