Message207564
Digging more into it, I guess I know why we couldn't come up with a minimal reproducer for this problem. If I compile with -O2 instead of -O1, I get the following warning from gcc:
Python/pyhash.c:413: warning: dereferencing pointer 'pt.32' does break strict-aliasing rules
which points to the following line:
case 4: *((PY_UINT32_T*)&pt[0]) = *((PY_UINT32_T*)&m[0]); break;
If I re-compile with -O2, but -fno-strict-aliasing, then the result doesn't fail.
Not sure if siphash code can be changed to not require aliasing, though. |
|
Date |
User |
Action |
Args |
2014-01-07 17:07:37 | zaytsev | set | recipients:
+ zaytsev, christian.heimes, dmalcolm, python-dev, David.Edelsohn |
2014-01-07 17:07:37 | zaytsev | set | messageid: <1389114457.95.0.727976599468.issue20162@psf.upfronthosting.co.za> |
2014-01-07 17:07:37 | zaytsev | link | issue20162 messages |
2014-01-07 17:07:37 | zaytsev | create | |
|