llvm-project/lldb/source/Interpreter
Michał Górny 14735cab65 [lldb] [gdb-remote] Add eOpenOptionReadWrite for future gdb compat
Modify OpenOptions enum to open the future path into synchronizing
vFile:open bits with GDB.  Currently, LLDB and GDB use different flag
models effectively making it impossible to match bits.  Notably, LLDB
uses two bits to indicate read and write status, and uses union of both
for read/write.  GDB uses a value of 0 for read-only, 1 for write-only
and 2 for read/write.

In order to future-proof the code for the GDB variant:

1. Add a distinct eOpenOptionReadWrite constant to be used instead
   of (eOpenOptionRead | eOpenOptionWrite) when R/W access is required.

2. Rename eOpenOptionRead and eOpenOptionWrite to eOpenOptionReadOnly
   and eOpenOptionWriteOnly respectively, to make it clear that they
   do not mean to be combined and require update to all call sites.

3. Use the intersection of all three flags when matching against
   the three possible values.

This commit does not change the actual bits used by LLDB.

Differential Revision: https://reviews.llvm.org/D106984
2021-08-09 12:06:59 +02:00
..
CMakeLists.txt [lldb] Move ScriptCommand and RegexCommand under Commands (NFC) 2020-09-01 17:33:39 -07:00
CommandAlias.cpp [lldb] Remove redundant calls to set eReturnStatusFailed 2021-06-17 12:21:54 +01:00
CommandHistory.cpp [lldb][NFC] Use C++ versions of the deprecated C standard library headers 2021-05-26 12:46:12 +02:00
CommandInterpreter.cpp [lldb] [gdb-remote] Add eOpenOptionReadWrite for future gdb compat 2021-08-09 12:06:59 +02:00
CommandObject.cpp [lldb] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
CommandOptionValidators.cpp [lldb][NFC] Fix all formatting errors in .cpp file headers 2020-01-24 08:52:55 +01:00
CommandReturnObject.cpp [lldb] Remove asserts in CommandReturnObject SetError and AppendError 2021-06-23 13:11:14 +00:00
InterpreterProperties.td [lldb/Interpreter] Add setting to set session transcript save directory 2021-06-29 10:54:29 +02:00
OptionArgParser.cpp [lldb] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
OptionGroupArchitecture.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupBoolean.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupFile.cpp [lldb] Replace default bodies of special member functions with = default; 2021-07-02 11:31:16 -07:00
OptionGroupFormat.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupOutputFile.cpp [lldb/Interpreter][NFC] Remove explicit default initialization of members and base classes 2021-02-28 19:23:18 +03:00
OptionGroupPlatform.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
OptionGroupPythonClassWithDict.cpp [lldb/Interpreter] Make OptionGroupPythonClassWithDict options non-required 2021-03-04 20:24:26 +01:00
OptionGroupString.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupUInt64.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupUUID.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupValueObjectDisplay.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionGroupVariable.cpp [lldb/Interpreter][NFC] Remove explicit default initialization of members and base classes 2021-02-28 19:23:18 +03:00
OptionGroupWatchpoint.cpp [lldb/Interpreter][NFC] Replace default constructors/destructors bodies with "=default" 2021-02-28 19:23:16 +03:00
OptionValue.cpp [lldb][NFC] Remove all uses of StringRef::withNullAsEmpty in LLDB 2021-05-18 09:41:20 +02:00
OptionValueArch.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueArgs.cpp [lldb][NFC] Make OptionValueArgs::GetArgs constant 2021-02-28 19:23:20 +03:00
OptionValueArray.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueBoolean.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueChar.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueDictionary.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueEnumeration.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueFileColonLine.cpp [lldb] Replace default bodies of special member functions with = default; 2021-07-02 11:31:16 -07:00
OptionValueFileSpec.cpp [lldb] Use C++11 default member initializers 2021-06-09 09:43:13 -07:00
OptionValueFileSpecList.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueFormat.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueFormatEntity.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueLanguage.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValuePathMappings.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueProperties.cpp [lldb] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
OptionValueRegex.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueSInt64.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueString.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueUInt64.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
OptionValueUUID.cpp [lldb/Interpreter] Fix deep copying for OptionValue classes 2021-02-28 19:23:25 +03:00
Options.cpp [lldb] Remove redundant calls to set eReturnStatusFailed 2021-06-17 12:21:54 +01:00
Property.cpp [lldb/Interpreter][NFC] Remove explicit default initialization of members and base classes 2021-02-28 19:23:18 +03:00
ScriptInterpreter.cpp [lldb] [gdb-remote] Add eOpenOptionReadWrite for future gdb compat 2021-08-09 12:06:59 +02:00
embedded_interpreter.py [lldb/Python] Fix the infinitely looping Python prompt bug 2020-06-16 11:05:19 -07:00