dart-sdk/runtime/platform
Tess Strickland faa1c9ff98 [vm] Move context setting into AllocateClosure stub.
With this change, allocation instructions can now be direct inputs to
other allocation instructions, so the redundancy eliminator is extended
to handle this possibility.

Methods for working with instruction input-related slots are added to
subclasses of AllocationInstr, so that the redundancy eliminator can be
written more generically in places, instead of needing to add cases for
new allocation instructions and/or instruction inputs.

Code size different in Flutter gallery (release-sizeopt):
* ARM7: Total -0.30%, instructions -0.41%
* ARM8: Total -0.31%, instructions -0.47%

TEST=Current test suite.

Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-debug-simarm64c-try,vm-kernel-precomp-linux-debug-simarm_x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64c-try,vm-kernel-precomp-linux-product-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-linux-release-simarm64-try,vm-kernel-precomp-linux-release-simarm-try,vm-kernel-linux-debug-ia32-try,vm-kernel-linux-debug-x64-try,vm-kernel-linux-product-x64-try,vm-kernel-linux-release-simarm64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-x64-try,vm-kernel-linux-debug-x64c-try
Change-Id: Idc1aa2a1cb8c0c62f0bcb64aee89a7525dd3d1e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/198406
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2021-06-02 18:10:38 +00:00
..
address_sanitizer.h [vm] Fix LSAN when used without ASAN. 2020-05-12 17:38:19 +00:00
allocation.cc [vm] Produce clearer error messages for malloc/realloc failures. 2020-11-13 22:10:54 +00:00
allocation.h [vm] Produce clearer error messages for malloc/realloc failures. 2020-11-13 22:10:54 +00:00
assert.cc [vm] On Android set abort message before aborting 2021-03-15 15:35:10 +00:00
assert.h [vm/compiler] Cache entry point in closure in bare instructions mode. 2021-05-20 09:05:40 +00:00
atomic.h [vm/slot] Use seq_cst memory order for failure-branch of compare_exchange. 2020-12-04 20:38:52 +00:00
BUILD.gn [fuchsia] allow injecting the inspect node 2021-03-22 17:38:24 +00:00
elf.h [vm] Simplify symbol naming/address retrieval. 2020-10-06 17:10:05 +00:00
floating_point.h [gardening] Fix import to fix Flutter build 2019-09-06 09:08:49 +00:00
floating_point_win.cc
floating_point_win.h
globals.h [build] Move from the C++11 to the C++17 standard. 2021-03-19 15:29:57 +00:00
growable_array.h [vm] Move context setting into AllocateClosure stub. 2021-06-02 18:10:38 +00:00
hashmap.cc [vm] Produce clearer error messages when operator new fails. 2020-11-13 19:07:20 +00:00
hashmap.h [vm] Propagate more UTF8 conversion errors 2018-09-06 02:23:21 +00:00
leak_sanitizer.h [vm] Fix LSAN when used without ASAN. 2020-05-12 17:38:19 +00:00
memory_sanitizer.h [vm, io] Fix some MemorySanitizer issues. 2020-02-27 17:50:43 +00:00
platform_sources.gni [vm] Produce clearer error messages for malloc/realloc failures. 2020-11-13 22:10:54 +00:00
priority_queue.h [vm] Make event handler use appropriate data structure for timers 2020-12-16 10:55:12 +00:00
safe_stack.h [vm] Fix various UBSan failures. 2020-05-07 19:40:18 +00:00
signal_blocker.h VM: Re-format to use at most one newline between functions 2017-07-13 08:08:37 -07:00
splay-tree-inl.h [ VM ] Updated splay-tree licenses, added V8 project authors to AUTHORS 2019-04-30 19:50:46 +00:00
splay-tree.h [ VM ] Updated splay-tree licenses, added V8 project authors to AUTHORS 2019-04-30 19:50:46 +00:00
syslog.h [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
syslog_android.cc [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
syslog_fuchsia.cc [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
syslog_linux.cc [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
syslog_macos.cc [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
syslog_win.cc [build] Remove last platform -> vm and bin -> vm dependencies. Fix some ODR violations. 2019-04-22 20:15:43 +00:00
text_buffer.cc [vm] Add buffering of --trace_precompiler_to output in memory 2020-12-11 18:19:39 +00:00
text_buffer.h [vm] Add buffering of --trace_precompiler_to output in memory 2020-12-11 18:19:39 +00:00
thread_sanitizer.h [vm] Fix TSAN failures related to object headers and GC task phases. 2019-10-09 21:48:20 +00:00
unaligned.h [vm] Fix various UBSan failures. 2020-05-07 19:40:18 +00:00
undefined_behavior_sanitizer.h [vm] Fix various UBSan failures. 2020-05-07 19:40:18 +00:00
unicode.cc [dart/fuzzer] Mechanism for target functions 2019-05-02 18:12:19 +00:00
unicode.h [vm] Adjust internal UTF-8 encoder to match dart:convert. 2020-06-29 16:10:13 +00:00
utils.cc Reland "[vm] Fix V8 snapshot profile handling of the dispatch table." 2021-04-20 11:17:36 +00:00
utils.h Revert "[vm] Switch datastream Write/WriteUnsigned to (S)LEB128." 2021-04-26 07:52:47 +00:00
utils_android.cc [build] Support --clang when building dart sdk on Windows. 2020-06-25 03:36:41 +00:00
utils_android.h [vm/compiler] bit utilities 2019-10-07 18:13:06 +00:00
utils_fuchsia.cc [fuchsia] allow injecting the inspect node 2021-03-22 17:38:24 +00:00
utils_fuchsia.h [fuchsia] allow injecting the inspect node 2021-03-22 17:38:24 +00:00
utils_linux.cc [build] Support --clang when building dart sdk on Windows. 2020-06-25 03:36:41 +00:00
utils_linux.h [vm/compiler] bit utilities 2019-10-07 18:13:06 +00:00
utils_macos.cc [vm] Produce clearer error messages for malloc/realloc failures. 2020-11-13 22:10:54 +00:00
utils_macos.h [vm/compiler] bit utilities 2019-10-07 18:13:06 +00:00
utils_win.cc [vm] Produce clearer error messages for malloc/realloc failures. 2020-11-13 22:10:54 +00:00
utils_win.h [vm/compiler] bit utilities 2019-10-07 18:13:06 +00:00