[Bug target/26396] Incorrect opcode in __do_clear_bss if bss has more than 15 bytes

2006-02-21 Thread KenJackson at ieee dot org
--- Comment #8 from KenJackson at ieee dot org 2006-02-21 18:23 --- Thanks for the -v. I ran this: avr-ld -m avr4 -Tdata 0x800100 -o t.hex /usr/local/avr/lib/avr4/crtm88.o \ -L/usr/local/lib/gcc/avr/4.0.2/avr4 \ -L/usr/local/lib/gcc/avr/4.0.2 \ -L/usr

[Bug target/26396] Incorrect opcode in __do_clear_bss if bss has more than 15 bytes

2006-02-21 Thread KenJackson at ieee dot org
--- Comment #6 from KenJackson at ieee dot org 2006-02-21 16:23 --- To further narrow this, I should replace the linking line from my original post: avr-gcc -mmcu=atmega88 -Wl,-mavr4 -Wl,--oformat=ihex,-s t.o -o t.hex with the equivalent call to avr-ld. But it's not clear

[Bug target/26396] Incorrect opcode in __do_clear_bss if bss has more than 15 bytes

2006-02-21 Thread KenJackson at ieee dot org
--- Comment #5 from KenJackson at ieee dot org 2006-02-21 16:17 --- I found libgcc.S and even referenced it in the original post, but I can't reproduce the error with avr-as from binutils. For example: Source file, u.s: .section .init5,"ax",@progbits

[Bug target/26396] Incorrect opcode in __do_clear_bss if bss has more than 15 bytes

2006-02-21 Thread KenJackson at ieee dot org
--- Comment #1 from KenJackson at ieee dot org 2006-02-21 16:00 --- I have confirmed that I can work around the error by adding these two lines: void skip_clear_bss(void) __attribute__((naked,section(".init3"))); void skip_clear_bss(void) { asm volatile ("rjmp mai

[Bug c/26396] New: Incorrect opcode in __do_clear_bss if bss has more than 15 bytes

2006-02-21 Thread KenJackson at ieee dot org
ect opcode in __do_clear_bss if bss has more than 15 bytes Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: major Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org Repo