[llvm-commits] [llvm-gcc-4.0] r43098 - /llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp

Chris Lattner clattner at apple.com
Wed Oct 17 15:15:03 PDT 2007


On Oct 17, 2007, at 3:10 PM, Bill Wendling wrote:

> Author: void
> Date: Wed Oct 17 17:10:14 2007
> New Revision: 43098
>
> URL: http://llvm.org/viewvc/llvm-project?rev=43098&view=rev
> Log:
> When ObjC is using SJLJ exceptions, don't create an unwind basic block

Thanks Bill, the patch looks fine.  This needs a testcase and needs  
to be applied to 4.2 if it has the same problem,

-Chris

> Modified:
>     llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp
>
> Modified: llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.0/trunk/gcc/ 
> llvm-convert.cpp?rev=43098&r1=43097&r2=43098&view=diff
>
> ====================================================================== 
> ========
> --- llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp (original)
> +++ llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp Wed Oct 17 17:10:14 2007
> @@ -2777,7 +2777,9 @@
>    // Do not turn intrinsic calls or no-throw calls into invokes.
>    if ((!isa<Function>(Callee) || !cast<Function>(Callee)- 
> >getIntrinsicID()) &&
>        // Turn calls that throw that are inside of a cleanup scope  
> into invokes.
> -      !CurrentEHScopes.empty() && tree_could_throw_p(exp)) {
> +      !CurrentEHScopes.empty() && tree_could_throw_p(exp) &&
> +      // Don't generate the unwind block for ObjC if it's using  
> SJLJ exceptions.
> +      !(c_dialect_objc() && flag_objc_sjlj_exceptions)) {
>      if (UnwindBB == 0)
>        UnwindBB = new BasicBlock("Unwind");
>      UnwindBlock = UnwindBB;
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list