2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-21 02:52:12 +00:00
Commit Graph

12630 Commits

Author SHA1 Message Date
Rene Rivera
0a6148a679 Debug CI crash 18/n [skip ci] 2022-04-14 23:16:29 -05:00
Rene Rivera
3455d45ec3 Debug CI 17/n [skip ci] 2022-04-14 21:51:37 -05:00
Rene Rivera
3bd856134b Debug CI crash 16/n [skip ci]
Add b2_cbreak for aid debugging.
2022-04-14 08:48:17 -05:00
Rene Rivera
a5dbb560bf Debug CI crash 15/n [skip ci] 2022-04-13 22:54:03 -05:00
Rene Rivera
2ccf4d6d15 Debug CI crash 14/n [skip ci] 2022-04-11 23:27:50 -05:00
Rene Rivera
4c0b3a28c4 Debug Ci crash 13/n [skip ci] 2022-04-11 22:35:26 -05:00
Rene Rivera
3eb06ca47c Debug CI crash 12/n [skip ci] 2022-04-11 21:34:16 -05:00
Rene Rivera
1270abb67d Debug CI crash 11/n [skip ci]
Route all stack cacls through new nth method. And use array indexing to
compute the offsets instead of possibly UB pointer math.
2022-04-11 19:56:42 -05:00
Rene Rivera
22c5f3abb7 Debug Ci crash 10/n [skip ci] 2022-04-11 17:09:12 -05:00
Rene Rivera
35bfccfc33 Debug CI crash 9/n [skip ci] 2022-04-11 12:59:44 -05:00
Rene Rivera
cadb1cfadb Debug CI crash 8/n [skip ci] 2022-04-11 11:55:39 -05:00
Rene Rivera
055dd41f1b Debug CI crash 7/n [skip ci] 2022-04-11 08:34:53 -05:00
Rene Rivera
a5a1d99bb6 Debug CI crash 6/n [skip ci] 2022-04-10 23:22:24 -05:00
Rene Rivera
9cb8146db1 Debug CI crash 5/n [skip ci] 2022-04-10 21:46:37 -05:00
Rene Rivera
19f5d5f5e9 Debug CI crash 4/n [skip ci] 2022-04-10 17:13:18 -05:00
Rene Rivera
51e927b151 Debug CI crash 3/n [skip ci] 2022-04-10 11:40:02 -05:00
Rene Rivera
67509ed8e5 Debug CI crash 2/n [skip ci] 2022-04-09 22:35:28 -05:00
Rene Rivera
7128c6ba91 Debug CI crash 1/n [skip ci] 2022-04-09 20:51:12 -05:00
Rene Rivera
52be149c36 Add minimal and debug options for optimization feature. 2022-04-09 17:21:33 -05:00
Rene Rivera
dc13389eea Add minimal and debug optimization options. 2022-04-09 17:20:20 -05:00
Rene Rivera
a495979b48 Notes for current changes. 2022-04-09 17:19:12 -05:00
Andrey Semashev
e8a11169a1 Added Rocket Lake, Alder Lake, Sapphire Rapids and Zen 3 instruction sets. (#147) 2022-04-09 16:53:31 -05:00
René Ferdinand Rivera Morell
cb23d0955c Workarounds for old msvc compile errors. 2022-04-09 10:08:55 -05:00
Rene Rivera
9c74a5a845 Fix mem leak when arg typechecks fail.
If a rule arg typecheck failed we would leak argument values. This uses
RAII to track owenership instead of manual management to prevent
missing a free when an early exit exception is thrown for such failures.

This marks the last mem leak in the ASAN tests. And marks a clean ASAN
run for all tests.
2022-04-09 00:22:57 -05:00
Rene Rivera
032aac78d0 Fix mem leaks of PARSE objects. 2022-04-06 09:53:02 -05:00
Rene Rivera
46edc8ff59 Fix windows & vms engine compile. 2022-04-03 13:54:21 -05:00
Rene Rivera
9a67db02e3 Fix mem leaks in debugger and calling action rules.
Also fix double-free in property set create. This changes the object_free
calls to zero out the object pointer to prevent/catch double frees
and use-after-free issues. It also changes parse_free in the same way.
And adds a parse_ptr to scope manage the lifetime of PARSE
objects. Which fixes another mem leak in the parse_impl for
early abnormal exits.
2022-04-03 13:35:17 -05:00
Rene Rivera
63d677fce4 Fix mem leak from evaluating timing rules. 2022-04-02 14:03:00 -05:00
Rene Rivera
b6b7ff57c0 Fix msvc compile by avoiding tuples. 2022-04-02 13:30:54 -05:00
Rene Rivera
943c3869b1 Fix memory leaks from reused FRAME_INFO. 2022-04-02 12:30:27 -05:00
Rene Rivera
5a7c842685 Fix use-after-free error for copied FRAME objects. 2022-04-02 12:07:16 -05:00
Rene Rivera
bc4a6c3d4e Fix orphan items in function eval stack. 2022-04-02 11:35:47 -05:00
Rene Rivera
3236572892 Better way to cleanup frame allocations. 2022-04-02 11:33:03 -05:00
Rene Rivera
69c03ced04 Fix memory leak for invoked function args.
If a function exits abnormally, for any reason, the passed in function
frame args would leak. This change captures such early exits and
cleans up the args for directly invoked functions. This clears up about
70% of current memory leaks.
2022-03-31 00:42:18 -05:00
Rene Rivera
e82fdf2e7c Use alternate sizeof advance size calc re msvc. 2022-03-29 13:25:08 -05:00
Rene Rivera
03dd13ef23 Use safer, but slower, select_last_t for msvc. 2022-03-29 08:38:42 -05:00
Rene Rivera
a9a21dfc72 Make all jam stack access type safe. 2022-03-29 08:31:02 -05:00
Rene Rivera
266c664fd9 Remove public function STACK access.
In preparation to clean up the Jam function global stack move the
definition of the STACK and related functions inside the function.cpp
source file only.
2022-03-22 23:02:51 -04:00
Rene Rivera
02c076e14a Start of 4.9.0 2022-03-19 17:52:19 -05:00
Rene Rivera
0b8a8ad7d6 Fix crash on exit cleanup from targets list dtor and pop. 2022-03-17 23:51:57 -05:00
Rene Rivera
7c3ff9a80d Fix engine build for EXIT_* possibly missing. 2022-03-16 21:54:29 -05:00
Rene Rivera
c9557503c4 Update history and readme for release. 2022-03-10 22:39:49 -06:00
Rene Rivera
524ce68d5e Add future C++ versions.
fixes #135
2022-03-10 21:20:47 -06:00
Rene Rivera
b793d6f0a6 Fix warnings. 2022-03-03 23:19:42 -06:00
Rene Rivera
e0c7d35b1f Remove use of freelist caching.
Modern memory allocator is fast enough to not need our own
chained caching of specific data. Hence remove the use of caching
of free LIST instances to simplify memory management.
Also remove uses of exit/abort.
2022-03-03 22:49:45 -06:00
Rene Rivera
157e26303f Avoid crash if modules_done is called early. 2022-03-03 21:41:49 -06:00
Rene Rivera
027ee7379f Remove memory leaks. 2022-03-03 21:40:48 -06:00
Rene Rivera
a9aed5c40a Convert alloc/free calls with unique_ptr managed code.
Using unique_ptr allows to not loose track of memory when early
exit when clean_exit throws an exception.
2022-03-03 21:39:00 -06:00
Rene Rivera
a9aafc7a70 Replace most exit/abort with exception equivalent.
This replaces most abort/exit calls with the utility that throws an
exception. The exception is caught in main to cleanly return failure.
This allows to clean up allocations and always return a valid status
value instead of abnormal termination.
2022-03-03 21:17:38 -06:00
Rene Rivera
efab66b211 Add LIST ctor to prevent no-init errors. 2022-03-03 20:54:12 -06:00