Vern Paxson
e6fe20f140
fix for -O report-C++
2024-08-16 11:18:57 +02:00
Vern Paxson
857df9f063
support for more in-depth AST profiling
2024-08-16 11:18:57 +02:00
Vern Paxson
d2c6208421
allow profiling without updating of hash values
2024-08-16 11:18:57 +02:00
Vern Paxson
4b719ef45a
script optimization for record operations sourced (in part) from other records
2024-06-24 09:38:37 +02:00
Vern Paxson
a474106fce
improve ZAM's estimation of profiling overheads
2024-04-09 15:12:00 -07:00
Vern Paxson
c29db63fdd
ZAM execution changes to support richer profiling
2024-03-19 10:59:49 -07:00
Vern Paxson
dc376953fa
framework for --enable-ZAM-profiling configuration
...
profiles go to zprof.log rather than stdout
2024-03-19 10:59:49 -07:00
Vern Paxson
71a1aa0afd
fix for needing to always flush optimization information for identifiers
2024-01-15 15:03:56 +01:00
Vern Paxson
709d410fcd
regularized (some) types of pointers used in script optimization
2023-12-12 09:45:19 +01:00
Vern Paxson
740a087765
reworked AST optimizers analysis of side effects during aggregate operations & calls
2023-12-06 12:26:27 -08:00
Vern Paxson
3d21d80dac
coalescing of event handlers (ZAM optimization)
2023-11-16 12:58:28 -08:00
Vern Paxson
4ec9a23ce6
retention of superseded AST elements to prevent pointer mis-aliasing
2023-11-10 11:06:16 +01:00
Vern Paxson
b489cfc508
greater ZAM optimization of inlined function calls
2023-11-10 09:57:35 +01:00
Vern Paxson
fadda05782
added "-O noinline" option to turn off ZAM inlining, to help with diagnosing optimization problems
2023-11-10 09:57:35 +01:00
Vern Paxson
1dc74eaa9c
fixes for a number of ZAM optimization bugs
2023-11-10 09:56:59 +01:00
Arne Welzel
ff34a4aa7f
EventHandler: Deprecate SetUsed() and Used() as well.
...
Seems the latter isn't used outside of the functions that were deprecated
in the previous commit and with UsageAnalyzer not making use of this
information unclear why we should keep it around.
Relates to #3187 .
2023-11-07 16:06:35 +01:00
Benjamin Bannier
f5a76c1aed
Reformat Zeek in Spicy style
...
This largely copies over Spicy's `.clang-format` configuration file. The
one place where we deviate is header include order since Zeek depends on
headers being included in a certain order.
2023-10-30 09:40:55 +01:00
Vern Paxson
a36c06e5cd
fix for ZAM statement-level profiling (broken by GH-3199)
2023-09-01 12:20:46 -07:00
Vern Paxson
6af0014a7b
fixes for compiling lambdas to C++
2023-08-16 17:03:37 -07:00
Vern Paxson
3f64858335
fixes for correctly tracking which functions have been fully inlined
2023-07-26 13:32:00 -07:00
Vern Paxson
91d70e6dd4
support for discarding ASTs once compiled via ZAM script optimization
2023-07-26 13:32:00 -07:00
Vern Paxson
79c53c9ed6
some code simplifications and streamlining
2023-07-20 09:35:07 -07:00
Vern Paxson
1ff490b41c
more extensive ZAM inlining & compilation of lambdas
2023-07-17 16:31:30 -07:00
Tim Wojtulewicz
64b78f6fb9
Use emplace_back over push_back where appropriate
2023-07-07 09:17:05 -07:00
Vern Paxson
cb15e0d4f1
Address PR review feedback on zam-feature-complete
...
* insert_or_assign usage
* master -> primary
* FunctionIngredientsPtr
* FuncType::Capture deprecations
* no new ScriptFunc constructor
2023-06-30 09:59:10 +02:00
Vern Paxson
ecc93606c4
feature completeness for ZAM
2023-06-30 09:36:14 +02:00
Vern Paxson
528aa6766a
more debugging information when dumping script optimization data structures
2023-06-30 09:36:14 +02:00
Vern Paxson
c173cfdbe7
added ZEEK_REPORT_UNCOMPILABLE environment variable for "-O report-uncompilable"
2023-05-05 12:00:55 -07:00
Vern Paxson
65a2900bb7
removed -O add-C++ option and updated documentation
2023-01-24 10:52:58 -08:00
Vern Paxson
134f8f2ef5
script optimization fixes:
...
new initialization model for standalone C++ scripts
type coercion fix
ZAM fix for compiling using C++ optimizer
disambiguate empty constructors
2022-11-20 12:16:25 -08:00
Vern Paxson
ee0a6f6835
Script optimization maintenance and updates:
...
maintenance fixes for variadic run-time checks, '_' placeholder identifier
"-O allow-cond" permits compiling scripts to C++ when influenced by @if conditionals
more robust standalone compile-to-C++ properties
fix for nested "when" statements
test suite updates
2022-11-08 11:56:32 -08:00
Arne Welzel
2ad609cbbb
Reintroduce event groups
...
This started with reverting commit 52cd02173d
and then rewriting it to be per handler rather than handler identifier
and adding support for hooks as well as adding implicit module groups.
2022-10-25 18:03:26 +02:00
Vern Paxson
96668ca0d3
fixes for compiling "standalone" C++ scripts
2022-09-24 14:56:42 -07:00
Tim Wojtulewicz
5ca0bb79c8
Fixes from review, post-rebase
2022-05-26 18:39:01 -07:00
Vern Paxson
d9479c0502
--no-usage-warnings flag to suppress analysis
2022-05-26 17:39:15 -07:00
Vern Paxson
fb6725a9ce
"-O use-C++" now fails if no C++ bodies wound up being applicable
2022-05-12 14:08:54 -07:00
Vern Paxson
34b448ee7b
update environemnt variable names to match command-line arguments
2022-05-12 14:08:17 -07:00
Vern Paxson
03194949c9
reduce interpreter frames for compiled function bodies
2022-04-01 18:00:11 -07:00
Tim Wojtulewicz
16ee942a8d
Merge remote-tracking branch 'origin/topic/vern/use-C++-fix'
...
* origin/topic/vern/use-C++-fix:
fix existing checks for looking to use C++ when it's not available
2022-02-04 10:33:55 -07:00
Vern Paxson
a6e493062c
fix existing checks for looking to use C++ when it's not available
2022-02-03 20:35:25 -08:00
Vern Paxson
16e9af137f
fixes for ZAM profiling, which didn't get fully integrated originally
2022-02-03 08:59:39 -08:00
Vern Paxson
2f7137999f
restored support for incremental compilation of scripts to C++
2021-12-12 12:36:45 -08:00
Vern Paxson
d5e7db1070
new ZEEK_FILE_ONLY and ZEEK_FUNC_ONLY environment variables for debugging script optimization - replaces ZEEK_ONLY
2021-12-12 12:34:50 -08:00
Vern Paxson
9069e744f9
replace --optimize-only with --optimize-funcs and --optimize-files
2021-12-10 12:45:27 -08:00
Vern Paxson
8c59626eb9
reintroduction of "-O add-C++" option
2021-12-10 10:19:23 -08:00
Vern Paxson
a2cec7463f
suppress unneeded initializations
2021-11-24 12:17:16 -08:00
Vern Paxson
bb618bae30
remove -O add-C++ and -O update-C++ options
2021-11-07 17:02:18 -08:00
Vern Paxson
e1a760e674
extensive rewrite of generation & execution of run-time initialization
2021-11-07 17:00:19 -08:00
Vern Paxson
509428a9dc
removing -uu functionality and associated script analysis now no longer needed
2021-09-22 11:17:28 -07:00
Tim Wojtulewicz
b2f171ec69
Reformat the world
2021-09-16 15:35:39 -07:00