On Wed, Aug 18, 2010 at 01:43:10PM +0100, Ralf Baechle wrote: > It was a nice optimization - on paper at least. In practice it results in > branches that may exceed the maximum legal range for a branch. We can > fight that problem with -ffunction-sections but -ffunction-sections again > is incompatible with -pg used by the function tracer. I'm pretty sure that this check in GCC is historic. I know it has been discussed in the past but I don't think a solution was ever reached and my google skills are failing me, I can't find the discussion in the archives. We maintain a patch at work that removes this check because we always use -ffunction-sections and also needed to be able to profile things. We've never seen any issues. GCC guys, is this check still needed? Does anyone know which architecture required this restriction?