http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52545
--- Comment #4 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2012-03-09 20:27:42 UTC --- (In reply to comment #3) > Right, I was not looking at SECTION_MACH_DEP when I defined the macro. Is it > ok > to just bump SECTION_MACH_DEP? > > The patch I have in mind is: > > -#define SECTION_MACH_DEP 0x2000000 /* subsequent bits reserved for target */ > -#define SECTION_EXCLUDE 0x4000000 > +#define SECTION_EXCLUDE 0x2000000 > +#define SECTION_MACH_DEP 0x8000000 /* subsequent bits reserved for target */ > > I can bump SECTION_MACH_DEP even more to reserve more bits. The reserved bits start at SECTION_MACH_DEP, with the patch above you just waste the bit at 0x4000000. Any bits covered by SECTION_MACH_DEP * (~0) are reserved for the machine. The bigger SECTION_MACH_DEP is, the less bits are left for machine specific needs. Machine specific section flag masks could be, e.g.: #define SECTION_FLAG_MACH_1 (SECTION_MACH_DEP) #define SECTION_FLAG_MACH_2 (SECTION_MACH_DEP << 1) #define SECTION_FLAG_MACH_3 (SECTION_MACH_DEP << 2) ...