diff options
author | Adrian Prantl <aprantl@apple.com> | 2024-12-06 15:11:21 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-06 15:11:21 -0800 |
commit | 0ee364d2a28104aaa36e246fc8a316f86de32aae (patch) | |
tree | 05556423933005ba0bdf6605630987734d162d42 /lldb/test/Shell/ScriptInterpreter/Python/bytecode.test | |
parent | da65fe1c16308cdb71b2fd26aaedc0ce52521ab4 (diff) | |
download | llvm-0ee364d2a28104aaa36e246fc8a316f86de32aae.zip llvm-0ee364d2a28104aaa36e246fc8a316f86de32aae.tar.gz llvm-0ee364d2a28104aaa36e246fc8a316f86de32aae.tar.bz2 |
[lldb] Add a compiler/interpreter of LLDB data formatter bytecode to lldb/examples (#113398)
This PR adds a proof-of-concept for a bytecode designed to ship and run
LLDB data formatters. More motivation and context can be found in the
`formatter-bytecode.md` file and on discourse.
https://discourse.llvm.org/t/a-bytecode-for-lldb-data-formatters/82696
Diffstat (limited to 'lldb/test/Shell/ScriptInterpreter/Python/bytecode.test')
-rw-r--r-- | lldb/test/Shell/ScriptInterpreter/Python/bytecode.test | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lldb/test/Shell/ScriptInterpreter/Python/bytecode.test b/lldb/test/Shell/ScriptInterpreter/Python/bytecode.test new file mode 100644 index 0000000..6a7cd46 --- /dev/null +++ b/lldb/test/Shell/ScriptInterpreter/Python/bytecode.test @@ -0,0 +1,16 @@ +# RUN: %python %S/../../../../examples/python/formatter_bytecode.py --test +# RUN: %python %S/../../../../examples/python/formatter_bytecode.py --compile "1u dup" | FileCheck %s --check-prefix=COMPILE +# RUN: %python %S/../../../../examples/Python/formatter_bytecode.py --disassemble "200101" | FileCheck %s --check-prefix=DISASSEMBLE +# COMPILE: 200101 +# DISASSEMBLE: 1u dup + +# RUN: %clang_host -std=c++17 -g %S/Inputs/FormatterBytecode/MyOptional.cpp -o %t.exe +# RUN: %lldb %t.exe -o "command script import %S/../../../../examples/Python/formatter_bytecode.py" -o "command script import %S/Inputs/FormatterBytecode/formatter.py" -o "b -p here" -o "r" -o "v x" -o "v y" -o q | FileCheck %s --check-prefix=OPTIONAL +# OPTIONAL: (lldb) v x +# OPTIONAL: (MyOptional<int>) x = { +# OPTIONAL: hasVal = false +# OPTIONAL: } +# OPTIONAL: (lldb) v y +# OPTIONAL: (MyOptional<int>) y = { +# OPTIONAL: Storage = (value = 42, hasVal = true) +# OPTIONAL: } |