Vern Paxson
26dae9a5ae
-O gen-C++ maintenance: fixes for attributes & initializing globals
2022-10-14 08:37:45 -05:00
Tim Wojtulewicz
bf98c1e9c8
Merge remote-tracking branch 'origin/topic/vern/CPP-global-init'
...
* origin/topic/vern/CPP-global-init:
updates to -O C++ user and maintenance documentation
use dynamic rather than static initialization of globals for scripts compiled to C++
safety checking for initializing scripts compiled to C++
fixes for initializing scripts compiled to C++
restructured tracking of initializations of globals for script compilation
2022-10-03 09:45:19 -07:00
Vern Paxson
403efd4052
updates to -O C++ user and maintenance documentation
2022-09-29 15:12:04 -07:00
Vern Paxson
0687959f1c
use dynamic rather than static initialization of globals for scripts compiled to C++
2022-09-29 15:11:05 -07:00
Vern Paxson
6ad28b37e6
safety checking for initializing scripts compiled to C++
2022-09-29 15:10:28 -07:00
Vern Paxson
5c21240daf
fixes for initializing scripts compiled to C++
2022-09-29 15:09:37 -07:00
Vern Paxson
96668ca0d3
fixes for compiling "standalone" C++ scripts
2022-09-24 14:56:42 -07:00
Vern Paxson
eec733beae
updates to notes for compile-to-C++ maintenance
2022-09-16 16:53:42 -07:00
Vern Paxson
dbae112bdc
C++ script generation fix for lambdas that have identical bodies
2022-09-16 16:46:35 -07:00
Vern Paxson
7210225bba
fix for C++ scripts that refer to "opaque" types
2022-09-16 16:45:37 -07:00
Vern Paxson
a725cfa9e3
C++ compilation support for 2-valued vector "for" loops
2022-09-16 16:45:09 -07:00
Vern Paxson
7b8d92b4f6
C++ compilation support for RE /s operator
2022-09-16 16:44:00 -07:00
Vern Paxson
5c6801131f
run-time checking of vector operations for overflows and division-by-zero
2022-09-16 16:43:12 -07:00
Tim Wojtulewicz
2abc82722f
Fix a swath of AUTO_CAUSES_COPY issues reported by Coverity
2022-08-15 09:45:46 -07:00
Vern Paxson
7a41170a59
updates for gen-C++ maintenance, including skipping some inappropriate tests
2022-08-01 16:47:17 -07:00
Vern Paxson
1bbf345e46
gen-C++ support for vector bit-shift operations
2022-08-01 10:26:26 -07:00
Vern Paxson
f912ac06ff
make gen-C++ maintenance scripts directly executable
2022-07-31 11:31:01 -07:00
AmazingPP
f2bfa61fc6
Add bitshift operators
2022-07-21 11:12:30 +08:00
Tim Wojtulewicz
f624c18383
Deprecate bro_int_t and bro_uint_t
2022-07-12 12:01:23 -07:00
Tim Wojtulewicz
9e953f50cb
Merge remote-tracking branch 'origin/topic/vern/remove-deprecated-closures'
...
* origin/topic/vern/remove-deprecated-closures:
removed deprecated capture-by-reference closures
2022-06-27 13:04:57 -07:00
Tim Wojtulewicz
7c4fd382d9
Code modernization: Convert from deprecated C standard library headers
2022-06-27 09:47:31 -07:00
Vern Paxson
5a0a88526e
removed deprecated capture-by-reference closures
2022-06-17 15:55:43 -07:00
Vern Paxson
702172079a
tweaks per reviewing feedback
2022-05-13 16:16:21 -07:00
Vern Paxson
a21d14fbd2
format shell scripts per style guide
2022-05-13 10:31:27 -07:00
Vern Paxson
08fbc7efb3
helper scripts for -O C++ maintenance
2022-05-12 14:09:35 -07:00
Vern Paxson
56140046d3
final changes for -O C++ feature completeness, mainly "when" statement support
2022-05-12 14:07:36 -07:00
Vern Paxson
bcebe27ced
updates for compile-to-C++
2022-03-23 15:36:36 -07:00
Matthew Luckie
11f8729997
remove deprecated union and timer types, addressing #1898
2022-02-19 19:17:51 +13:00
Tim Wojtulewicz
3d9d6e953b
Merge remote-tracking branch 'origin/topic/vern/when-lambda'
...
* origin/topic/vern/when-lambda:
explicitly provide the frame for evaluating a "when" timeout expression
attempt to make "when" btest deterministic
tests for new "when" semantics/errors
update existing test suite usage of "when" statements to include captures
update uses of "when" in base scripts to include captures
captures for "when" statements update Triggers to IntrusivePtr's and simpler AST traversal introduce IDSet type, migrate associated "ID*" types to "const ID*"
logic (other than in profiling) for assignments that yield separate values
option for internal use to mark a function type as allowing non-expression returns
removed some now-obsolete profiling functionality
minor commenting clarifications
2022-01-14 14:41:42 -07:00
Tim Wojtulewicz
2accf6dfbf
Merge remote-tracking branch 'origin/topic/vern/CPP-type-switch'
...
* origin/topic/vern/CPP-type-switch:
support for compiling type-based switches to C++
make encountering uncompilable "standalone" functions to be a hard error
fix: ZAM could misinterpret a "type" switch that starts with a "default"
fix: don't treat pseudo-identifiers in type cases as local variables
removed development helper scripts now obsolete with --optimize-files=
2022-01-11 15:02:52 -07:00
Vern Paxson
f895008c34
captures for "when" statements
...
update Triggers to IntrusivePtr's and simpler AST traversal
introduce IDSet type, migrate associated "ID*" types to "const ID*"
2022-01-07 14:50:35 -08:00
Vern Paxson
fa142438fe
logic (other than in profiling) for assignments that yield separate values
2022-01-07 14:18:42 -08:00
Tim Wojtulewicz
edf90a51e4
GH-1624: Migrate check_and_promote and a few Expr methods to IntrusivePtr
2022-01-07 12:33:54 -07:00
Vern Paxson
721d99636e
support for compiling type-based switches to C++
2021-12-23 11:39:58 -08:00
Vern Paxson
c6cd5d7a3b
make encountering uncompilable "standalone" functions to be a hard error
2021-12-23 11:38:09 -08:00
Vern Paxson
adb4958c73
removed development helper scripts now obsolete with --optimize-files=
2021-12-23 11:36:35 -08:00
Vern Paxson
3fc58bdd9f
minor note regarding improving performance of C++-generated code
2021-12-12 12:42:16 -08:00
Vern Paxson
86288426fb
factoring of generating C++ initializations, no semantic changes
2021-12-12 12:41:16 -08:00
Vern Paxson
2f7137999f
restored support for incremental compilation of scripts to C++
2021-12-12 12:36:45 -08:00
Vern Paxson
3b3cea799b
fixes for -O gen-standalone-C++
2021-12-12 12:36:08 -08:00
Vern Paxson
96ed944571
fix for compiling record constructors to C++
2021-12-12 12:34:23 -08:00
Vern Paxson
52ed9351a9
fixes for compiling vector operations to C++
2021-12-12 12:33:38 -08:00
Vern Paxson
ce7f886077
removing vestigial methods
2021-12-12 12:32:27 -08:00
Vern Paxson
9069e744f9
replace --optimize-only with --optimize-funcs and --optimize-files
2021-12-10 12:45:27 -08:00
Tim Wojtulewicz
aa91f72b34
Merge remote-tracking branch 'origin/topic/vern/cpp-add-option2'
...
* origin/topic/vern/cpp-add-option2:
reintroduction of "-O add-C++" option
2021-12-10 13:13:26 -07:00
Tim Wojtulewicz
56b421db9f
Merge remote-tracking branch 'origin/topic/vern/cpp-maint-dec21'
...
* origin/topic/vern/cpp-maint-dec21:
fixes for vector operations
flag globals initialized to opaque values as non-compilable
skip type signatures for lambdas
fix for translating filenames beginning with numbers to C++ variable names
remove unnecessary includes
2021-12-10 13:12:58 -07:00
Vern Paxson
8c59626eb9
reintroduction of "-O add-C++" option
2021-12-10 10:19:23 -08:00
Vern Paxson
ac74943f26
fixes for vector operations
2021-12-10 09:32:42 -08:00
Vern Paxson
6788be94c9
flag globals initialized to opaque values as non-compilable
2021-12-10 09:31:41 -08:00
Vern Paxson
53342fdd29
skip type signatures for lambdas
2021-12-10 09:27:58 -08:00