Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ dartfuzz ] AOT-O3-DebugX64C failure: expected: DefDominatesUse(def, instruction) #45555

Closed
bkonyi opened this issue Apr 1, 2021 · 2 comments
Assignees
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. dartfuzz Found with Dart fuzzing (DartFuzz, libFuzzer, etc.)

Comments

@bkonyi
Copy link
Contributor

bkonyi commented Apr 1, 2021

Full logs.

Isolate (/b/s/w/itd7auOt/dart_fuzzAGCDRE) NO-FP NO-FFI FLAT : JIT-STACKTRACEEVERY-83-noVFP-O3-DebugSIMARM - AOT-O3-DebugX64C: !DIVERGENCE! 1.89:1012084931 (0 vs 134)

fail2:
134

../../runtime/vm/compiler/backend/flow_graph_checker.cc: 429: error: expected: DefDominatesUse(def, instruction)
version=2.13.0-edge.e70690e4159169a70810f2c4cad6011a4ec60fba (be) (Thu Apr 1 03:22:35 2021 +0000) on "linux_x64"
pid=20461, thread=20461, isolate_group=isolate(0x55ac9ae67000), isolate=(nil)((nil))
isolate_instructions=0, vm_instructions=0
  pc 0x000055ac9991040c fp 0x00007fff01cba420 dart::Profiler::DumpStackTrace(void*)+0x7c
  pc 0x000055ac99661af4 fp 0x00007fff01cba500 dart::Assert::Fail(char const*, ...)+0x84
  pc 0x000055ac99cf5e46 fp 0x00007fff01cba540 dart::FlowGraphChecker::VisitDefUse(dart::Definition*, dart::Value*, dart::Value*, bool)+0x3f6
  pc 0x000055ac99cf59e4 fp 0x00007fff01cba570 dart::FlowGraphChecker::VisitDefinition(dart::Definition*)+0x84
  pc 0x000055ac99cf5273 fp 0x00007fff01cba5f0 dart::FlowGraphChecker::VisitInstruction(dart::Instruction*)+0x293
  pc 0x000055ac99cf4ca5 fp 0x00007fff01cba660 dart::FlowGraphChecker::VisitInstructions(dart::BlockEntryInstr*)+0x395
  pc 0x000055ac99cf468c fp 0x00007fff01cba6e0 dart::FlowGraphChecker::VisitBlocks()+0x32c
  pc 0x000055ac99dcc139 fp 0x00007fff01cba790 dart::CompilerPass::Run(dart::CompilerPassState*) const+0xb9
  pc 0x000055ac99dcc78a fp 0x00007fff01cba7c0 dart::CompilerPass::RunPipeline(dart::CompilerPass::PipelineMode, dart::CompilerPassState*)+0x1ca
  pc 0x000055ac99ca19ad fp 0x00007fff01cbae80 dart::PrecompileParsedFunctionHelper::Compile(dart::CompilationPipeline*)+0x4ad
  pc 0x000055ac99ca2694 fp 0x00007fff01cbb070 /b/s/w/ir/pkg/vm/tool/../../../out/DebugX64C/gen_snapshot+0xc57694
  pc 0x000055ac99c9d57b fp 0x00007fff01cbb140 dart::Precompiler::CompileFunction(dart::Precompiler*, dart::Thread*, dart::Zone*, dart::Function const&)+0x19b
  pc 0x000055ac99c9bf7e fp 0x00007fff01cbb1a0 dart::Precompiler::ProcessFunction(dart::Function const&)+0x1ae
  pc 0x000055ac99c969d4 fp 0x00007fff01cbb1c0 dart::Precompiler::Iterate()+0x84
  pc 0x000055ac99c934af fp 0x00007fff01cbb480 dart::Precompiler::DoCompileAll()+0x143f
  pc 0x000055ac99c91fc5 fp 0x00007fff01cbb9d0 dart::Precompiler::CompileAll()+0x105
  pc 0x000055ac99e95c38 fp 0x00007fff01cbbb20 Dart_Precompile+0x2c8
  pc 0x000055ac9963466d fp 0x00007fff01cbbbe0 /b/s/w/ir/pkg/vm/tool/../../../out/DebugX64C/gen_snapshot+0x5e966d
  pc 0x000055ac996340b0 fp 0x00007fff01cbbcd0 dart::bin::main(int, char**)+0x5c0
