[cfe-commits] [PATCH]: arm definition of initDwarfEHRegSizeTable

Roman Divacky rdivacky at freebsd.org
Wed May 18 09:40:38 PDT 2011


OK to commit? It defines 16 registers (0 - 15) to be 32bit.
This is necessary for __builtin_init_dwarf_reg_size_table() no arm.


Index: lib/CodeGen/TargetInfo.cpp
===================================================================
--- lib/CodeGen/TargetInfo.cpp	(revision 131534)
+++ lib/CodeGen/TargetInfo.cpp	(working copy)
@@ -2279,6 +2279,22 @@
   int getDwarfEHStackPointer(CodeGen::CodeGenModule &M) const {
     return 13;
   }
+
+  bool initDwarfEHRegSizeTable(CodeGen::CodeGenFunction &CGF,
+                               llvm::Value *Address) const {
+    CodeGen::CGBuilderTy &Builder = CGF.Builder;
+    llvm::LLVMContext &Context = CGF.getLLVMContext();
+
+    const llvm::IntegerType *i8 = llvm::Type::getInt8Ty(Context);
+    llvm::Value *Four8 = llvm::ConstantInt::get(i8, 4);
+
+    // 0-15 are the 16 integer registers.
+    AssignToArrayRange(Builder, Address, Four8, 0, 15);
+
+    return false;
+  }
+
+
 };
 
 }




More information about the cfe-commits mailing list