Commit Graph

476 Commits

Author SHA1 Message Date
Jake Hillion
a9ace14466 features: switch to bitset 2023-05-19 15:59:18 +02:00
Alastair Robertson
66a171eedc Integration test README: Document "skip" and "oil_disable" 2023-05-18 15:04:22 +01:00
Jake Hillion
b32f723844 resources: manage headers properly
Previously we had an `R"(` string in `OITraceCode.cpp` which allowed us
to include the file as a string. Instead, keep `OITraceCode.cpp` a fully
formed C++ file and utilise the build system to turn it into a string.
This will be used for more header files that are needed both as valid
headers and as strings for JIT compilation in the Typed TreeBuilder
work.
2023-05-18 16:04:13 +02:00
Alastair Robertson
939256030c Integration test: Add "target_function" option 2023-05-18 14:34:08 +01:00
Jake Hillion
9731a30f85 drgn: rebase on main 2023-05-10 15:32:58 +02:00
Jake Hillion
96c80cbb78 drgn: refactor, cull dead code, and disable inline 2023-05-04 12:55:16 +02:00
Jake Hillion
f70d34961d drgn: switch to Program.function_by_address() 2023-05-03 20:08:41 +02:00
Jake Hillion
fd35ce648d drgn: revendor elfutils at 0.189 2023-04-28 14:15:44 +02:00
Jon Haslam
d4891e98d4
move src directory to oi (#134) 2023-04-26 16:20:53 +01:00
Thierry Treyer
c0bfe87342 Faster locateSymbol by re-using dwfl across calls 2023-04-25 18:42:24 +02:00
Jake Hillion
4a64fc5c9c clang-format: set BinPackParameters=false 2023-04-24 11:28:22 +02:00
Jake Hillion
789fb7ef6e add feature addition to the integration test runner 2023-04-21 19:02:44 +02:00
Jake Hillion
641a128b39 add command line feature addition/removal 2023-04-21 19:02:44 +02:00
Alastair Robertson
5971643101 Pass in CodeCov.io token through CI env var
CodeCov's docs say that a token isn't required for a public repository,
but our uploads have been broken for a few weeks at this point and
passing in the token fixes them...
2023-04-21 14:42:15 +01:00
Alastair Robertson
9755688d1c Add folly shims to avoid linking against folly
This fixes linker errors in debug builds.

When building in debug mode (-DCMAKE_BUILD_TYPE=Debug), folly requires
the function "safe_assert_terminate" to be defined. To avoid building
and linking against folly, we define our own no-op version of this
function.
2023-04-21 12:56:54 +01:00
Jon Haslam
c1f672b262
fix offset in generated code (#129) 2023-04-21 11:07:37 +01:00
Jake Hillion
feaf0e86ed remove now redundant initial pointer saving 2023-04-18 16:04:47 +02:00
Jake Hillion
cd2fa8c9ef remove treebuilder pointer validation 2023-04-18 16:04:47 +02:00
Jake Hillion
28025fa416 integration.py: pass missing --config-file to test oid 2023-04-18 16:04:47 +02:00
Jake Hillion
f47628ae2d add test for folly::fbstring 2023-04-06 15:11:09 +01:00
Alastair Robertson
daa3cb06ec Build with tests by default 2023-04-05 15:53:15 +01:00
Jay Kamat
8f150c3d15 Fix warning in drgn pure name changes 2023-04-03 14:53:18 -07:00
Jake Hillion
76f525f43d codegen: carry decl and func with containerinfo 2023-04-03 16:13:30 +01:00
Alastair Robertson
10f47510d1 Integration tests: Remove typedefs from cycles.toml
uint64_t is a typedef. int is a primitive.

The cycles tests are going to be re-used to underpin some type-graph
unit tests. The patch removes unnecessary typedefs and makes the unit
tests simpler.
2023-04-03 13:02:03 +01:00
Samuel Nair
7097286d8a
Display the logo (#116)
Would be good to display the logo on the landing page.
2023-03-31 10:48:18 +01:00
Jay Kamat
ec7421b39b Add drgn function for looking up by "pure name" 2023-03-29 09:23:11 -07:00
Jay Kamat
e27f725a85 Avoid following weak_ptrs
Previously, we treated weak_ptrs as normal types and we recursed
within them, following the internal data pointer and possibly causing
crashes. We really shouldn't be following them, so I added a custom
type to simply abort processing. If we want to handle them (ie: check
if they are valid, and follow them if so), that should be fairly easy
with the work there is here so far.
2023-03-28 14:10:27 -07:00
Alastair Robertson
fb58ccebac Integration tests: Have target process print its pid
This makes it easier to work with when running multiple instances of it
manually, outside of the integration testing framework.
2023-03-28 16:42:14 +01:00
Alastair Robertson
bab21166f2 Integration tests: Remove redundant "array" from std_array.toml test names 2023-03-28 16:42:14 +01:00
Jay Kamat
f7c79c91c4 Quit oid when upload/download is requested but cache is disabled 2023-03-27 09:42:10 -07:00
Jake Hillion
675211aff5 tests: build integration.py targets with cmake 2023-03-27 16:15:37 +01:00
Jake Hillion
d2caaf22e8 formatting: force pointers/references with the type 2023-03-24 20:18:18 +00:00
Jake Hillion
2e74fa357a std::variant: change to use std::visit 2023-03-24 18:43:37 +00:00
Alastair Robertson
512163f98e Integration tests: Pass config to OIL tests on the command line
Instead of using an environment variable, pass the path to the config
file as a command line argument. This makes it possible to directly
copy the command being run (as show with --verbose) and run it in a
debugger outside of the test framework.

Old verbose output:
  Running: /home/ajor/src/object-introspection3/build/test/integration/integration_test_target oil cycles_unique_ptr

New verbose output:
  Running: /home/ajor/src/object-introspection3/build/test/integration/integration_test_target oil cycles_unique_ptr /home/ajor/src/object-introspection3/build/testing.oid.toml
2023-03-22 16:57:35 +00:00
Alastair Robertson
56f7147d39 Integration tests: Set expected results for cycles.toml
Format the raw_ptr test case with jq to remove tabs and deleted extra
data from the JSON.
2023-03-22 13:51:04 +00:00
Jake Hillion
c4194a9fbc oil: remove fields in options 2023-03-20 16:26:10 +00:00
Jake Hillion
00b52fca6f folly: create explicit folly_headers library target 2023-03-20 13:25:15 +00:00
Jake Hillion
f10e8a7173 folly: switch to FetchContent 2023-03-20 13:25:15 +00:00
Jake Hillion
a429733474 rocksdb: switch to FetchContent 2023-03-20 13:25:15 +00:00
Jake Hillion
06aa3e3d40 clear all warnings and enable -Werror 2023-03-20 11:14:55 +00:00
Jake Hillion
9fced15433 uintptr_t: prevent stubbing and renaming 2023-03-17 08:12:46 +00:00
Jake Hillion
7331b1dbf0 website: yarn upgrade 2023-03-16 13:49:02 +00:00
Jon Haslam
c9bedc0f84
Fix remove mappings (#93) 2023-03-13 17:06:39 +00:00
Jay Kamat
7a3cd2d6bc Add tests for exclusive size 2023-03-10 11:46:30 -08:00
Jay Kamat
542f1a6743 Add experimental support for reporting exclusive sizes into rocksdb 2023-03-10 11:46:30 -08:00
Alastair Robertson
d9b13ff101 Integration tests: Test templates 2023-03-09 11:51:41 +00:00
Alastair Robertson
5dd92b7f7f Integration tests: Test arrays 2023-03-09 11:51:41 +00:00
Alastair Robertson
4eaabbab84 Update drgn to pull in fix for GCC zero-lengh arrays 2023-03-09 11:51:41 +00:00
Alastair Robertson
9dd5c4b4cc Integration Tests: Test typedefs 2023-03-09 11:51:41 +00:00
Alastair Robertson
340a5e6803 Integration Tests: Test enums 2023-03-09 11:51:41 +00:00