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
Vern Paxson
f89ed411cf
updates for usage issues: support for -uu, maybe/definitely distinctions
2021-09-08 10:23:38 -07:00
Vern Paxson
da6ac0b521
switch to ID definition regions; reworked driver functions; more info for reporting uncompilable functions
2021-09-08 10:23:38 -07:00
Tim Wojtulewicz
0b342b7bfa
Merge remote-tracking branch 'origin/topic/vern/CPP-workflow2'
...
* origin/topic/vern/CPP-workflow2:
low-level coding style fixes
support for standalone compiled scripts to export globals with module qualifiers
updates for documentation of functionality for compiling scripts to C++
fixes for standalone C++ scripts making types & variables/functions available
fixed bug limiting availability of load_CPP() BiF
updates to development helper scripts to support new workflow
simpler workflow for -O gen-C++ ; also some hooks for -O gen-standalone-C++
ReplaceBody now deletes a body if the replacement is nil
removal of can't-actually-be-executed code
2021-07-01 08:46:53 -07:00
Vern Paxson
725aa558a7
fixes for standalone C++ scripts making types & variables/functions available
2021-06-04 17:14:46 -07:00
Vern Paxson
e1dc3e7b08
simpler workflow for -O gen-C++ ; also some hooks for -O gen-standalone-C++
2021-06-04 17:01:53 -07:00
Vern Paxson
b5b58b0a3a
"-O compile-all" option to specify compilation of inlined functions
2021-06-01 09:24:17 -07:00
Vern Paxson
7855557e92
compile inlined functions if they're also used indirectly
2021-06-01 09:05:01 -07:00
Vern Paxson
143d306883
fix for AST optimization altering top-level body statement
2021-05-30 17:37:44 -07:00
Vern Paxson
efd03d41f8
convert scopes to be managed using IntrusivePtr's
2021-05-30 17:20:29 -07:00
Vern Paxson
e697f351ad
fixed cut-and-paste botch (redundant line of code)
2021-05-09 14:42:03 -07:00
Vern Paxson
2b0f1c9d6e
remove -O force-C++, and also some inadvertently replicated code
2021-05-05 19:11:17 -07:00
Vern Paxson
93e9801f89
removed redundant Traverse invocation
2021-05-05 16:55:05 -07:00
Jon Siwek
3e85375010
Fix various compiler/linter warnings in script_opt/CPP code
2021-05-05 16:55:05 -07:00
Vern Paxson
24e92fa54a
hooks for activating the compiler & associated BiF
2021-05-05 16:55:04 -07:00
Vern Paxson
863be9436b
the bulk of the compiler
2021-05-05 16:55:04 -07:00
Vern Paxson
72f62f398a
FuncInfo now tracks priority; some tidying/widening of its accessors
2021-05-05 16:55:04 -07:00
Vern Paxson
0b45ff2179
optionally hash original, not extended, form of records for profiling
...
profile types associated with global initializations
incorporate type name, if present, into type hash
2021-04-01 20:20:12 -07:00
Jon Siwek
fb33597372
Merge branch 'master' into topic/vern/cpp-prep-profiling
2021-03-31 12:02:17 -07:00
Vern Paxson
297adf3486
function profiling rewritten - more detailed info, supports global profiling
2021-03-25 16:17:32 -07:00
Vern Paxson
e5a0b2c04c
whitespace adjustment
2021-03-24 21:52:20 -07:00
Vern Paxson
95b89be571
put global statements into a quasi-function to support script optimization
2021-03-24 21:22:03 -07:00
Vern Paxson
7294bb34be
fixes for propagating optimization options, and pruning script function analysis
2021-03-18 08:40:48 -07:00
Vern Paxson
faf1b65ec4
logic for driving AST optimization when requested
2021-02-27 11:39:44 -08:00
Vern Paxson
64ef7f0eb2
simplify and tidy up some interfaces
2021-02-27 11:07:39 -08:00