]> granicus.if.org Git - llvm/commit
[ARM] additionally check for ARM::INLINEASM_BR w/ ARM::INLINEASM
authorNick Desaulniers <ndesaulniers@google.com>
Fri, 24 May 2019 18:58:21 +0000 (18:58 +0000)
committerNick Desaulniers <ndesaulniers@google.com>
Fri, 24 May 2019 18:58:21 +0000 (18:58 +0000)
commitd965de356db98e2d3d8e488ac8b4183f672922cd
treedb859051162ad4c61ae57276c2979e8fb391fe9e
parent332260473f33d3756d000a714a5e4d2c3b3df355
[ARM] additionally check for ARM::INLINEASM_BR w/ ARM::INLINEASM

Summary:
We were observing failures for arm32 allyesconfigs of the Linux kernel
with the asm goto Clang patch, where ldr's were being generated to
offsets too far away to encode in imm12.

It looks like since INLINEASM_BR was created off of INLINEASM, a few
checks for INLINEASM needed to be updated to check for either case.

pr/41999

Link: https://github.com/ClangBuiltLinux/linux/issues/490
Reviewers: peter.smith, kristof.beyls, ostannard, rengolin, t.p.northover

Reviewed By: peter.smith

Subscribers: jyu2, javed.absar, hiraditya, llvm-commits, nathanchance, craig.topper, kees, srhines

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D62400

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361659 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMBaseInstrInfo.cpp
lib/Target/ARM/Thumb2InstrInfo.cpp