[cfe-dev] Incorrect assumptions in MIPS backend

Matthew Fernandez via cfe-dev cfe-dev at lists.llvm.org
Thu Sep 17 02:41:45 PDT 2015


Hi all,

Running the following on an x86_64 Linux box triggers an assertion failure:

     llc -march=mipsel -mcpu=help </dev/null

The assertion in question is the following:

     llvm/lib/Target/Mips/MipsSubtarget.cpp:92-95

     // Check if Architecture and ABI are compatible.
     assert(((!isGP64bit() && (isABI_O32() || isABI_EABI())) ||
             (isGP64bit() && (isABI_N32() || isABI_N64()))) &&
            "Invalid  Arch & ABI pair.");

It's possible my LLVM is not correctly configured to target MIPS, but it still seems like this should not trigger an
assertion failure. Is the MIPS backend assuming something it shouldn't here?

This is on a somewhat older revision, r218935. I tried to reproduce this on the current tip, but had some difficulty
building it (missing __cxa_* symbols during link; missing a dependency?). Apologies if this issue is not reproducible on
the tip.

Thanks,
Matt

________________________________

The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.



More information about the cfe-dev mailing list