Commit Graph

8 Commits

Author SHA1 Message Date
Max Filippov b20bb0c7b7 binutils: fix xtensa trampolines search code for conditional branches
This fixes the following build errors seen when assembling huge files
produced by gcc:
  Error: jump target out of range; no usable trampoline found
  Error: operand 1 of 'j' has out of range value '307307'

Fixes:
  http://autobuild.buildroot.net/results/545/545168d9caf3bdb3dd3eb3bae58ba9db8a33384a/

Backported from: d92b6eece424f0ad35d96fdd85bf207295e8c4c3
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-11-26 14:48:25 +01:00
Max Filippov 9849f0052c binutils: fix 'call8: call target out of range' xtensa ld bug
This fixes the following linux kernel build errors:

  LD      init/built-in.o
  net/built-in.o: In function `raw_proc_exit':
  (.init.text+0xe29): dangerous relocation:
		      call8: call target out of range: udp_proc_register
  net/built-in.o: In function `udp_table_init':
  (.init.text+0xf09): dangerous relocation:
		      call8: call target out of range: udp_proc_register
  net/built-in.o: In function `inet_init':
  af_inet.c:(.init.text+0x142e): dangerous relocation:
				 call8: call target out of range: udp4_proc_exit
  net/built-in.o: In function `ip_auto_config':
  ipconfig.c:(.init.text+0x28aa): dangerous relocation:
				  call8: call target out of range: arp_send

Backported from: 331ed1307b93d3ff77d248bdf2f7b79a20851457
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-09-23 21:56:46 +02:00
Max Filippov 0dd180ec19 binutils: fix xtensa ld segfault on linking linux modules
This fixes the following build error reproducible with any linux kernel
module built with a recent buildroot toolchain:

  LD [M]  fs/jbd2/jbd2.ko
  /bin/sh: line 1: 12069 Segmentation fault
  buildroot/host/usr/bin/xtensa-buildroot-linux-uclibc-ld -r --no-relax
  -T linux/scripts/module-common.lds --build-id
  -o fs/jbd2/jbd2.ko fs/jbd2/jbd2.o fs/jbd2/jbd2.mod.o

Backported from: e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-12 14:34:05 +02:00
Max Filippov f7230f6af5 binutils: backport R_XTENSA_DIFF* relocation signedness fix
This fixes the following build errors:

  qlatincodec.o:(.debug_line+0xcd7): dangerous relocation: overflow after relaxation
  qmetaobject.o:(.debug_frame+0xa89): dangerous relocation: overflow after relaxation

Fixes:
  http://autobuild.buildroot.net/results/f51/f51c87ae3c883cc36b06c0741999b52e48e4c943/
  http://autobuild.buildroot.net/results/bcb/bcbf25e4054911a7a192bdb5c92e0ebd50e9666c/
  http://autobuild.buildroot.net/results/8a8/8a8a0f8cca293ce1f383421ba8b1223b4266e3bc/
  http://autobuild.buildroot.net/results/a54/a54f3707781dc193292eda7d1723fce6487d6980/

Backported from: 1058c7532d0b012ac329219264ddad59049fb6e6
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-05-12 23:03:47 +02:00
Max Filippov aae48f1c6f binutils: backport first section frag alignment fix for xtensa gas
This fixes the following build error often seen during linux kernel
linking step with relaxation enabled:

  dangerous relocation: call8: misaligned call target: (.text.unlikely+0x63)

Backported from: a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-05-12 23:03:38 +02:00
Max Filippov c09b2bfaea binutils: drop *.texi* hunks from xtensa trampolines patches
Rebuilding as.info with makeinfo version 5.2 results in a build error,
even with pristine binutils source. Dropping hunks that change *.texi*
files avoids documentation rebuild.

Reported-by: Vincent Stehlé <vincent.stehle@freescale.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-05 18:36:39 +02:00
Max Filippov 6acb2e1db2 binutils: backport gas xtensa jump trampolines
This fixes compilation of huge source files that have jumps with offsets
greater than 128 Kbytes, that otherwise fails with such messages:

  {standard input}:65267: Error: operand 1 of 'j' has out of range value '131089'
  {standard input}:106879: Error: operand 1 of 'j' has out of range value '4294833951'

Fixes:
  http://autobuild.buildroot.net/results/e45/e450d5efc7435035c956bb962d598837648f319d/

Backported from: a82c7d9030b67a6a76a5403d0e1641f9e42141ac
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-03 21:38:28 +02:00
Gustavo Zacarias 61eea455be binutils: move patches to new model
On commit 5538e47662 the versioned package
patches changed the directory structure but the packages weren't fixed.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-04-23 09:00:01 +02:00