[Lldb-commits] [PATCH] LLDB ARM: Add support for arm-linux-gnu abi

Tamas Berghammer tberghammer at google.com
Mon Mar 23 07:08:46 PDT 2015


Looks good with a few minor suggestions


================
Comment at: source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp:224
@@ +223,3 @@
+        reg_value.SetUInt32(*ai);
+        if (!reg_ctx->WriteRegister(reg_ctx->GetRegisterInfoByName(reg_names[i]), reg_value))
+            return false;
----------------
Please use GetRegisterInfo if possible (at other places also)

================
Comment at: source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp:610
@@ +609,3 @@
+
+    uint32_t fp_reg_num = dwarf_r7;   // apple uses r7 for all frames. Normal arm uses r11
+    uint32_t pc_reg_num = dwarf_pc;
----------------
I think we want to use r11 based on the comment. Please check it.

================
Comment at: source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp:673-674
@@ +672,4 @@
+                case '3': return name[2] == '\0'; // r3
+                    
+                break;
+            }
----------------
I think a default label is missing here (or something else?)

================
Comment at: source/Plugins/ABI/SysV-arm/ABISysV_arm.h:25-40
@@ +24,18 @@
+    
+    virtual size_t 
+    GetRedZoneSize () const;
+    
+    virtual bool
+    PrepareTrivialCall (lldb_private::Thread &thread, 
+                        lldb::addr_t sp,
+                        lldb::addr_t func_addr,
+                        lldb::addr_t returnAddress, 
+                        llvm::ArrayRef<lldb::addr_t> args) const;
+    
+    virtual bool
+    GetArgumentValues (lldb_private::Thread &thread,
+                       lldb_private::ValueList &values) const;
+    
+    virtual lldb_private::Error
+    SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value);
+
----------------
Please add override attributes where applicable (for the entry file)

http://reviews.llvm.org/D8539

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the lldb-commits mailing list