Age | Commit message (Collapse) | Author |
|
The macro HIPE_SYSTEM_CRC used to contain a hidden cookie from the VM
that generated hipe_literals.hrl. This means that BEAM files containing
that macro would be tied to a particular version of the VM.
Change hipe_bifs:system_crc such that it doesn't require a hidden cookie
to return the desired value.
|
|
* vinoski/ds-timer-wheel-fix:
Avoid timer wheel work in dirty schedulers
|
|
* rickard/timer-improvement/OTP-12650:
Fix bug causing timeout to overwrite exit instruction
Doc fixes
|
|
* rickard/fix_alloc_stat_fix/OTP-12766:
Fix statistics reported about fix alloc types
|
|
|
|
|
|
This reverts commit 4c4d7fa40e5fb59854724ce74b8aa3546525cb90.
This pr is causing some test failures that were missed at first.
|
|
* richcarl/warnings-by-default:
Map error logger warnings to warning messages by default
OTP-12755
|
|
* mikpe/erl_child_setup-android-breakage:
erl_child_setup.c: fix Android breakage
OTP-12751
|
|
Dirty schedulers are limited in the type of work they can
perform. Make sure they do not participate in any work or make any
function calls related to timer wheels.
|
|
Also fix and document the broken +We option.
|
|
* rickard/timer-optimization/OTP-12650:
Timer fixes, documentation, and test cases
Conflicts:
erts/emulator/beam/erl_hl_timer.c
|
|
|
|
* jv/18/emulator-send-to-error_logger/OTP-12735:
erts: Fix erts_send_error_term_to_logger memory leak
Send format and args on process exit to error_logger
Add erts_send_error_term_to_logger
|
|
|
|
* egil/erts/high_accuracy_sleep/OTP-12236:
erts: Add high accuracy poll timeouts
|
|
Previously, the emulator would generate a whole string
with values and call the error_logger passing "~s~n".
This commit changes it to a format string containing ~p
with the respective values as arguments.
|
|
This function allows us to send format and args to the
logger which can then be formatted and customized from
Erlang land.
|
|
* egil/fix-maps-copy-shallow:
erts: Make hashmap_get halfword safe
erts: Fix ETS db_has_variable check for large Maps
stdlib: Strengthen ETS Maps tests
erts: Fix copy shallow for large Maps
stdlib: Strengthen ETS Maps tests
erts: ETS ordered_set cannot use it's optimization with Maps
stdlib: Strengthen ETS Maps tests
stdlib: Refactor away ?line macro
|
|
* egil/fix-maps-erts_debug-size:
erts: Fix erts_debug:size/1 for large Maps
erts: Simple test of erts_debug:size/1 of Maps
|
|
* sg2342/fix_freebsd_sendfile/OTP-12720:
Fix FreeBSD sendfile
|
|
* sverk/erts-fp-exception-fixes/OTP-12717:
erts: Disable float exceptions for clang/llvm
erts: Increase buffer in erts_fp_check_init_error
|
|
|
|
|
|
* rickard/timer-optimization/OTP-12650:
Optimized timer implementation
Reusable red-black tree implementation
Conflicts:
erts/emulator/beam/erl_bif_timer.c
|
|
* rickard/time-improvement/OTP-11997:
Allow execution of estone suite on pre OTP-18 systems
Add parallel time monotonicity test-case
Replace usage of erlang:now() in line-tracing
Replace erlang:now() usage in emulator suite
Replace erlang:now() usage in system suite
Misc time improvements
|
|
|
|
|
|
* richcarl/md5-fixes:
Set module_info md5 for native modules properly
Add module_info entry for native code
Gracefully handle empty md5 field in module_info
Remove 'imports' key from spec of get_module_info()
|
|
* egil/fix-pos-zero-opt:
erts: Don't let the compiler optimize pos. zero fix
|
|
Use the md5 of the native code chunk instead of the Beam code md5.
|
|
|
|
|
|
|
|
There is no need to take special care of Maps at all since header_arity(hdr)
will take care of the normal case via its Map handling.
|
|
The optimization cannot be used due to that the pattern cannot be ordered.
|
|
|
|
|
|
|
|
|
|
- Possibility to chose different clock sources
- Improved mach clock usage
- Improved linux clock_gettime() usage
- ...
|
|
The current size is too small for 64-bit machines,
causing messages to be truncated and making debugging
more difficult.
|
|
|
|
* sverk/hipe_match_wbin/OTP-12667:
erts: Add debug assertions for match state sanity
hipe: Add test for matching of writable binary
erts,hipe: Optimize away calls to emasculate_binary
erts,hipe: Fix bug in binary matching of writable binary
Conflicts:
erts/emulator/hipe/hipe_bif0.c
|
|
sys_write_buf allocator type is used from async-threads and needs
to be lockable. In the SMP case the temporary allocator is lockable but
not in the Non-SMP case.
To remedy this the binary-allocator is used for the Non-SMP case,
which is lockable.
|
|
|
|
|
|
* mikpe/hipe-unbreak-arity-4-bifs:
erts/hipe: unbreak arity 4 BIFs
|
|
The Android support in erl_child_setup.c is broken:
1. The close fd loop compares an fd (integer i) with the address of the function
__system_properties_fd rather than the value of calling that function.
2. This function is locally defined, but its name starts with two underscores
which is reserved for the implementation.
3. This function is not used outside of this file, so should be static.
4. This function performs a fair amount of work (calls getenv and atoi), which
would be repeated for each and every fd in the [from,to] range.
5. This function contains an unsed local variable 's'.
Fixed by dropping the __ prefix, making the function static, dropping the unused
local variable, and rewriting the close fd loop to call the function at most once.
|
|
* egil/opt-instructions/OTP-12690:
erts: Specialize minus and plus instruction
erts: Add move2 specialization for common move patterns
erts: Specialize rem instruction for common case
erts: Specialize band instruction for common case
erts: Batch loads and stores for move_window
erts: Fix loader increment from minus instruction
erts: Add move window instruction
erts: Add instruction move3 for xy and xx
erts: Specialize compare instructions
kernel: Add instruction_count helper to erts_debug
|