AVR Toolchain Bugs


AVR GNU Binutils Bugs

Bug # Status Description Patch Notes
#1038 ASSIGNED resolution of weak symbol not left for the linker if value is already known No The status is ASSIGNED, but there is no assignee.
#2378 NEW Incorrect opcode in __do_clear_bss if bss has more than 15 bytes No Not a bug, but documentation needs to be fixed. See comments.
#2626 FIXED Problems with LPM on attiny26 Yes Fixed in HEAD (future 2.19).
#5523 NEW Confusing warning: "expression dangerous with linker stubs" No  
#6019 NEW [avr] avr-ld --relax requires --gc-sections No  
#6449 NEW objdump -S and DOS-style line-endings Yes  

AVR GCC Bugs

Bug # Status Description Patch Notes
#1078 FIXED Problems with attributes documentation Yes Fixed in HEAD (future 4.3)
#3507 ASSIGNED appalling optimisation with sub/cmp on multiple targets No missed-optimization
#10768 FIXED ICEs on compilation of ada support library for avr Yes Fixed in HEAD (future 4.4).
#11074 NEW libstdc++ fails to build due to gettext issue ? C++. Check if valid for AVR.
#11180 NEW [avr-gcc] Optimization decrease performance of struct assignment. No missed-optimization
#11259 NEW [avr] gcc Double 'andi' missed optimization Yes missed-optimization
#12017 FIXED ICE: in spill_failure, at reload1.c:1862 with builtin_apply/builtin_return Yes Patch in bug report to build Objective C compiler. Fixed in 4.2.1 (at least).
#14118 SUSPENDED h8300-elf, avr-elf, m68k-elf ports cannot build libmudflap No  
#16563 NEW The compiler doesnt the necessary push/restore of r18/r19 No Needs checking if fixed on 4.1.1, 4.2 branch, and HEAD.
#17993 FIXED Error in dwarf2 debug output of bitfield members No Fixed in >= 4.3.0.
#17994 UNCONFIRMED avr-gcc does not output a dwarf2 .debug_frame section No  
#18065 NEW usual arithmetic conversion not applying correctly No missed-optimization
#18145 NEW Do not emit __do_copy_data or __do_clear_bss if .data or .bss is empty. No missed-optimization
#18251 FIXED unable to find a register to spill in class `POINTER_REGS' No Fixed in >= 4.3.0.
#18553 FIXED Annoying warning with -ffunction-sections -g Yes Fixed in 4.1.2, 4.2 branch, and 4.3 branch.
#18989 See Note A few potentially ominous, and several likely harmless warnings during 4.0 build Yes One warning Fixed in 4.1.3, 4.2 branch, and >= 4.3.0. Another warning still needs to be fixed.
#19087 FIXED Overflowed address in dwarf debug line information Yes Fixed in 4.1.3, 4.2 branch, and >= 4.3.
#19154 NEW miss-optimization of (x & pow2C) avr conditionals returning bool equivalent values No missed-optimization
#19636 NEW [4.0/4.1/4.2 regression] Can't compile large switch statement No 4.0/4.1/4.2 REGRESSION. ice-on-valid-code. Fixed in 4.3-20070525.
#19676 NEW Loop optimizer fails to reverse simple loop No missed-optimization
#19684 FIXED avr wrong size in asm comment (peephole) No Fixed in >= 4.3.0.
#19815 UNCONFIRMED Documentation change - GCC Internals MODES_TIEABLE_P No documentation change
#19959 NEW [4.0/4.1/4.2 Regression] Can't compile gnattools for the cross targets No Ada
#20222 FIXED Double load of volatile operand for abs builtin No Fixed in >= 4.3.0.
#20243 UNCONFIRMED static initialization .data redundantly copied to ram prior to use. No  
#20296 NEW Speeding up small interrupts on avr No missed-optimization
#20355 UNCONFIRMED MEM_READONLY_P & MEM_VOLATILE_P properties are lost on BLKmode rtl operands. No  
#20822 NEW makeinfo cannot process gnat_ugn_unw.texi Yes Ada. Need to check if patch has been applied and if bug is fixed.
#20937 UNCONFIRMED BLK ptr's losing original ptr's static-constant readonly attribute. No  
#21018 UNCONFIRMED Initializing string literal data improperly marked frame-relative?, should be readonly static const. No  
#21078 UNCONFIRMED Testsuite reports excecution failure for gcc.c-torture/execute/20010122.c for some optimization levels No wrong-code
#21080 UNCONFIRMED Excecution test failure for avr for pr17377 test case. No wrong-code
#21107 FIXED [4.0/4.1/4.2 regression] internal compiler error: in expand_one_stack_var_at, at cfgexpand.c:476 No Fixed in 4.1.0
#23479 FIXED Implement binary constants with a "0b" prefix Yes Fixed in >= 4.3.0
#23726 NEW Missed optimizations for divmod No missed-optimization
#24894 NEW ICE building newlib/libc/misc/init.c No RTEMS/newlib. ice-on-valid-code
#25035 See Note [4.1/4.2 regression] libssp causes a failure with cross compilers with unified trees No Fails for the AVR target! Need to submit new bug report!
#25448 FIXED [4.0/4.1/4.2 Regression] Unfounded warnings from the AVR backend Yes Fixed in 4.1.3, 4.2 branch, and >= 4.3.0.
#25722 NEW Stackpointer is not restored correct at end of function No Needs testing for 4.x
#25742 NEW Internal compiler error in gen_rtx_SUBREG No ice-on-valid-code
#26118 UNCONFIRMED avr-gcc (GCC) 3.4.5 Bug: copying structure through pointer will destroy the pointer No Needs testing if fixed in later versions. Bad patch in source tree is identified.
#26504 FIXED [4.1/4.2 Regression] compute_frame_pointer_to_cfa_displacement error for avr target with --with-dwarf2 Yes Fixed in 4.1.2 and 4.2 branch.
#26882 NEW [AVR][C++] ICE when using template function with memory attributes No C++. ice-on-valid-code.
#26883 NEW ICE when assigning memory attribute to class with simple constructor No C++. ice-on-valid-code.
#27192 NEW call through function pointer goes to wrong address No wrong-code. Reported against 4.1.
#27386 NEW AVR: wrong code generated when passing three uint64_t arguments to function No wrong-code. Reported against >= 3.4.6.
#27593 FIXED [4.1/4.2 Regression][avr] bad code generation with -funroll-loops No Fixed in >= 4.3.0.
#27663 NEW missed-optimization transforming a byte array to unsigned long No missed-optimization
#28718 UNCONFIRMED Call to -lgcc added prior to user libraries No C++
#28902 FIXED Fix for "alignment of XXX is greater than maximum object alignment" on AVR Yes Fixed in 4.2.1, and >= 4.3.0.
#29141 UNCONFIRMED static constructors beyond 64k fail No C++
#29449 FIXED OBJECT_FORMAT_ELF not defined for the AVR target No Fixed in 4.1.2, 4.2 branch, and >= 4.3.0.
Depends on GCC bug #18553.
#29524 NEW [4.2/4.3 Regression] Too much RAM used: __clz_tab[] linked No 4.2/4.3 REGRESSION
#29560 UNCONFIRMED Poor optimization for character shifts on Atmel AVR No missed-optimization
#29932 FIXED avr-gcc wrongly optimizes bit sets/resets for IO register 0x20 Yes Works for 4.1.x. Fixed in 4.2 branch >= 4.3.0.
#30243 NEW [4.1/4.2/4.3 Regression][avr] signbit() causes an internal compiler error Yes 4.1/4.2/4.3 REGRESSION. ICE
#30289 FIXED avr-gcc: builtin memset(): wrong code No Fixed in 4.1.3, 4.2 branch, and >= 4.3.0.
#30483 FIXED Internal compiler error with inline volatile assembly on AVR No Fixed in 4.1.3, 4.2 branch, and >= 4.3.0.
#30841 FIXED [4.3 regression] Missed optimizations for sbi/cbi instructions No Fixed in >= 4.3.0.
#30908 NEW tree cost for types which are > WORD_SIZE No About inline
#31137 FIXED missing "break" in switch for MULT in avr_rtx_costs Yes Fixed in 4.1.3, 4.2 branch, and >= 4.3.0.
#31331 FIXED ICE on invalid function attribute syntax for main() Yes Fixed in 4.1.3, 4.2.1 and >= 4.3.0.
#31528 UNCONFIRMED Inlining with -Os increases code size No Related to bug #30908.
#31644 NEW [avr] can't find a register in class 'BASE_POINTER_REGS' while reloading 'asm' No  
#31786 NEW [4.1/4.2/4.3 Regression][avr] error: unable to find a register to spill in class 'BASE_POINTER_REGS' No 4.1/4.2/4.3 REGRESSION. ice-on-valid-code.
#32335 FIXED libgcc build failure, ICE in cselib_record_set, at cselib.c:1508 No Fixed in >= 4.3.0.
#32871 NEW Bad optimisation - Gcc is pushing too many registers Yes  
#32895 UNCONFIRMED Clobber list isn't working No  
#32901 ASSIGNED [4.1 regression] bitfield constants with multiple bitfields take up space in .data No Affects more than just the AVR target.
#33028 FIXED Missed optimizations in peephole2 pass Yes Fixed in >= 4.3.0.
#33049 NEW [avr] bit extraction non optimal, inversing logic solves problem No missed-optimization
#33050 NEW [avr] unnessary register save No missed-optimization
#33315 NEW If condition not getting eliminated No missed-optimization
#33200 NEW install fails when trying to install fix-header since fix-header wasn't built No Building canadian cross on Mac OSX.
#33782 UNCONFIRMED FAIL: gcc.c-torture/compile/limits-stringlit.c (test for excess errors) No Regression test failure.
#33970 NEW Missed optimization using unsigned char loop variable No missed-optimization.
#34210 FIXED ffs builtin calls undefined __ffshi2 No Fixed in HEAD (future 4.4).
#34299 NEW [avr] ICE on function attribute syntax for main() No  
#34412 FIXED ICE in extract_insn, at recog.c:1990 Yes Fixed in >= 4.3.0.
#34734 UNCONFIRMED attribute((progmem)) not handled properly in C++ for AVRs No  
#34736 UNCONFIRMED [avr] optimiser does not keep interrupt disabled blocks small No  
#34737 NEW Scheduling of post-modified function arguments is not good No missed-optimization. Affects more than AVR target.
#34789 UNCONFIRMED [avr] sometimes the compiler keeps addresses in registers unnecessarily No missed-optimization.
#34790 UNCONFIRMED [avr] no sibling call optimisation No missed-optimization.
#34791 UNCONFIRMED [avr] optimisation of 8-bit logic sometimes fails No missed-optimization.
#34792 UNCONFIRMED [avr] c++ worse than c compiler at 8-bit optimisations No missed-optimization.
#34879 UNCONFIRMED __builtin_setjmp / __builtin_longjmp fails stack frame address with O2, O3 and Os No testsuite.
#34880 UNCONFIRMED gcc.c-torture/execute/float-floor.c fails for targets with no 64-bit double type Yes testsuite.
#34888 UNCONFIRMED Stack patterns for AVR not optimal No missed-optimization.
#34889 UNCONFIRMED gcc.c-torture/execute/builtins/pr23484-chk.c fails on 16 bit integer platforms No testsuite.
#34894 UNCONFIRMED Some compile tests require trampolines even when the target sets no_trampolines No testsuite.
#34916 NEW [4.3 Regression] gcc.c-torture/execute/pr27364.c fails with -O1, -O2 and -Os Yes testsuite. wrong-code. regression.
#34932 UNCONFIRMED [avr] ICE in reload No  
#35005 UNCONFIRMED New testcase execute/20071211-1.c assumes 32 bit integers Yes testsuite.
#35013 NEW Incomplete check in RTL for "pm()" annotation Yes  
#35073 NEW illegal opcode movw for mcu avr3 No AVR RTEMS
#35507 NEW [avr] 4.3.0: size of small funcion increases from 2 to 29 words No missed-optimization
#35509 NEW [4.3/4.4 Regression] builtin isinf() mismatch to compile-time substitution No wrong-code
#35519 NEW COMBINE repeating same matches and can SEG fault Yes  
#35542 UNCONFIRMED fwprop only propagates one operand No Not AVR specific.
#35634 NEW [4.1/4.2/4.3/4.4 Regression] operand of pre-/postin-/decrement not promoted No 4.1/4.2/4.3/4.4 REGRESSION. wrong-code. C front-end.
#35860 NEW [4.3 Regression] [avr] code bloat caused by -fsplit-wide-types No 4.3 REGRESSION. missed-optimization

Host Specific Bugs Affecting Toolchain Distros

Bug # Status Description Patch Notes
#17621 FIXED Add option to have GCC not search $(prefix) Yes Fixed in HEAD (future 4.3).
#22133 FIXED In MinGW trailing forward slash not allowed in include path Yes Fixed in HEAD (future 4.3).
#30972 UNCONFIRMED Call to _access has invalid parameter when linked with msvcrt Yes Building the toolchain on Windows Vista

avr-libc Bugs

List here.

AVRDUDE Bugs

List here.

AVaRICE Bugs

List here.

AVR GDB Bugs

Bug # Status Description Patch Notes
#1948 OPEN remote_xfer_partial(): packet size probe fails when LENGTH and OFFSET are zero [target: avr] Yes GDB 6.3. This looks like it's fixed in 6.6, but needs retesting.
#2124 See Note gdb crashes when remote simulavrxx target branches to interrupt handler No Confirmed: Cannot reproduce with later tools. See comments in bug.

Last updated: $Date: 2008/04/24 15:51:08 $