-- End of DumpStackTrace
/b/s/w/ir/pkg/vm/tool/precompiler2: line 121: 20461 Aborted                 "$BIN_DIR"/gen_snapshot "$GEN_SNAPSHOT_OPTION" "$GEN_SNAPSHOT_FILENAME" "${OPTIONS[@]}" "$SNAPSHOT_FILE.dill"



-- BEGIN REPRODUCE  --

DART SDK REVISION: Dart SDK version: 2.13.0-edge.e70690e4159169a70810f2c4cad6011a4ec60fba (be) (Thu Apr 1 03:22:35 2021 +0000) on "linux_x64"


dart runtime/tools/dartfuzz/dartfuzz.dart --no-fp --no-ffi --flat --seed 1012084931 fuzz.dart

-- RUN 1 --

out/DebugSIMARM/dart --stacktrace_every=83 --no-use-vfp --optimization_level=3 --old_gen_heap_size=128 /b/s/w/itd7auOt/dart_fuzzAGCDRE/fuzz.dart

-- RUN 2 --

DART_CONFIGURATION='DebugX64C' DART_VM_FLAGS='--enable-asserts' pkg/vm/tool/precompiler2 --optimization_level=3 fuzz.dart snapshot
pkg/vm/tool/dart_precompiled_runtime2 snapshot

-- END REPRODUCE  --
@bkonyi bkonyi added area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. dartfuzz Found with Dart fuzzing (DartFuzz, libFuzzer, etc.) labels Apr 1, 2021
@bkonyi
Copy link
Contributor Author

bkonyi commented Apr 14, 2021

Another instance of this, looks like it's not necessarily related to the usage of compressed pointers:

Full logs.

Isolate (/b/s/w/itU4pedZ/dart_fuzzVPJDZW) NO-FP NO-FFI FLAT : JIT-SLOWPATH-ReleaseSIMARM64C - AOT-DET-DebugX64: !DIVERGENCE! 1.89:853496582 (0 vs 134)

fail2:
134

