|
From: Julian S. <js...@ac...> - 2011-04-20 10:13:13
|
Greetings.
It's time to think a bit about a 3.7.0 release. The following are
proposals, for contemplation/discussion.
I'd propose a release at end July or some time in August. That would
put it approximately 10 months after 3.6.0. In the past the gap
between releases has become IMO too long, so I'd like to ship 3.7.0
sooner rather than leave it late in the year.
Pretty definite to go in is:
* support for Fedora 15, Ubuntu 11.04, gcc 4.6, LLVM 2.9 [bug 242137,
unresolved, apparently line numbers don't work], Xcode 4.0.x [bug
267997, complete, but needs more testing]. General help in
testing/verifying these is required -- there's no way I can properly
test all this stuff myself.
* s390x port [bug 243404, completed, misc tidyup patches in progress]
* initial support for Power7 instructions [bug 267630, in progress]
* merge the HGDEV2 branch -- scalability and feature improvements for
Helgrind [no bug number]
* gdbserver integration [bug 214909, in progress]
* remove the AIX port. It has not been buildable since 3.4.1 and is
badly bit-rotted
* reduce the scope of exp-ptrcheck by removing the heap checks,
leaving just the stack and global array checking. The heap checking
was expensive, sometimes had a high false positive level, and
Memcheck does a better job 99%+ of the time. But the stack and
global checks are marginally useful. As a result, rename it to
"exp-sgcheck" ("sg" == stack and global)
More speculative:
* Alon Zakai's massdiff (Massif heap-snapshot differencing) patch [bug
269067]. I'd like this to be included, in some form -- the ability
to difference heap snapshots is very useful.
* Support for Android? [bug 266035] There appear to be increasing
requests for this. I have no idea of the state of the patchset on
266035. If it works well and is low-ish risk then maybe it should
be integrated for 3.7.0. If you care about Android support, please
try this out and give feedback.
* AVX (256-bit vector instructions) support for x86_64. AVX is a
massive bundle of stuff, and getting this completed in the next
three months strikes me as close to impossible. It might be
possible to get the basic infrastructure in place, though (VEX
prefix decoding, basic 256-bit vector stuff in IR and in the x86_64
backend, etc).
It also seems fairly low priority to me. AFAICS we have no bug
reports about non-support of AVX so far. Even the uptake of SSE4.x
was surprisingly slow.
* change of backtrace format? For years we've had code addresses
in backtraces. They use up valuable screen space, but 99% of the
time are completely useless. Should we omit them by default,
as does the TSan tool?
eg
Invalid write of size 1
at 0x400544: ddd (errs1.c:7)
by 0x400550: ccc (errs1.c:8)
by 0x40055B: bbb (errs1.c:9)
by 0x400566: aaa (errs1.c:10)
by 0x4005AE: main (errs1.c:17)
vs
Invalid write of size 1
#0 ddd (errs1.c:7)
#1 ccc (errs1.c:8)
#2 bbb (errs1.c:9)
#3 aaa (errs1.c:10)
#4 main (errs1.c:17)
Other stuff that I forgot / missed?
|