start_pc += FUNCTION_START_OFFSET;
start_pc += DEPRECATED_FUNCTION_START_OFFSET;
skip_prologue_using_sal (CORE_ADDR func_addr){  struct symtab_and_line prologue_sal;  CORE_ADDR start_pc;  CORE_ADDR end_pc;  /* Get an initial range for the function.  */  find_pc_partial_function (func_addr, NULL, &start_pc, &end_pc);  start_pc += FUNCTION_START_OFFSET;  prologue_sal = find_pc_line (start_pc, 0);  if (prologue_sal.line != 0)    {      while (prologue_sal.end < end_pc)	{	  struct symtab_and_line sal;	  sal = find_pc_line (prologue_sal.end, 0);	  if (sal.line == 0)	    break;	  /* Assume that a consecutive SAL for the same (or larger)	     line mark the prologue -> body transition.  */	  if (sal.line >= prologue_sal.line)	    break;	  /* The case in which compiler's optimizer/scheduler has	     moved instructions into the prologue.  We look ahead in	     the function looking for address ranges whose	     corresponding line number is less the first one that we	     found for the function.  This is more conservative then	     refine_prologue_limit which scans a large number of SALs	     looking for any in the prologue */	  prologue_sal = sal;	}    }  return prologue_sal.end;}