v8/src
Darius M de04959f17 [compiler] Remove delayed string constants
StringConstantXXX were introduced when we switched to concurrent
compilation, as a way to build strings in Turbofan in a background
thread, without having to actually allocate them on the main heap
from the background. See https://crrev.com/c/1221807.

Now that we have local heaps, we can actually allocate strings from
the background, making StringConstantXXX useless.

Moreover, we would fold constant string concatenations into
ConsString, which sounds a bit dubious for performance. Now, small
constant string concatenations will be folded into SeqStrings, while
larger ones will remain ConsString, just to avoid the quadratic
worst-case.

Change-Id: I0479d16aa5691c9d774187c4cc0d03ff4fe2b4f9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3811291
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Darius Mercadier <dmercadier@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#82381}
2022-08-11 07:41:53 +00:00
..
api Reland "[handles] Remove precise on-stack representation of global handles" 2022-08-10 11:59:24 +00:00
asmjs [wasm] Introduce separate limits for memory64 2022-07-26 10:36:11 +00:00
ast Make bitfields only as wide as necessary for enums 2022-08-01 15:09:04 +00:00
base Revert "[base] Add new API to protect data memory" 2022-08-10 20:45:12 +00:00
baseline [riscv][masm][cleanup] Refactor call related assembler options 2022-08-10 14:35:43 +00:00
bigint Reland "Remove some unused includes" 2022-07-05 16:44:13 +00:00
builtins [heap] Add shared barrier to RecordWrite builtin 2022-08-11 06:39:42 +00:00
codegen [compiler] Remove delayed string constants 2022-08-11 07:41:53 +00:00
common Reland^2 "[shared-struct] Add Atomics.Condition" 2022-08-11 00:12:22 +00:00
compiler [compiler] Remove delayed string constants 2022-08-11 07:41:53 +00:00
compiler-dispatcher [compiler] Park main thread while awaiting compile tasks 2022-08-10 21:43:52 +00:00
d8 Reland "[d8] Dump stack trace on d8 tests timeouts on posix systems" 2022-08-10 20:46:15 +00:00
date Fix Date BiDi format 2022-07-11 17:19:43 +00:00
debug [debug] Simplify debug scope search 2022-08-11 06:50:53 +00:00
deoptimizer [baseline] Reduce jump targets behind --no-deopt-to-baseline flag. 2022-08-08 14:26:10 +00:00
diagnostics Reland^2 "[shared-struct] Add Atomics.Condition" 2022-08-11 00:12:22 +00:00
execution [heap] Set interrupt when requesting global safepoints 2022-08-10 23:17:24 +00:00
extensions
flags [runtime] Improve builtins PGO logging 2022-08-10 13:55:54 +00:00
handles Reland "[handles] Remove precise on-stack representation of global handles" 2022-08-10 11:59:24 +00:00
heap [heap] Add shared barrier to RecordWrite builtin 2022-08-11 06:39:42 +00:00
ic [runtime] return when failed access callback doesn't throw 2022-07-06 14:01:36 +00:00
init Reland^2 "[shared-struct] Add Atomics.Condition" 2022-08-11 00:12:22 +00:00
inspector Reland "[inspector] Enable async stack tagging API by default" 2022-08-04 08:54:05 +00:00
interpreter [interpreter] equivalence_id_ field type change 2022-08-05 08:39:13 +00:00
json Remove some unused includes (4) 2022-07-08 15:26:40 +00:00
libplatform [libplatform] Spawn more tasks from DefaultJobState::Join 2022-08-03 14:59:28 +00:00
libsampler Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
logging [runtime] Improve builtins PGO logging 2022-08-10 13:55:54 +00:00
maglev Reland "[maglev] Support LdaModuleVariable and StaModuleVariable" 2022-08-11 06:57:23 +00:00
numbers [bigint] Fix object literal property keys like 0x0n 2022-05-20 11:21:15 +00:00
objects [compiler] Remove delayed string constants 2022-08-11 07:41:53 +00:00
parsing [error messages] Enhance the "unexpected identifier" error message 2022-07-12 06:44:27 +00:00
profiler Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
protobuf
regexp S390: pass a scratch register when using register_location 2022-08-04 13:00:22 +00:00
roots Reland "Move some string allocation functions from Factory to FactoryBase" 2022-08-10 11:20:34 +00:00
runtime Reland^2 "[shared-struct] Add Atomics.Condition" 2022-08-11 00:12:22 +00:00
sandbox [sandbox] Atomically load/store ExternalPointerHandles 2022-08-09 02:42:30 +00:00
sanitizer
snapshot [masm][cleanup] Refactor call related assembler options 2022-08-10 09:28:34 +00:00
strings [cleanup] Cleanup StringStream::PrintFunction() 2022-07-21 12:48:19 +00:00
tasks Remove some unused includes (3) 2022-07-07 09:42:31 +00:00
temporal [Temporal] Fix bug in ScanCalendarDateTimeTimeRequired 2022-08-10 23:44:12 +00:00
third_party Fix vtunejit issues 2022-07-27 13:02:17 +00:00
torque [shared-struct] Use external pointer table in JSAtomicsMutex when compressing pointers 2022-07-26 22:07:57 +00:00
tracing [v8] Fix data race in TRACE_EVENT macros. 2022-06-07 00:19:05 +00:00
trap-handler
utils [API] Prepare deprecation of second OnCriticalMemoryPressure 2022-07-25 12:59:56 +00:00
wasm [wasm] Switch back to boolean enums 2022-08-10 13:40:34 +00:00
web-snapshot [web snapshot] Support BigInt 2022-08-10 13:15:15 +00:00
zone [maglev] Extend lifetimes of values used in a loop 2022-07-28 14:55:15 +00:00
DEPS Revert "[heap, api] Check assumptions for embedder fields on set" 2022-08-02 08:04:13 +00:00
DIR_METADATA
OWNERS