[licensing dealt with separately]
> > Variable: D.1093058884, UID D.1093058884, int_32gimple_default_def > > 0x412130a8 1093058884 > This is clearly wrong, though I have no idea what caused it. > > Is it valid for uids to be so high? > No. Thanks, that helps. > From your description, you've implemented some sort of customized tree > reader. Not exactly, by my understanding of terminology. We do end up making gcc trees but we serialize something that is separately specified and not really the same, though some level of resemblance is unavoidable since they both are involved with compilation, i.e. they both have operations like "add" and notions of locals, parameters, functions, etc. Ours is stack-based though for example (not my preference, but it was already there). > Does it play nicely with the garbage collector? I think so. We have the GTY annotations, I've managed to crash things when I got them wrong/missing. I haven't moved all targets from 4.3.x to 4.5.x so I even have to hack on the code a bit because GTY has to be in a different place. I put the type declarations in seperate .h files, maintain both, and copy one over the other before compilation. We do have an open bug report about causing the gcc garbage collector consuming infinite memory, maybe due to a cycle in our data. But really the system works a ton. I can compile and run tens of thousands of lines of code, for multiple architectures. I "just" have to turn off inlining, and a small number of other optimizations. Clearly we are pretty good, and flawed. Notice that the gcc middle end seemed to have created this variable with the high uid. I checked the globals that guide uid assignment, found them after sending the first mail. They aren't so high. I haven't yet found where this uid comes from. I kind of suspect it might be a type mismatch, overwriting part of a tree node with the wrong type or such. I'll have to dig more. I know it comes from here: copy_phis_for_bb: ... SSA_NAME_DEF_STMT (new_res) = new_phi = create_phi_node (new_res, new_bb); Thanks, - Jay