../../runtime/vm/compiler/backend/flow_graph_checker.cc: 429: error: expected: DefDominatesUse(def, instruction)
version=2.14.0-edge.17bac2f18068487158b758810894547dcd441dd2 (be) (Wed Apr 14 00:43:54 2021 +0000) on "linux_x64"
pid=25897, thread=25897, isolate_group=isolate(0x5651a8077000), isolate=(nil)((nil))
isolate_instructions=0, vm_instructions=0
  pc 0x00005651a6a2a9cc fp 0x00007ffd18f856b0 dart::Profiler::DumpStackTrace(void*)+0x7c
  pc 0x00005651a67711e4 fp 0x00007ffd18f85790 dart::Assert::Fail(char const*, ...)+0x84
  pc 0x00005651a6e115c6 fp 0x00007ffd18f857d0 dart::FlowGraphChecker::VisitDefUse(dart::Definition*, dart::Value*, dart::Value*, bool)+0x3f6
  pc 0x00005651a6e11164 fp 0x00007ffd18f85800 dart::FlowGraphChecker::VisitDefinition(dart::Definition*)+0x84
  pc 0x00005651a6e109f3 fp 0x00007ffd18f85880 dart::FlowGraphChecker::VisitInstruction(dart::Instruction*)+0x293
  pc 0x00005651a6e10425 fp 0x00007ffd18f858f0 dart::FlowGraphChecker::VisitInstructions(dart::BlockEntryInstr*)+0x395
  pc 0x00005651a6e0fe0c fp 0x00007ffd18f85970 dart::FlowGraphChecker::VisitBlocks()+0x32c
  pc 0x00005651a6ee7979 fp 0x00007ffd18f85a20 dart::CompilerPass::Run(dart::CompilerPassState*) const+0xb9
  pc 0x00005651a6ee7fca fp 0x00007ffd18f85a50 dart::CompilerPass::RunPipeline(dart::CompilerPass::PipelineMode, dart::CompilerPassState*)+0x1ca
  pc 0x00005651a6dbca7d fp 0x00007ffd18f86110 dart::PrecompileParsedFunctionHelper::Compile(dart::CompilationPipeline*)+0x4ad
  pc 0x00005651a6dbd764 fp 0x00007ffd18f86300 /b/s/w/ir/pkg/vm/tool/../../../out/DebugX64/gen_snapshot+0xc66764
  pc 0x00005651a6db845b fp 0x00007ffd18f863d0 dart::Precompiler::CompileFunction(dart::Precompiler*, dart::Thread*, dart::Zone*, dart::Function const&)+0x19b
  pc 0x00005651a6db6c30 fp 0x00007ffd18f86430 dart::Precompiler::ProcessFunction(dart::Function const&)+0x1b0
  pc 0x00005651a6db0fd4 fp 0x00007ffd18f86450 dart::Precompiler::Iterate()+0x84
  pc 0x00005651a6dad9bf fp 0x00007ffd18f86710 dart::Precompiler::DoCompileAll()+0x143f
  pc 0x00005651a6dac4d5 fp 0x00007ffd18f86c60 dart::Precompiler::CompileAll()+0x105
  pc 0x00005651a6fb2738 fp 0x00007ffd18f86db0 Dart_Precompile+0x2c8
  pc 0x00005651a6743d3d fp 0x00007ffd18f86e70 /b/s/w/ir/pkg/vm/tool/../../../out/DebugX64/gen_snapshot+0x5ecd3d
  pc 0x00005651a6743780 fp 0x00007ffd18f86f60 dart::bin::main(int, char**)+0x5c0
-- End of DumpStackTrace
/b/s/w/ir/pkg/vm/tool/precompiler2: line 121: 25897 Aborted                 "$BIN_DIR"/gen_snapshot "$GEN_SNAPSHOT_OPTION" "$GEN_SNAPSHOT_FILENAME" "${OPTIONS[@]}" "$SNAPSHOT_FILE.dill"



-- BEGIN REPRODUCE  --

DART SDK REVISION: Dart SDK version: 2.14.0-edge.17bac2f18068487158b758810894547dcd441dd2 (be) (Wed Apr 14 00:43:54 2021 +0000) on "linux_x64"


dart runtime/tools/dartfuzz/dartfuzz.dart --no-fp --no-ffi --flat --seed 853496582 fuzz.dart

-- RUN 1 --

out/ReleaseSIMARM64C/dart --use-slow-path --old_gen_heap_size=128 /b/s/w/itU4pedZ/dart_fuzzVPJDZW/fuzz.dart

-- RUN 2 --

DART_CONFIGURATION='DebugX64' DART_VM_FLAGS='--enable-asserts' pkg/vm/tool/precompiler2 --deterministic fuzz.dart snapshot
pkg/vm/tool/dart_precompiled_runtime2 snapshot

-- END REPRODUCE  --

@alexmarkov, maybe this should be assigned to you instead?

@rmacnak-google
Copy link
Contributor

This should be fixed after https://dart-review.googlesource.com/c/sdk/+/193827

dart-bot pushed a commit that referenced this issue Apr 21, 2021
TEST=ci
Bug: #45555
Change-Id: Ib396b0281d4e138cc252baacaac18e42057d7bb6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194502
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. dartfuzz Found with Dart fuzzing (DartFuzz, libFuzzer, etc.)
Projects
None yet
Development

No branches or pull requests

2 participants