| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-By: Bradley T. Hughes
|
|
|
|
| |
Reviewed-by: Peter Hartmann
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
|
|
|
| |
This is future compatibility: we must rely on them being 0 in older
versions of Qt.
Reviewed-by: Bradley T. Hughes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QContiguousCache is a new type, so there are no binary compatibility
issues.
QHash and QMap didn't have any public qMalloc / qFree, so the entire
logic is contained in .cpp code. However, since old code will not
inform us of the alignment requirements, we need to add a bit to the
structure to indicate whether strict alignment is in use or not.
QList doesn't require any changes. For small, movable types, they're
all stored in the pointer array itself, so they're aligned. For larger
types, we use new(), so types with stricter requirements should define
their own operator new().
QLinkedList cannot be fixed. It uses new() on the QLinkedListNode,
which contains a T type. Sorry.
QVector did have public qMalloc / qFree. I've moved the calls to the
inner function and made it keep the old calls if the alignment
requirement is below a certain threshold. The idea is that, if it's
above, no one was using QVector anyway.
Reviewed-by: Bradley T. Hughes
|
|
|
|
|
|
|
|
| |
The private inheritance ensures that we don't try to access the types
under the wrong pointer. If we did that, we'd cause strict aliasing
violations.
Reviewed-by: Olivier Goffart
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'm not sure this is the proper fix, though. xlC 7 complains with:
"/usr/vacpp/include/new", line 97.10: 1540-1298 (I) "void *operator
new(size_t, void *) throw()" needs to be declared in the containing
scope to be found by name lookup.
Also add some calculations to the padding in the data structure.
Reviewed-by: Trust Me
|
| |
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
| |
Use the same pattern for protecting the dump function as
qmap.h and qhash.h employ.
|
|
|
|
|
|
|
| |
Some documentation fixes.
More clear handling of what is and isn't a valid indexes.
Added functions for the 'really long lived circular buffer use case'
Improved unit tests.
|
|
|
|
|
| |
Update files to have consistent licencesing with the rest
of Qt.
|
|
|