On Tue, 2015-08-25 at 14:44 -0600, Jeff Law wrote: > > I want to preserve the copy of $sp to $12 and I also want to preserve the > > .cfi psuedo-ops (and code) in the exit block and epilogue in order for > > exception handling to work correctly. One way I thought of doing this > > is to create an edge from the entry block to the exit block but I am > > unsure of all the implications of creating a fake/eh/abnormal edge to > > do this and which I would want to use. > Presumably it's the RTL DCE pass that's eliminating this stuff?
Actually, it looks like is peephole2 that is eliminating the instructions (and .cfi psuedo-ops). > > Do you have the FRAME_RELATED bit set of those insns? > > But what I don't understand is why preserving the code is useful if it > can't be reached. Maybe there's something about the dwarf2 unwinding > that I simply don't understand -- I've managed to avoid learning about > it for years. I am not entirely sure I need the code or if I just need the .cfi psuedo-ops and that I need the code to generate the .cfi stuff. I wish I could avoid the dwarf unwinder but that seems to be the main problem I am having with stack realignment. Getting the cfi stuff right so that the unwinder works properly is proving very hard. Steve Ellcey sell...@imgtec.com