[PATCH] D33287: [Linker] Add support for linking ARM and Thumb IR modules.

Eric Christopher via llvm-commits llvm-commits at lists.llvm.org
Tue May 23 10:20:06 PDT 2017


I think the general way I'd look at fixing this is:

a) migrate to a single TargetMachine in the backend (you've apparently got
a patch out for this, but needs reviewing)
b) migrate to using thumb as a subtarget feature on every function from
code generation
c) autoupgrade modules using a thumb triple to have the thumb attribute on
functions (making this patch obsolete)
d) ... something I'm probably forgetting.

Thoughts?

On Tue, May 23, 2017 at 4:17 AM Florian Hahn via Phabricator <
reviews at reviews.llvm.org> wrote:

> fhahn added a comment.
>
> @echristo I've uncovered a bug causing `BL` being used to call internal
> ARM functions from Thumb functions and have put up a patch for that
> problem: https://reviews.llvm.org/D33436
>
> With this patch, multiple runs of the LNT test suite pass built for ARM
> using a version of clang that randomly adds +thumb-mode to functions.
>
>
> https://reviews.llvm.org/D33287
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170523/8acde051/attachment.html>


More information about the llvm-commits mailing list