ASSERT callback.c:1478 get_app_pc_from_intercept_pc not finding pc on burst_static test
This happened 2x in a row with PR 4485:
https://ci.appveyor.com/project/DynamoRIO/dynamorio/builds/35693375 https://ci.appveyor.com/project/DynamoRIO/dynamorio/builds/35693164
[00:22:23] 219:
[00:22:23] 218/254 Test #219: code_api|tool.drcacheoff.burst_static ........................***Failed 0.99 sec
[00:22:23] Running cmd |C:/projects/dynamorio/build/build_debug-internal-64/clients/bin64/tool.drcacheoff.burst_static.exe|
[00:22:23] CMake Error at C:/projects/dynamorio/suite/tests/runmulti.cmake:106 (message):
[00:22:23] *** cmd failed (-1): pre-DR init
[00:22:23]
[00:22:23] pre-DR start
[00:22:23]
[00:22:23] <Application
[00:22:23] C:\projects\dynamorio\build\build_debug-internal-64\clients\bin64\tool.drcacheoff.burst_static.exe
[00:22:23] (4856). Internal Error: DynamoRIO debug check failure:
[00:22:23] ..\..\core\win32\callback.c:1478 false
[00:22:23]
[00:22:23] (Error occurred @72 frags)
I can't reproduce it on win10-2004:
% for ((i=0; i<50; i++)); do echo $i; rm -rf drmemt*.dir; clients/bin64/tool.drcacheoff.burst_static.exe; done > OUT 2>&1
% grep Error OUT
% grep -c 'all done' OUT
150
It then went away with the s/eax/ebx/ fix: but it's not clear that's really related or its non-deterministic in some other way, or whether it's completely unrelated to that PR and is some latent underlying issue. Without a reproducer we'll file it and see if it happens again.