You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In my example I return a xtensor<float,2> but the function returns xtensor<uint8_t,2>. In some cases my program crashed badly and in some it seemed to work fine. Unfortunately I did not manage to write a small test which actually crashes but if I check it with valgrind I get an error which starts with Invalid write of size 8. I attached a log below. Interestingly the error only exists if I implicitly cast from:
We experienced this with the pre-latest xsimd and pre-latest xtl, so please take it with a grain of salt. Today I'll update to latest xsimd and latest xtl, and then we can see if its reproducible.
I came across the same problem.
I think it is because _mm_loadl_epi64/_mm_storel_epi64 is used in many places where 8x4/16x2=32 bits need to be read/write, and it simply goes past the end.
I recently run into a memory corruption when I returned an xtensor of a different type. Here is a short example on to get what I did:
In my example I return a
xtensor<float,2>
but the function returnsxtensor<uint8_t,2>
. In some cases my program crashed badly and in some it seemed to work fine. Unfortunately I did not manage to write a small test which actually crashes but if I check it with valgrind I get an error which starts withInvalid write of size 8
. I attached a log below. Interestingly the error only exists if I implicitly cast from:valgrind error
See the pull request for additional the full tests.
I compiled it with xsimd instructions, gcc 7.4.0 on Ubuntu 18.04.
The text was updated successfully, but these errors were encountered: