aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2022-02-23 16:56:41 +0100
committerNikita Popov <npopov@redhat.com>2022-03-04 10:23:06 +0100
commite3a9f68e2c1d5af6f3d1a275b1887e36171f94f3 (patch)
treea627da30456560339001e7837c6dc3997d83b419 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
parent04661a4d8ed7edb4f4da1f16c1ff607110b19bc9 (diff)
downloadllvm-e3a9f68e2c1d5af6f3d1a275b1887e36171f94f3.zip
llvm-e3a9f68e2c1d5af6f3d1a275b1887e36171f94f3.tar.gz
llvm-e3a9f68e2c1d5af6f3d1a275b1887e36171f94f3.tar.bz2
[Bitcode] Fully support opaque pointer auto upgrade
This completes the propagation of type IDs through bitcode reading, and switches remaining uses of getPointerElementType() to use contained type IDs. The main new thing here is that sometimes we need to create a type ID for a type that was not explicitly encoded in bitcode (or we don't know its ID at the current point). For such types we create a "virtual" type ID, which is cached based on the type and the contained type IDs. Luckily, we generally only need zero or one contained type IDs, and in the one case where we need two, we can get away with not including it in the cache key. With this change, we pass the entirety of llvm-test-suite at O3 with opaque pointers. Differential Revision: https://reviews.llvm.org/D120471
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h')
0 files changed, 0 insertions, 0 deletions