[LLVMbugs] [Bug 11575] New: The unwind destination does not have a landingpad instruction! Block containing LandingPadInst must be jumped to only by the unwind edge of an invoke.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Dec 14 13:37:57 PST 2011


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

             Bug #: 11575
           Summary: The unwind destination does not have a landingpad
                    instruction! Block containing LandingPadInst must be
                    jumped to only by the unwind edge of an invoke.
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: FreeBSD
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: rdivacky at freebsd.org
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


witten delta# clang -O2 ParserTest.cpp
The unwind destination does not have a landingpad instruction!
  invoke void @_ZN6PoDoFo9PdfParser9ParseFileEPKclb(%"class.PoDoFo::PdfParser"*
%parser, i8* null, i32 0, i1 zeroext true)
          to label %try.cont19 unwind label %lpad.preheader
Block containing LandingPadInst must be jumped to only by the unwind edge of an
invoke.
  %1 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)*
@__gxx_personality_v0 to i8*)
          catch i8* bitcast ({ i8*, i8*, i8* }* @_ZTIN6PoDoFo8PdfErrorE to i8*)
Instruction does not dominate all uses!
  %1 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)*
@__gxx_personality_v0 to i8*)
          catch i8* bitcast ({ i8*, i8*, i8* }* @_ZTIN6PoDoFo8PdfErrorE to i8*)
  %2 = extractvalue { i8*, i32 } %1, 0
Instruction does not dominate all uses!
  %1 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)*
@__gxx_personality_v0 to i8*)
          catch i8* bitcast ({ i8*, i8*, i8* }* @_ZTIN6PoDoFo8PdfErrorE to i8*)
  %3 = extractvalue { i8*, i32 } %1, 1
Instruction does not dominate all uses!
  %3 = extractvalue { i8*, i32 } %1, 1
  %matches = icmp eq i32 %3, %0
Instruction does not dominate all uses!
  %matches = icmp eq i32 %3, %0
  br i1 %matches, label %catch, label %catch.dispatch12
Broken module found, compilation aborted!
Stack dump:
0.    Program arguments: /usr/local/bin/clang -cc1 -triple
i386-unknown-freebsd10.0 -emit-obj -disable-free -main-file-name ParserTest.cpp
-mrelocation-model static -mdisable-fp-elim -masm-verbose -mconstructor-aliases
-target-cpu pentium4 -target-linker-version 2.17.50 -momit-leaf-frame-pointer
-resource-dir /usr/local/bin/../lib/clang/3.1 -fmodule-cache-path
/var/tmp/clang-module-cache -O2 -fdeprecated-macro -fdebug-compilation-dir
/tmp/delta -ferror-limit 19 -fmessage-length 152 -mstackrealign -fgnu-runtime
-fobjc-runtime-has-arc -fobjc-runtime-has-weak -fobjc-fragile-abi
-fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o
/tmp/ParserTest-07dJO6.o -x c++ ParserTest.cpp 
1.    <eof> parser at end of file
2.    Code generation
3.    Running pass 'Function Pass Manager' on module 'ParserTest.cpp'.
4.    Running pass 'Module Verifier' on function '@main'
clang: error: unable to execute command: Abort trap: 6 (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see
invocation)
clang: note: diagnostic msg: Please submit a bug report to
http://llvm.org/bugs/ and include command line arguments and all diagnostic
information.
clang: note: diagnostic msg: Preprocessed source(s) and associated run
script(s) are located at:
clang: note: diagnostic msg: /tmp/ParserTest-zM3GQM.ii
clang: note: diagnostic msg: /tmp/ParserTest-zM3GQM.sh

-- 
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