[Lldb-commits] [PATCH] Addition of CSR Kalimba DSP definitions to ArchSpec

Matthew Gardiner mg11 at csr.com
Tue Jul 1 02:35:43 PDT 2014


Hi folks

Would someone be able to submit this patch for me please? I have been 
trying over the past few months to extend lldb to debug CSRs Kalimba 
DSPs. I could really do with getting at least these changes upstream 
before I start pushing more features.

Index: include/lldb/Core/ArchSpec.h
===================================================================
--- include/lldb/Core/ArchSpec.h	(revision 212092)
+++ include/lldb/Core/ArchSpec.h	(working copy)
@@ -101,6 +101,9 @@

          eCore_uknownMach32,
          eCore_uknownMach64,
+
+        eCore_kalimba,
+
          kNumCores,

          kCore_invalid,
Index: source/Core/ArchSpec.cpp
===================================================================
--- source/Core/ArchSpec.cpp	(revision 212092)
+++ source/Core/ArchSpec.cpp	(working copy)
@@ -113,7 +113,9 @@
      { eByteOrderLittle, 4, 4, 4, llvm::Triple::hexagon , 
ArchSpec::eCore_hexagon_hexagonv5,  "hexagonv5" },

      { eByteOrderLittle, 4, 4, 4 , llvm::Triple::UnknownArch , 
ArchSpec::eCore_uknownMach32  , "unknown-mach-32" },
-    { eByteOrderLittle, 8, 4, 4 , llvm::Triple::UnknownArch , 
ArchSpec::eCore_uknownMach64  , "unknown-mach-64" }
+    { eByteOrderLittle, 8, 4, 4 , llvm::Triple::UnknownArch , 
ArchSpec::eCore_uknownMach64  , "unknown-mach-64" },
+
+    { eByteOrderLittle, 4, 1, 1 , llvm::Triple::UnknownArch , 
ArchSpec::eCore_kalimba  , "kalimba" }
  };

  struct ArchDefinitionEntry
@@ -249,7 +251,9 @@
      { ArchSpec::eCore_sparc9_generic  , llvm::ELF::EM_SPARCV9, 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }, // SPARC V9
      { ArchSpec::eCore_x86_64_x86_64   , llvm::ELF::EM_X86_64 , 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }, // AMD64
      { ArchSpec::eCore_mips64          , llvm::ELF::EM_MIPS   , 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }, // MIPS
-    { ArchSpec::eCore_hexagon_generic , llvm::ELF::EM_HEXAGON, 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }  // HEXAGON
+    { ArchSpec::eCore_hexagon_generic , llvm::ELF::EM_HEXAGON, 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }, // HEXAGON
+    { ArchSpec::eCore_kalimba ,         llvm::ELF::EM_CSR_KALIMBA, 
LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu, 0xFFFFFFFFu }  // KALIMBA
+
  };

  static const ArchDefinition g_elf_arch_def = {


Please note that I have left the field llvm::Triple::ArchType as 
"UnknownArch" for now, as I'm unsure as to how to proceed with changes 
to the Triple.h/.cpp stuff as yet.

Patch file attached.

thanks,
Matthew Gardiner


Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom
More information can be found at www.csr.com. Keep up to date with CSR on our technical blog, www.csr.com/blog, CSR people blog, www.csr.com/people, YouTube, www.youtube.com/user/CSRplc, Facebook, www.facebook.com/pages/CSR/191038434253534, or follow us on Twitter at www.twitter.com/CSR_plc.
New for 2014, you can now access the wide range of products powered by aptX at www.aptx.com.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ArchSpec.patch
Type: text/x-patch
Size: 1990 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20140701/f1805edc/attachment.bin>


More information about the lldb-commits mailing list