Object Introspection (OI) enables on-demand, hierarchical profiling of objects in arbitrary C/C++ programs with no recompilation.
Go to file
Jon Haslam 479545d4b8
Correct offset calculation with multiple base classes (#494)
If a class inherits from more than one base class Clang Parser currently
calculates incorrect offsets for everything but the first base class.
This is owing to the fact that TypeGraph needs offsets in bits but
ClangParser is providing them in bytes.
2024-04-23 14:31:16 +01:00
.circleci tests: add ClangTypeParserTest 2024-02-23 16:51:51 +00:00
.github convert circleci lint job to github actions 2024-02-20 16:01:06 +00:00
cmake Enable compiler warnings globally 2023-05-23 10:36:42 +01:00
examples clang-format: set BinPackParameters=false 2023-04-24 11:28:22 +02:00
extern Update drgn to Omar's branch 2023-12-13 11:59:21 +00:00
include/oi tbv2: remove unnecessary copy in Element (#457) 2024-02-07 07:51:22 -08:00
oi Correct offset calculation with multiple base classes (#494) 2024-04-23 14:31:16 +01:00
resources Compile Time OIL for OIL v2 2023-08-30 04:28:02 -07:00
test bump python version to 3.9 (#492) 2024-04-16 12:06:47 +01:00
tools oilgen: migrate to source parsing (#421) 2023-12-19 13:26:25 -08:00
types Make folly::Optional TBv2 compliant (#490) 2024-04-15 16:38:49 +01:00
website add cppcon presentation links (#478) 2024-02-06 12:54:59 +00:00
.clang-format clang-format: disable bin packing 2023-11-13 18:19:53 +00:00
.clang-tidy Initial commit 2022-12-19 06:37:51 -08:00
.editorconfig Initial commit 2022-12-19 06:37:51 -08:00
.git-blame-ignore-revs Initial commit 2022-12-19 06:37:51 -08:00
.gitignore Delete old files from test/ 2023-01-27 12:45:35 +00:00
.gitmodules drgn: add split dwarf support 2023-06-02 17:52:53 +02:00
CHANGELOG.md Initial commit 2022-12-19 06:37:51 -08:00
CMakeLists.txt bump python version to 3.9 (#492) 2024-04-16 12:06:47 +01:00
CODE_OF_CONDUCT.md Initial commit 2022-12-19 06:37:51 -08:00
CONTRIBUTING.md Initial commit 2022-12-19 06:37:51 -08:00
dev.oid.toml Implement new container for F14ValueMap 2023-09-08 16:31:36 +02:00
flake.lock ci: move formatting checks to nix 2023-12-14 15:31:07 +00:00
flake.nix ci: move formatting checks to nix 2023-12-14 15:31:07 +00:00
LICENSE Initial commit 2022-12-19 06:37:51 -08:00
oss.oid.toml Initial commit 2022-12-19 06:37:51 -08:00
README.md add cppcon presentation links (#478) 2024-02-06 12:54:59 +00:00

object-introspection

Matrix Chat CppCon 2023 Presentation

OI Logo

Object Introspection is a memory profiling technology for C++ objects. It provides the ability to dynamically instrument applications to capture the precise memory occupancy of entire object hierarchies including all containers and dynamic allocations. All this with no code modification or recompilation!

For more information on the technology and how to get started applying it to your applications please check out the Object Introspection website.

Join the Object Introspection community

See the CONTRIBUTING file for how to help out.

License

Object Introspection is licensed under the Apache 2.0 License.