v8/src
Joyee Cheung f2fd4923f3 [class] error when accessing unused static private method at debug time
At the moment when the static private method is unused
in source code (either explicitly or through eval) but is accessed
at runtime through the debugger, and there are no other potential
references to the class variable in the source code otherwise,
the reference to the class variable is lost here since the class
variable would not be context-allocated, then we could not rebuild
a proper brand check for it.

For now, a ReferenceError would be thrown and the method is considered
"optimized away", similar to how unused ordinary methods in closures
work. Before this patch it would DCHECK when generating bytecode
for the debugger instead of throwing errors.

Bug: v8:9839, v8:8330
Change-Id: I5d63131a7bdba141d01a3e6459bc27d0f5953c1a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2095637
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#66734}
2020-03-16 18:07:03 +00:00
..
api [heap] Report allocated size of global handles 2020-03-10 16:46:48 +00:00
asmjs [offthread] Allow off-thread bytecode finalization 2020-03-03 14:36:44 +00:00
ast [parser] Remove unnecessary ParseInfo from Scope methods 2020-03-12 08:52:41 +00:00
base [wasm] Fix registers spilled in DebugBreak frame 2020-03-16 10:13:40 +00:00
builtins [wasm] Fix registers spilled in DebugBreak frame 2020-03-16 10:13:40 +00:00
codegen s390: [wasm-simd] Add simulator support for simd operations 2020-03-16 16:27:53 +00:00
common [class] error when accessing unused static private method at debug time 2020-03-16 18:07:03 +00:00
compiler s390: [wasm-simd] Add simulator support for simd operations 2020-03-16 16:27:53 +00:00
compiler-dispatcher Remove mstarzinger@ from OWNERS files. 2019-12-13 11:13:14 +00:00
d8 [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
date Make ToInteger always truncate -0 2020-03-02 20:40:01 +00:00
debug [wasm] Load register values from DebugBreak frame 2020-03-16 13:29:03 +00:00
deoptimizer [TurboFan] Redirect --trace-opt, --trace-deopt, --trace-osr to a file 2020-03-16 14:18:43 +00:00
diagnostics [TurboFan] Redirect --trace-opt, --trace-deopt, --trace-osr to a file 2020-03-16 14:18:43 +00:00
execution s390: [wasm-simd] Add simulator support for simd operations 2020-03-16 16:27:53 +00:00
extensions [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
flags s390: [arm] Add missing RELATIVE_CODE_TARGET iteration 2020-03-10 12:04:08 +00:00
handles [heap] Report allocated size of global handles 2020-03-10 16:46:48 +00:00
heap [heap] Introduce safepoint mechanism 2020-03-16 16:33:53 +00:00
ic Fix one more LookupIterator 2020-03-13 13:39:54 +00:00
init [weakrefs] Rename FinalizationGroup to FinalizationRegistry for JS 2020-02-25 22:53:20 +00:00
inspector [wasm] Tierup wasm module on debugger.disable 2020-03-09 17:39:37 +00:00
interpreter [class] error when accessing unused static private method at debug time 2020-03-16 18:07:03 +00:00
json [offthread] Add off-thread support to Script 2020-02-11 09:45:33 +00:00
libplatform Roll Perfetto forward, adapting to proto_library changes 2020-03-04 14:51:41 +00:00
libsampler [ppc64][ppc] Split up ARCH_PPC and ARCH_PPC64 2020-02-21 15:42:20 +00:00
logging [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
numbers [build] Disable -ftrivial-auto-var-init in Release mode 2020-03-09 12:03:17 +00:00
objects [TurboFan] Redirect --trace-opt, --trace-deopt, --trace-osr to a file 2020-03-16 14:18:43 +00:00
parsing [parser] Set script id on ParseInfo creation 2020-03-10 15:41:08 +00:00
profiler [ppc64][ppc] Split up ARCH_PPC and ARCH_PPC64 2020-02-21 15:42:20 +00:00
protobuf Add OWNERS to src/protobuf 2019-05-15 11:17:23 +00:00
regexp [regexp] Simplify allocation of RegExpMacroAssemblerTracer 2020-03-16 07:23:00 +00:00
roots [torque] Generate GC object visitors for Torque classes 2020-03-09 11:37:37 +00:00
runtime [class] error when accessing unused static private method at debug time 2020-03-16 18:07:03 +00:00
sanitizer Rename clemensh to clemensb in OWNERS 2019-09-26 08:44:44 +00:00
snapshot Respect custom chunk size in RO serializer 2020-03-12 10:38:51 +00:00
strings [strings] Reclaim a bit in the hash field 2020-02-17 18:26:07 +00:00
tasks Revert "[weakrefs] Schedule FinalizationGroup cleanup tasks from within V8" 2020-02-09 16:24:52 +00:00
third_party Update the dependency of v8_vtunejit 2019-12-23 02:00:49 +00:00
torque [torque] fix build on VS2017 2020-03-11 13:02:49 +00:00
tracing [tracing] Remove id mangling 2020-01-23 12:50:48 +00:00
trap-handler Introducing trap handler support for FreeBSD x64. 2019-11-08 16:46:05 +00:00
utils Reland "[wasm] Further reduce the size of WasmCode" 2020-03-05 16:21:18 +00:00
wasm [wasm-simd][liftoff][arm][arm64] Implement adds 2020-03-16 17:56:03 +00:00
zone Remove and update some outdated TODO(mstarzinger). 2019-12-13 10:18:04 +00:00
DEPS [offthread] Add OffThreadFactory support to AST strings 2020-01-16 14:58:54 +00:00
OWNERS Use relative paths to OWNERS files 2019-08-12 13:52:52 +00:00