diff options
author | Greg Clayton <gclayton@apple.com> | 2011-04-07 22:46:35 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2011-04-07 22:46:35 +0000 |
commit | eb0103f2d08a13812614da6f4dc3f6bb80c7aa21 (patch) | |
tree | dbf5eb8c26e985bc82f53cb4030cee1f0bbfba11 /lldb/source/Commands/CommandObjectDisassemble.cpp | |
parent | 165a07adf94e4b81e7ed110158688b1426fe9f76 (diff) | |
download | bcm5719-llvm-eb0103f2d08a13812614da6f4dc3f6bb80c7aa21.tar.gz bcm5719-llvm-eb0103f2d08a13812614da6f4dc3f6bb80c7aa21.zip |
Modified the ArchSpec to take an optional "Platform *" when setting the triple.
This allows you to have a platform selected, then specify a triple using
"i386" and have the remaining triple items (vendor, os, and environment) set
automatically.
Many interpreter commands take the "--arch" option to specify an architecture
triple, so now the command options needed to be able to get to the current
platform, so the Options class now take a reference to the interpreter on
construction.
Modified the build LLVM building in the Xcode project to use the new
Xcode project level user definitions:
LLVM_BUILD_DIR - a path to the llvm build directory
LLVM_SOURCE_DIR - a path to the llvm sources for the llvm that will be used to build lldb
LLVM_CONFIGURATION - the configuration that lldb is built for (Release,
Release+Asserts, Debug, Debug+Asserts).
I also changed the LLVM build to not check if "lldb/llvm" is a symlink and
then assume it is a real llvm build directory versus the unzipped llvm.zip
package, so now you can actually have a "lldb/llvm" directory in your lldb
sources.
llvm-svn: 129112
Diffstat (limited to 'lldb/source/Commands/CommandObjectDisassemble.cpp')
-rw-r--r-- | lldb/source/Commands/CommandObjectDisassemble.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/lldb/source/Commands/CommandObjectDisassemble.cpp b/lldb/source/Commands/CommandObjectDisassemble.cpp index 6567a0896a9..84630ff9955 100644 --- a/lldb/source/Commands/CommandObjectDisassemble.cpp +++ b/lldb/source/Commands/CommandObjectDisassemble.cpp @@ -32,8 +32,8 @@ using namespace lldb; using namespace lldb_private; -CommandObjectDisassemble::CommandOptions::CommandOptions () : - Options(), +CommandObjectDisassemble::CommandOptions::CommandOptions (CommandInterpreter &interpreter) : + Options(m_interpreter), num_lines_context(0), num_instructions (0), func_name(), @@ -128,7 +128,7 @@ CommandObjectDisassemble::CommandOptions::SetOptionValue (int option_idx, const break; case 'a': - arch.SetTriple (option_arg); + arch.SetTriple (option_arg, m_interpreter.GetDebugger().GetPlatformList().GetSelectedPlatform().get()); break; default: @@ -195,7 +195,8 @@ CommandObjectDisassemble::CommandObjectDisassemble (CommandInterpreter &interpre CommandObject (interpreter, "disassemble", "Disassemble bytes in the current function, or elsewhere in the executable program as specified by the user.", - "disassemble [<cmd-options>]") + "disassemble [<cmd-options>]"), + m_options (interpreter) { } @@ -248,10 +249,7 @@ CommandObjectDisassemble::Execute if (command.GetArgumentCount() != 0) { result.AppendErrorWithFormat ("\"disassemble\" arguments are specified as options.\n"); - GetOptions()->GenerateOptionUsage (m_interpreter, - result.GetErrorStream(), - this); - + GetOptions()->GenerateOptionUsage (result.GetErrorStream(), this); result.SetStatus (eReturnStatusFailed); return false; } |