[lld] r233899 - [ARM] Report fatal error for wrong ARM entry point

David Blaikie dblaikie at gmail.com
Thu Apr 2 08:02:29 PDT 2015


On Thu, Apr 2, 2015 at 12:03 AM, Denis Protivensky <
dprotivensky at accesssoftek.com> wrote:

> Author: denis-protivensky
> Date: Thu Apr  2 02:03:44 2015
> New Revision: 233899
>
> URL: http://llvm.org/viewvc/llvm-project?rev=233899&view=rev
> Log:
> [ARM] Report fatal error for wrong ARM entry point
>
> The case is possible with wrong input, so report
> an error instead of using llvm_unreachable.
>

Is this testable?


>
> Modified:
>     lld/trunk/lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h
>
> Modified: lld/trunk/lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h?rev=233899&r1=233898&r2=233899&view=diff
>
> ==============================================================================
> --- lld/trunk/lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h (original)
> +++ lld/trunk/lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h Thu Apr  2
> 02:03:44 2015
> @@ -111,8 +111,10 @@ std::error_code ARMExecutableWriter<ELFT
>      if (const auto *ea = dyn_cast<DefinedAtom>(al->_atom)) {
>        switch (ea->codeModel()) {
>        case DefinedAtom::codeNA:
> -        if (al->_virtualAddr & 0x3)
> -          llvm_unreachable("Two least bits must be zero for ARM entry
> point");
> +        if (al->_virtualAddr & 0x3) {
> +          llvm::report_fatal_error(
> +              "Two least bits must be zero for ARM entry point");
> +        }
>        break;
>        case DefinedAtom::codeARMThumb:
>          // Fixup entry point for Thumb code.
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150402/f1e41c39/attachment.html>


More information about the llvm-commits mailing list