https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71976
Bug ID: 71976 Summary: [avr] insn-combiner deletes a live 64-bit shift Product: gcc Version: 6.1.1 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: gjl at gcc dot gnu.org Target Milestone: --- Target: avr Created attachment 38953 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38953&action=edit bug-combin.c: C test case In the following test case, combine.c removes an 64-bit shift and generates wrong code. == Compile == $ avr-gcc -mmcu=atmega8 bug-combin.c -S -dp -Os -fdump-rtl-combine-details -fdump-rtl-ud_dce == configure == Target: avr Configured with: ../../gcc.gnu.org/gcc-6-branch/configure --target=avr --prefix=/local/gnu/install/gcc-6-avr-mingw32 --host=i386-mingw32 --build=x86_64-linux-gnu --enable-languages=c,c++ --disable-nls --disable-shared --enable-lto --with-dwarf2 --with-gnu-ld --with-gnu-as Thread model: single gcc version 6.1.1 20160627 (GCC)