On Mon, 20 Jun 2011, Rainer Orth wrote: > * Move all remaining unwinder-only macros to libgcc: UNW_IVMS_MODE, > MD_UNW_COMPATIBLE_PERSONALITY_P, MD_FROB_UPDATE_CONTEXT.
I don't see any sign of macros being poisoned in system.h. For macros used in target-independent unwinder code - at least MD_FROB_UPDATE_CONTEXT - that used to be defined in the host tm.h but now no longer should be, I think poisoning in system.h is appropriate. > * The only unwinder-related macro I haven't moved is > LIBGCC2_UNWIND_ATTRIBUTE. It is only defined gcc/config/mips/mips.h. > I suppose we would need a libgcc equivalent of tm.h for that, > something I didn't want to attack at this point. What about DWARF_ZERO_REG and PRE_GCC3_DWARF_FRAME_REGISTERS? DWARF_REG_TO_UNWIND_COLUMN may be more complicated because it's used on the host in rs6000.c (although not in target-independent host code) as well as on the target - I suspect that will be a case where duplicating the definition (with a comment in one place pointing to the other place as needing to be kept consistent, and with the host-side copy renamed to facilitate poisoning) may make sense. And all three are defined in <arch>.h headers so your reason for moving them separately may apply. (There are lots more macros used in the unwinder and on the host for which macros predefined with -fbuilding-libgcc may be appropriate in a later patch.) -- Joseph S. Myers jos...@codesourcery.com