v8/test/cctest
Qifan Pan 63134966fd [turbofan] Fix a bug of SignedBigInt64 in representation changer
The expected behavior of the optimized code is deoptimizing when using a BigInt
as an index and throwing an error (from CheckedTaggedToInt64).
The representation changer tries to insert conversions for this case where

- The output node is represented in Word64 (SignedBigInt64)
- The use info is CheckedSigned64AsWord64

The representation changer first rematerializes the output node to
TaggedPointer because the type check is not BigInt. Then it falls wrongly to
the branch where the output representation is TaggedPointer, the output type is
SignedBigInt64 in GetWord64RepresentationFor.

Bug: v8:9407, chromium:1403574, chromium:1404607
Change-Id: I9d7ef4c94c1dc0aa3b4f49871ec35ef0877efc24
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4135876
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Qifan Pan <panq@google.com>
Cr-Commit-Position: refs/heads/main@{#85094}
2023-01-04 15:30:31 +00:00
..
compiler [turbofan] Fix a bug of SignedBigInt64 in representation changer 2023-01-04 15:30:31 +00:00
heap Revert "Reland "[heap] Fix conservative stack scanning for client isolates"" 2022-12-21 11:27:43 +00:00
torque [test][cleanup] Use CSA::GetJSContextParameter() in tests 2022-11-18 10:03:57 +00:00
wasm Revert "[wasm][capi] Optimize all functions before serialization" 2023-01-02 13:59:06 +00:00
assembler-helper-arm.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
assembler-helper-arm.h [test, arm] Take isolate as argument for AssembleCode 2020-11-18 14:17:05 +00:00
BUILD.gn Fix cctest build in Chromium with v8_use_perfetto=true 2022-11-17 12:59:57 +00:00
cctest-utils.h Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
cctest.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
cctest.h [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
cctest.status Skip cctest/test-serialize/CreateIsolateFromReadOnlySnapshot on mac debug 2022-12-16 19:20:39 +00:00
collector.h [base] Move utils/vector.h to base/vector.h 2021-06-18 13:33:13 +00:00
DEPS Reland "[tracing] Roll perfetto @ 28b633cd" 2019-09-06 13:42:02 +00:00
expression-type-collector-macros.h [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
feedback-vector-helper.h [test] Migrate cctest/test-feedback-vector to unittests/ 2022-08-22 16:36:28 +00:00
jsonstream-helper.h [profiler] add Serialize to v8::CpuProfile 2022-10-25 10:49:04 +00:00
manually-externalized-buffer.h [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
OWNERS Update OWNERS in test/* 2021-02-25 14:26:24 +00:00
print-extension.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
print-extension.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
profiler-extension.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
profiler-extension.h Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
setup-isolate-for-tests.cc [static-roots] Refactor setup_isolate_delegate 2022-11-29 16:23:19 +00:00
setup-isolate-for-tests.h [static-roots] Refactor setup_isolate_delegate 2022-11-29 16:23:19 +00:00
test-accessor-assembler.cc [test][cleanup] Use CSA::GetJSContextParameter() in tests 2022-11-18 10:03:57 +00:00
test-accessors.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-allocation.cc Reland "Reland "[v8] Use |AllocateAtLeast| for resizing v8 zones."" 2022-10-19 11:55:27 +00:00
test-api-array-buffer.cc [rab/gsab,api] Add resizable BackingStore creation 2022-12-14 01:54:00 +00:00
test-api-interceptors.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-api-stack-traces.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-api-typed-array.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-api.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
test-api.h [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-assembler-arm64.cc [msvc] fix ambiguous call to function in assembler test 2022-09-23 21:09:12 +00:00
test-assembler-arm.cc [test] Migrate cctest/compiler/test-codegen to unittests/ 2022-08-22 17:28:27 +00:00
test-assembler-ia32.cc Remove unused RelocInfo::Mode::RUNTIME_ENTRY 2022-09-20 12:52:52 +00:00
test-assembler-loong64.cc [loong64] Fix the wrong encoding and usage of maskeqz/masknez instructions 2021-12-24 10:46:06 +00:00
test-assembler-mips64.cc [loong64][mips64] Remove unused RelocInfo::Mode::RUNTIME_ENTRY 2022-09-21 10:54:43 +00:00
test-assembler-ppc.cc [codegen] Change RegList into a class 2022-03-14 12:59:48 +00:00
test-assembler-riscv32.cc [riscv] Fix cctest/test-assembler-riscv*/RISCV_UTEST_FLOAT_WIDENING_vfwredosum_vv. 2022-09-21 08:25:27 +00:00
test-assembler-riscv64.cc [riscv] Fix cctest/test-assembler-riscv*/RISCV_UTEST_FLOAT_WIDENING_vfwredosum_vv. 2022-09-21 08:25:27 +00:00
test-assembler-s390.cc [cleanup] Rename RelocInfo::NONE to RelocInfo::NO_INFO to fix -Wshadow 2021-11-17 19:11:40 +00:00
test-code-stub-assembler.cc [csa] Support Loop Unrolling 2022-11-21 12:05:37 +00:00
test-constantpool.cc PPC: [cleanup] Replace all remaining Min/Max uses with std::min/max 2020-11-25 08:49:53 +00:00
test-cpu-profiler.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
test-debug-helper.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-debug.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
test-descriptor-array.cc [test][cleanup] Use CSA::GetJSContextParameter() in tests 2022-11-18 10:03:57 +00:00
test-disasm-regex-helper.cc Unify naming convention for tests and filter them in TestLoader for cctest 2022-04-20 14:19:55 +00:00
test-disasm-regex-helper.h Unify naming convention for tests and filter them in TestLoader for cctest 2022-04-20 14:19:55 +00:00
test-field-type-tracking.cc [runtime] Make stores to existing double fields always drop const 2022-11-16 17:05:25 +00:00
test-func-name-inference.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-fuzz-arm64.cc Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-heap-profiler.cc [heap] Refactor the stack object 2022-11-16 16:21:50 +00:00
test-helper-riscv32.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-helper-riscv32.h Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
test-helper-riscv64.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-helper-riscv64.h [riscv] Fix cctest/test-assembler-riscv64/RISCV_UTEST_swlwu. 2022-09-09 13:19:26 +00:00
test-icache.cc Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
test-ignition-statistics-extension.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-inobject-slack-tracking.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-javascript-arm64.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-js-arm64-variables.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-js-to-wasm.cc [wasm] Use v8_flags for accessing flag values 2022-08-29 12:43:46 +00:00
test-js-weak-refs.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
test-liveedit.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-lockers.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-log-stack-tracer.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-macro-assembler-arm.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-macro-assembler-loong64.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-macro-assembler-mips64.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-macro-assembler-riscv32.cc [test] Migrate cctest/compiler/test-codegen to unittests/ 2022-08-22 17:28:27 +00:00
test-macro-assembler-riscv64.cc [test] Migrate cctest/compiler/test-codegen to unittests/ 2022-08-22 17:28:27 +00:00
test-mementos.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-orderedhashtable.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-profile-generator.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-property-details.cc [dict-proto] Allow storing certain PropertyDetails in single byte 2021-02-04 13:45:13 +00:00
test-ptr-compr-cage.cc [ptr-compr] Store cage bases in globals when cage sharing is enabled 2022-11-22 08:00:16 +00:00
test-random-number-generator.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-sampler-api.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-serialize.cc Reland "[static-roots] Allow creating isolates from exist. r/o snapshot" 2022-12-12 10:44:23 +00:00
test-shared-strings.cc [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
test-simple-riscv32.cc Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
test-simple-riscv64.cc [cleanup][test] Remove redundant NOLINT annotations 2021-04-30 11:46:14 +00:00
test-smi-lexicographic-compare.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-stack-unwinding-win64.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-strings.cc [test] Fix cctest/test-strings/Regress1402187 for non sandbox builds 2023-01-03 17:14:13 +00:00
test-swiss-name-dictionary-csa.cc [test][cleanup] Use CSA::GetJSContextParameter() in tests 2022-11-18 10:03:57 +00:00
test-swiss-name-dictionary-infra.cc [runtime] Clean up runtime function Arguments accesses 2022-03-09 13:03:15 +00:00
test-swiss-name-dictionary-infra.h [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-swiss-name-dictionary-shared-tests.h Replace STATIC_ASSERT with static_assert 2022-05-13 13:46:27 +00:00
test-swiss-name-dictionary.cc Reland "[dict-proto] SIMD support for SwissNameDictionary in Torque" 2021-03-31 13:01:34 +00:00
test-sync-primitives-arm64.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-sync-primitives-arm.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-trace-event.cc [test] Make cctest run one test, with maybe custom platform 2022-04-05 09:39:18 +00:00
test-transitions.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-transitions.h Reland "[runtime] Refactor TransitionsAccessor" 2022-02-14 12:05:06 +00:00
test-typedarrays.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-unscopables-hidden-prototype.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-unwinder-code-pages.cc [cctest] Use v8_flags for accessing flag values 2022-09-16 08:22:03 +00:00
test-usecounters.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-utils-arm64.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-utils-arm64.h [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-utils.cc [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
test-v8windbg.cc [tools] Add v8windbg, a WinDbg extension for V8 2020-02-18 19:16:18 +00:00
test-verifiers.cc [cleanup] Remove atomic kRelaxed accessors in favour for non-atomic ones 2021-03-08 10:57:19 +00:00
testcfg.py [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
trace-extension.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
trace-extension.h [test] Remove some unused includes 2022-07-18 12:59:03 +00:00