2019-11-20 17:28:19 +01:00
|
|
|
Also reported as PR25210. There's a problem when using the two
|
|
|
|
linker options '--fix-cortex-a53-835769 --fix-cortex-a53-843419'
|
|
|
|
together. This is the default in our distro, but not upstream so
|
|
|
|
it went unnoticed.
|
|
|
|
|
|
|
|
Leads to an error while linking any code that sports one of the
|
|
|
|
sequences that triggers the errata fixup (gcc being one of those),
|
|
|
|
namely:
|
|
|
|
ld: can not size stub section: invalid operation
|
|
|
|
ld: warning: cannot find entry symbol _start; defaulting to 0000000000400078
|
|
|
|
ld: linker stubs: file class ELFCLASSNONE incompatible with ELFCLASS64
|
|
|
|
ld: final link failed: file in wrong format
|
|
|
|
|
2019-11-20 17:24:56 +01:00
|
|
|
--- bfd/elfnn-aarch64.c.mm 2019-09-09 13:19:43.000000000 +0000
|
|
|
|
+++ bfd/elfnn-aarch64.c 2019-11-20 11:44:00.000000000 +0000
|
2020-07-31 16:32:51 +02:00
|
|
|
@@ -4313,7 +4313,8 @@ elfNN_aarch64_size_stubs (bfd *output_bfd,
|
|
|
|
|| (input_bfd->flags & BFD_LINKER_CREATED) != 0)
|
|
|
|
continue;
|
2019-11-20 17:24:56 +01:00
|
|
|
|
2020-07-31 16:32:51 +02:00
|
|
|
- if (!_bfd_aarch64_erratum_835769_scan (input_bfd, info,
|
|
|
|
+ if (input_bfd != stub_bfd
|
|
|
|
+ && !_bfd_aarch64_erratum_835769_scan (input_bfd, info,
|
|
|
|
&num_erratum_835769_fixes))
|
|
|
|
return FALSE;
|
|
|
|
}
|