[Interest] ASSERT / Debug Crash in Qt 5.3.2. WTF, Windows x64, LLIntData.cpp at bitwise_cast<uint32_t*>(&testVector)[sizeof(void*)/sizeof(uint32_t) + 1] == 42)
Andre Barth
Andre.Barth at autodesk.com
Fri Oct 10 08:44:22 CEST 2014
Hi all,
I built a JIT-free version of Qt 5.3.2 (Win64) and now run into this assertion in
..\Qt\qtwebkit\Source\JavaScriptCore\llint\LLIntData.cpp
Vector<int> testVector;
testVector.resize(42);
ASSERT(bitwise_cast<uint32_t*>(&testVector)[sizeof(void*)/sizeof(uint32_t)+ 1] == 42);
Here is a bug report / changeset I've found wrt this:
http://trac.webkit.org/changeset/148896/trunk/Source/JavaScriptCore/llint/LLIntData.cpp
and
https://bugs.webkit.org/show_bug.cgi?id=97268
The assert is supposed to check, that the Vector's m_size variable is at the correct address, I guess?!
If not, anyone can shed a light on this and explain the purpose of it and where I might have incorrect compilation settings applied?
Am I missing somewhere an alignment pragma or something to make this
(sizeof(void*)/sizeof(uint32_t))
always calculate the right address - regardless of whether its x86 or x64?
Thanks in advance
Andre
More information about the Interest
mailing list