Pārlūkot izejas kodu

Fix up Exception demo from recent opaque pointer type changes to GEP

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235478 91177308-0d34-0410-b5e6-96231b3b80d8
David Blaikie 10 gadi atpakaļ
vecāks
revīzija
337b35ae29
1 mainītis faili ar 7 papildinājumiem un 6 dzēšanām
  1. 7 6
      examples/ExceptionDemo/ExceptionDemo.cpp

+ 7 - 6
examples/ExceptionDemo/ExceptionDemo.cpp

@@ -1293,10 +1293,11 @@ static llvm::Function *createCatchWrappedInvokeFunction(
   // (_Unwind_Exception instance). This member tells us whether or not
   // (_Unwind_Exception instance). This member tells us whether or not
   // the exception is foreign.
   // the exception is foreign.
   llvm::Value *unwindExceptionClass =
   llvm::Value *unwindExceptionClass =
-    builder.CreateLoad(builder.CreateStructGEP(
-             builder.CreatePointerCast(unwindException,
-                                       ourUnwindExceptionType->getPointerTo()),
-                                               0));
+      builder.CreateLoad(builder.CreateStructGEP(
+          ourUnwindExceptionType,
+          builder.CreatePointerCast(unwindException,
+                                    ourUnwindExceptionType->getPointerTo()),
+          0));
 
 
   // Branch to the externalExceptionBlock if the exception is foreign or
   // Branch to the externalExceptionBlock if the exception is foreign or
   // to a catch router if not. Either way the finally block will be run.
   // to a catch router if not. Either way the finally block will be run.
@@ -1336,10 +1337,10 @@ static llvm::Function *createCatchWrappedInvokeFunction(
   //
   //
   // Note: Index is not relative to pointer but instead to structure
   // Note: Index is not relative to pointer but instead to structure
   //       unlike a true getelementptr (GEP) instruction
   //       unlike a true getelementptr (GEP) instruction
-  typeInfoThrown = builder.CreateStructGEP(typeInfoThrown, 0);
+  typeInfoThrown = builder.CreateStructGEP(ourExceptionType, typeInfoThrown, 0);
 
 
   llvm::Value *typeInfoThrownType =
   llvm::Value *typeInfoThrownType =
-  builder.CreateStructGEP(typeInfoThrown, 0);
+      builder.CreateStructGEP(builder.getInt8PtrTy(), typeInfoThrown, 0);
 
 
   generateIntegerPrint(context,
   generateIntegerPrint(context,
                        module,
                        module,