https://bugs.kde.org/show_bug.cgi?id=388787
Paul Floyd changed:
What|Removed |Added
Resolution|--- |FIXED
Status|REPORTED
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #12 from Mark Wielaard ---
BTW. I think it is more important to have these wrappers in now then to make
sure they are perfect. So if you think they are good enough now then please
check them in. But then please open bug reports for tracking
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #11 from Mark Wielaard ---
I hadn't realized we were so short on bits. But I agree that reducing the szB
is questionable, at least on 32 bit. On the other hand we might be keeping a
stack of ExeContext pointers per allocation already. So
https://bugs.kde.org/show_bug.cgi?id=388787
Paul Floyd changed:
What|Removed |Added
Attachment #131600|0 |1
is obsolete|
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #9 from Paul Floyd ---
OK, I think that this is about done.
The one feature that is not present is detection of mismatches between aligned
and non-aligned new/delete. This is mostly a hypothetical problem, and will
only arise with users
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #8 from Paul Floyd ---
I'll fix the indentation, ENOMEM and feature detection. The patch also has some
merge conflicts now.
For the aligned delete operators, libcxx has
_LIBCPP_WEAK
void
operator delete(void* ptr, std::align_val_t)
https://bugs.kde.org/show_bug.cgi?id=388787
Mark Wielaard changed:
What|Removed |Added
CC||m...@klomp.org
--- Comment #7 from Mark
https://bugs.kde.org/show_bug.cgi?id=388787
Paul Floyd changed:
What|Removed |Added
Attachment #113074|0 |1
is obsolete|
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #5 from Paul Floyd ---
Created attachment 113074
--> https://bugs.kde.org/attachment.cgi?id=113074=edit
Patch adding aligned new delete support
A fairly big change as I added to the existing alloc/new functions and the
ALLOC macros.
--
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #4 from Paul Floyd ---
This is starting to look good. I now get
--17711-- _ZnwmSt11align_val_t(size 64, al 64) = 0x5AB4CC0
--17711-- _ZdlPvSt11align_val_t(0x5AB4CC0)
--17711-- _ZnamSt11align_val_t(size 320, al 64) = 0x5AB4DC0
--17711--
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #3 from Paul Floyd ---
On Solaris the signatures are
32bit demangled
U operator delete[](void*, std::align_val_t)
U operator delete(void*, unsigned int, std::align_val_t)
U operator new[](unsigned int,
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #2 from Paul Floyd ---
Testcase to reproduce this behaviour:
# Makefile
.PHONY: clean
# GCC and Valgrind built from SVN/git head
CXX=${HOME}/tools/gcc/bin/g++
VG=${HOME}/tools/valgrind/bin/valgrind
test32: test.cpp
${CXX} -o $@ $<
https://bugs.kde.org/show_bug.cgi?id=388787
--- Comment #1 from Paul Floyd ---
The LLVM libcxx implementation of aligned new does the following:
void *
operator new(std::size_t size, std::align_val_t alignment) _THROW_BAD_ALLOC
{
set size to at least 1
set align to at
13 matches
Mail list logo