[llvm-bugs] [Bug 24793] New: SEH __try / __except in always_inline functions generates bad IR

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Sep 11 23:35:38 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24793

            Bug ID: 24793
           Summary: SEH __try / __except in always_inline functions
                    generates bad IR
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
          Assignee: unassignedclangbugs at nondot.org
          Reporter: david.majnemer at gmail.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

consider:
inline __attribute__((always_inline, used)) void g() {
  __try {
  } __except(0) {
  }
}

compile with:
clang -cc1 -triple i686-pc-windows-msvc18.0.0 t.ii -S -o - -emit-llvm -O0
-fms-extensions

observe:
all indices passed to llvm.localrecover must be less than the number of
arguments passed ot llvm.localescape in the parent function
void ()* @"\01?g@@YAXXZ"
fatal error: error in backend: Broken module found, compilation aborted!

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150912/8d5e25e6/attachment-0001.html>


More information about the llvm-bugs mailing list