Peter Smith 0b4a047bfb [LLD][ELF][ARM] Do not substitute BL/BLX for non STT_FUNC symbols.
D73474 disabled the generation of interworking thunks for branch
relocations to non STT_FUNC symbols. This patch handles the case of BL and
BLX instructions to non STT_FUNC symbols. LLD would normally look at the
state of the caller and the callee and write a BL if the states are the
same and a BLX if the states are different.

This patch disables BL/BLX substitution when the destination symbol does
not have type STT_FUNC. This brings our behavior in line with GNU ld which
may prevent difficult to diagnose runtime errors when switching to lld.

Differential Revision: https://reviews.llvm.org/D73542
2020-01-29 11:42:25 +00:00
..
2018-07-05 16:03:20 +00:00
2019-07-22 11:37:03 +00:00
2019-07-22 11:37:03 +00:00
2019-07-22 11:37:03 +00:00
2019-07-22 11:37:03 +00:00
2019-07-22 11:37:03 +00:00
2017-09-30 21:28:49 +00:00
2018-04-09 12:45:29 +00:00
2017-09-30 21:28:49 +00:00
2017-11-22 22:00:50 +00:00
2017-09-28 17:15:02 +00:00
2019-09-07 10:42:11 +00:00
2019-09-07 10:42:11 +00:00
2017-11-28 20:17:58 +00:00
2018-04-25 00:29:13 +00:00
2017-12-12 20:00:30 +00:00
2019-08-01 09:25:34 +00:00
2019-08-01 09:25:34 +00:00
2019-09-07 10:42:11 +00:00
2018-08-08 14:50:33 +00:00
2018-08-08 14:50:33 +00:00
2018-08-08 14:50:33 +00:00
2018-08-08 14:50:33 +00:00
2018-03-27 16:10:01 +00:00
2019-09-07 10:42:11 +00:00
2017-10-18 04:45:09 +00:00
2019-07-25 07:12:23 +00:00
2019-09-07 10:42:11 +00:00
2019-09-07 10:42:11 +00:00
2017-11-28 20:13:12 +00:00
2019-07-16 05:58:03 +00:00
2019-02-06 01:00:49 +00:00
2018-04-24 23:03:58 +00:00
2019-09-07 10:42:11 +00:00
2019-09-12 08:55:17 +00:00