Author: emaste Date: Thu Aug 13 08:45:45 2015 New Revision: 244892 URL: http://llvm.org/viewvc/llvm-project?rev=244892&view=rev Log: Correct sense of unwind return address register range assertion
I encountered this on FreeBSD/arm64, and then found the same issue was reported by Daniil Troshkov. Modified: libunwind/trunk/src/DwarfInstructions.hpp Modified: libunwind/trunk/src/DwarfInstructions.hpp URL: http://llvm.org/viewvc/llvm-project/libunwind/trunk/src/DwarfInstructions.hpp?rev=244892&r1=244891&r2=244892&view=diff ============================================================================== --- libunwind/trunk/src/DwarfInstructions.hpp (original) +++ libunwind/trunk/src/DwarfInstructions.hpp Thu Aug 13 08:45:45 2015 @@ -170,7 +170,7 @@ int DwarfInstructions<A, R>::stepWithDwa const int lastReg = R::lastDwarfRegNum(); assert((int)CFI_Parser<A>::kMaxRegisterNumber > lastReg && "register range too large"); - assert(lastReg <= (int)cieInfo.returnAddressRegister && + assert(lastReg >= (int)cieInfo.returnAddressRegister && "register range does not contain return address register"); for (int i = 0; i <= lastReg; ++i) { if (prolog.savedRegisters[i].location != _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits