diff options
| author | Bruce Mitchener <bruce.mitchener@gmail.com> | 2014-07-03 00:49:08 +0000 |
|---|---|---|
| committer | Bruce Mitchener <bruce.mitchener@gmail.com> | 2014-07-03 00:49:08 +0000 |
| commit | 1d0089fa5c9e121ccdf6ba2a4ac1ec6690361e55 (patch) | |
| tree | d2ad4c1ecd2a0d76baa853163e4130c595be900e | |
| parent | f204208e4f5ae0189969f947699b174f7dfe94c8 (diff) | |
| download | bcm5719-llvm-1d0089fa5c9e121ccdf6ba2a4ac1ec6690361e55.tar.gz bcm5719-llvm-1d0089fa5c9e121ccdf6ba2a4ac1ec6690361e55.zip | |
Add enumerations for additional languages from DWARF spec updates.
llvm-svn: 212246
4 files changed, 24 insertions, 1 deletions
diff --git a/lldb/include/lldb/lldb-enumerations.h b/lldb/include/lldb/lldb-enumerations.h index 12c395244e4..ab7faa4821d 100644 --- a/lldb/include/lldb/lldb-enumerations.h +++ b/lldb/include/lldb/lldb-enumerations.h @@ -369,6 +369,15 @@ namespace lldb { eLanguageTypeUPC = 0x0012, ///< Unified Parallel C. eLanguageTypeD = 0x0013, ///< D. eLanguageTypePython = 0x0014, ///< Python. + eLanguageTypeOpenCL = 0x0015, ///< OpenCL. + eLanguageTypeGo = 0x0016, ///< Go. + eLanguageTypeModula3 = 0x0017, ///< Modula 3. + eLanguageTypeHaskell = 0x0018, ///< Haskell. + eLanguageTypeC_plus_plus_03 = 0x0019, ///< ISO C++:2003. + eLanguageTypeC_plus_plus_11 = 0x001a, ///< ISO C++:2011. + eLanguageTypeOCaml = 0x001b, ///< OCaml. + eLanguageTypeRust = 0x001c, ///< Rust. + eLanguageTypeC11 = 0x001d, ///< ISO C:2011. eNumLanguageTypes } LanguageType; diff --git a/lldb/source/Commands/CommandObjectBreakpoint.cpp b/lldb/source/Commands/CommandObjectBreakpoint.cpp index e5210418880..739aac37aaf 100644 --- a/lldb/source/Commands/CommandObjectBreakpoint.cpp +++ b/lldb/source/Commands/CommandObjectBreakpoint.cpp @@ -154,9 +154,12 @@ public: case eLanguageTypeC89: case eLanguageTypeC: case eLanguageTypeC99: + case eLanguageTypeC11: m_language = eLanguageTypeC; break; case eLanguageTypeC_plus_plus: + case eLanguageTypeC_plus_plus_03: + case eLanguageTypeC_plus_plus_11: m_language = eLanguageTypeC_plus_plus; break; case eLanguageTypeObjC: diff --git a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp index d22e6600415..a6c74f3f1fc 100644 --- a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp +++ b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp @@ -289,7 +289,9 @@ ItaniumABILanguageRuntime::CreateInstance (Process *process, lldb::LanguageType { // FIXME: We have to check the process and make sure we actually know that this process supports // the Itanium ABI. - if (language == eLanguageTypeC_plus_plus) + if (language == eLanguageTypeC_plus_plus || + language == eLanguageTypeC_plus_plus_03 || + language == eLanguageTypeC_plus_plus_11) return new ItaniumABILanguageRuntime (process); else return NULL; diff --git a/lldb/source/Target/LanguageRuntime.cpp b/lldb/source/Target/LanguageRuntime.cpp index a2b7f1d6ae8..e8bd76cba35 100644 --- a/lldb/source/Target/LanguageRuntime.cpp +++ b/lldb/source/Target/LanguageRuntime.cpp @@ -307,6 +307,15 @@ struct language_name_pair language_names[] = { "upc", eLanguageTypeUPC }, { "d", eLanguageTypeD }, { "python", eLanguageTypePython }, + { "opencl", eLanguageTypeOpenCL }, + { "go", eLanguageTypeGo }, + { "modula3", eLanguageTypeModula3 }, + { "haskell", eLanguageTypeHaskell }, + { "c++03", eLanguageTypeC_plus_plus_03 }, + { "c++11", eLanguageTypeC_plus_plus_11 }, + { "ocaml", eLanguageTypeOCaml }, + { "rust", eLanguageTypeRust }, + { "c11", eLanguageTypeC11 }, // Now synonyms, in arbitrary order { "objc", eLanguageTypeObjC }, { "objc++", eLanguageTypeObjC_plus_plus } |

