[LLVMbugs] [Bug 8913] New: clang++ asserts when compiling vmac.cpp from CryptoPP 5.6.1

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Jan 5 07:45:30 PST 2011


http://llvm.org/bugs/show_bug.cgi?id=8913

           Summary: clang++ asserts when compiling vmac.cpp from CryptoPP
                    5.6.1
           Product: clang
           Version: trunk
          Platform: Macintosh
        OS/Version: MacOS X
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: mclow at qualcomm.com
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Created an attachment (id=5961)
 --> (http://llvm.org/bugs/attachment.cgi?id=5961)
Preprocessed source code

After Doug fixed bug #7851, I decided to make sure that CryptoPP would, in
fact, build.
Clang threw several errors about "dependent base classes", so I fixed those in
the CryptoPP sources.
However, there was one file that it didn't handle.

This was done with clang/llvm built from revision 122872

attached file was created via:
       clang++ -DNDEBUG -g -O2 -DCRYPTOPP_DISABLE_ASM -pipe -E vmac.cpp >
vmac.i

-----
clang++ -DNDEBUG -g -O2 -arch x86_64 -arch i386 -DCRYPTOPP_DISABLE_ASM -pipe -c
vmac.cpp
In file included from vmac.cpp:5:
In file included from ./vmac.h:4:
In file included from ./iterhash.h:5:
In file included from ./secblock.h:7:
./misc.h:414:8: warning: comparison of unsigned expression < 0 is always false
      [-Wtautological-compare]
        if (a < 0)
            ~ ^ ~
In file included from vmac.cpp:5:
In file included from ./vmac.h:4:
In file included from ./iterhash.h:7:
./simple.h:35:110: note: in instantiation of function template specialization
      'CryptoPP::IntToString<unsigned long>' requested here
  ...length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is
not a ...
                                                  ^
In file included from vmac.cpp:5:
In file included from ./vmac.h:4:
In file included from ./iterhash.h:5:
In file included from ./secblock.h:7:
./misc.h:414:8: warning: comparison of unsigned expression < 0 is always false
      [-Wtautological-compare]
        if (a < 0)
            ~ ^ ~
In file included from vmac.cpp:5:
In file included from ./vmac.h:4:
In file included from ./iterhash.h:7:
./simple.h:42:113: note: in instantiation of function template specialization
      'CryptoPP::IntToString<unsigned int>' requested here
  ...rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is
not a ...
                                                  ^
Assertion failed: (getMinSignedBits() <= 64 && "Too many bits for int64_t"),
function getSExtValue, file /Volumes/Bay2/LLVM/llvm/include/llvm/ADT/APInt.h,
line 1158.
0  clang             0x00000001012bd3ae PrintStackTrace(void*) + 38
1  clang             0x00000001012bd969 SignalHandler(int) + 254
2  libSystem.B.dylib 0x00007fff8630467a _sigtramp + 26
3  clang             0x000000010107cd29 llvm::isa_impl_wrap<llvm::MDNode const,
llvm::Value const, llvm::Value const>::doit(llvm::Value const&) + 21
4  clang             0x000000010001fc09 raise + 27
5  clang             0x000000010001fc19 abort + 14
6  clang             0x000000010001fca6 __gnu_cxx::new_allocator<std::pair<void
(*)(void*), void*> >::new_allocator() + 0
7  clang             0x00000001009a0094 llvm::APInt::getSExtValue() const + 148
8  clang             0x0000000100a4695d llvm::ConstantInt::getSExtValue() const
+ 25
9  clang             0x0000000100d9688e
llvm::DwarfDebug::constructGlobalVariableDIE(llvm::MDNode const*) + 1706
10 clang             0x0000000100d97447
llvm::DwarfDebug::beginModule(llvm::Module*) + 423
11 clang             0x0000000100d9bb3a
llvm::DwarfDebug::DwarfDebug(llvm::AsmPrinter*, llvm::Module*) + 1048
12 clang             0x0000000100d8277b
llvm::AsmPrinter::doInitialization(llvm::Module&) + 853
13 clang             0x00000001011ebeab
llvm::FPPassManager::doInitialization(llvm::Module&) + 65
14 clang             0x00000001011efb5b
llvm::FPPassManager::runOnModule(llvm::Module&) + 29
15 clang             0x00000001011ef68c
llvm::MPPassManager::runOnModule(llvm::Module&) + 384
16 clang             0x00000001011f0e3d
llvm::PassManagerImpl::run(llvm::Module&) + 111
17 clang             0x00000001011f0e9f llvm::PassManager::run(llvm::Module&) +
33
18 clang             0x000000010017deea (anonymous
namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction,
llvm::raw_ostream*) + 748
19 clang             0x000000010017df9e
clang::EmitBackendOutput(clang::Diagnostic&, clang::CodeGenOptions const&,
clang::TargetOptions const&, llvm::Module*, clang::BackendAction,
llvm::raw_ostream*) + 115
20 clang             0x0000000100261526 (anonymous
namespace)::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 436
21 clang             0x000000010029f969 clang::ParseAST(clang::Sema&, bool) +
534
22 clang             0x000000010008a1c7
clang::ASTFrontendAction::ExecuteAction() + 233
23 clang             0x0000000100261b98 clang::CodeGenAction::ExecuteAction() +
794
24 clang             0x000000010008a2ce clang::FrontendAction::Execute() + 256
25 clang             0x000000010006b4f8
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 710
26 clang             0x000000010002d2ad
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 725
27 clang             0x0000000100021e98 cc1_main(char const**, char const**,
char const*, void*) + 941
28 clang             0x0000000100029c3b main + 450
29 clang             0x00000001000215d8 start + 52
30 clang             0x0000000000000028 start + 4294830724
Stack dump:
0.    Program arguments: /Volumes/Bay2/LLVM/llvm-build/Debug+Asserts/bin/clang
-cc1 -triple x86_64-apple-darwin10.0.0 -emit-obj -disable-free -main-file-name
vmac.cpp -pic-level 1 -mdisable-fp-elim -masm-verbose -munwind-tables
-target-cpu core2 -target-linker-version 97.17 -g -resource-dir
/Volumes/Bay2/LLVM/llvm-build/Debug+Asserts/bin/../lib/clang/2.9 -D NDEBUG -D
CRYPTOPP_DISABLE_ASM -O2 -ferror-limit 19 -fmessage-length 87 -stack-protector
1 -fblocks -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o
/var/folders/E-/E-Uv6JW8Hni-PjXnXWJGbU+++TI/-Tmp-/cc-TfbSZn.o -x c++ vmac.cpp 
1.    <eof> parser at end of file
2.    Code generation
3.    Running pass 'Function Pass Manager' on module 'vmac.cpp'.
clang: error: unable to execute command: Illegal instruction
clang: error: clang frontend command failed due to signal 1 (use -v to see
invocation)
make: *** [vmac.o] Error 255

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list