View | Details | Raw Unified | Return to bug 29259
Collapse All | Expand All

(-)a/bfd/elflink.c (-3 / +10 lines)
Lines 9548-9559 elf_link_adjust_relocs (bfd *abfd, Link Here
9548
	      size_t sortlen = p - loc;
9548
	      size_t sortlen = p - loc;
9549
	      bfd_vma r_off2 = (*ext_r_off) (loc);
9549
	      bfd_vma r_off2 = (*ext_r_off) (loc);
9550
	      size_t runlen = elt_size;
9550
	      size_t runlen = elt_size;
9551
	      bfd_vma r_off_runend = r_off;
9552
	      bfd_vma r_off_runend_next;
9551
	      size_t buf_size = 96 * 1024;
9553
	      size_t buf_size = 96 * 1024;
9552
	      while (p + runlen < end
9554
	      while (p + runlen < end
9553
		     && (sortlen <= buf_size
9555
		     && (sortlen <= buf_size
9554
			 || runlen + elt_size <= buf_size)
9556
			 || runlen + elt_size <= buf_size)
9555
		     && r_off2 > (*ext_r_off) (p + runlen))
9557
		     /* run must not break the ordering of base..loc+1 */
9556
		runlen += elt_size;
9558
		     && r_off2 > (r_off_runend_next = (*ext_r_off) (p + runlen))
9559
		     /* run must be already sorted */
9560
		     && r_off_runend_next >= r_off_runend)
9561
		{
9562
		  runlen += elt_size;
9563
		  r_off_runmax = r_off_runmax_next;
9564
		}
9557
	      if (buf == NULL)
9565
	      if (buf == NULL)
9558
		{
9566
		{
9559
		  buf = bfd_malloc (buf_size);
9567
		  buf = bfd_malloc (buf_size);
9560
- 

Return to bug 29259