Closed sangeeta0201 closed 6 years ago
Hmm, looks like our type checker is seeing an inconsistency. Could be because of the use of -ffast-math? I'll try to reproduce and see if I can find the problem.
I have tried same benchmark with O0, O1,O2,O3. It won't crash for O2 but crashes for all other cases.
On Thu, Jun 28, 2018, 2:15 PM Alex Sanchez-Stern notifications@github.com wrote:
Hmm, looks like our type checker is seeing an inconsistency. Could be because of the use of -ffast-math? I'll try to reproduce and see if I can find the problem.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/uwplse/herbgrind/issues/27#issuecomment-401126209, or mute the thread https://github.com/notifications/unsubscribe-auth/AgT1SMtAz46XliRVJcffI_VDOtd88vngks5uBR1dgaJpZM4U469B .
As far as I can tell, at that optimization level gcc
is generating calls to __log_finite
, which Herbgrind is failing to intercept for some reason. This causes the instrumentation to dive into libm
internals, and see an arithmetic bit shift being run on a floating point value. This triggers an assert in the type-checker. I'll need to fix the interception mechanism to properly intercept __log_finite
so that we never descend that far into libm
. If you want a temporary fix, you can go into src/instrument/instrument-op.c
and uncomment lines 314-316. This will treat bit shifts as "special" operations that are allowed to take floats as input, so that Herbgrind won't complain when you descend into libm
. Unfortunately, this will cause the real shadow values to be lost in the libm
call (probably), so correctness will be compromised for those values.
This has been fixed in PR #30
Hi,
Most of the time herbgrind crashes with this error
I got this error while running spec2006 fp benchmark sphinx. This is the configuration I have used to build this benchmark
Please let me know if you have fix for this error.