The linker does not adjust the addresses included in initialized function tables (.data or .rodata) when these are subject to changes due to relaxation. A patch has been committed by me on the mailing list. If possible this patch should be applied prior to the final "17" release. I am submitting this bug report as kind of reminder so that one could get it into the 2.17 release. Bjoern.
The mailing list message mentioned (that contains the patch) is: http://sourceware.org/ml/binutils/2006-04/msg00306.html
Correct me if I am wrong, but this patch appears to be already applied in http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elf32-avr.c.diff?r1=1.24&r2=1.25&cvsroot=src&f=h and http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-avr.h.diff?r1=1.11&r2=1.12&cvsroot=src&f=h JW
Fixed with 731608473ad5