avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-gcc-list] push r1, pop r0


From: Matthijs Kooijman
Subject: Re: [avr-gcc-list] push r1, pop r0
Date: Wed, 8 Nov 2017 14:14:12 +0100
User-agent: NeoMutt/20170113 (1.7.2)

Hi Szikra,

> So it is 2017, but the compiler still cannot optimize away bitwise or
> zero... :(
I think this is https://gcc.gnu.org/bugzilla/show_bug.cgi?id=41076
(which should be fixed in gcc 7 according to the comments). The fix
contains a peephole optimization that I think catches exactly this case:

         6831           (define_peephole2
         6832              [(set (match_operand:QI 0 "register_operand")
         6833                    (const_int 0))
         6834               (set (match_dup 0)
         6835                    (ior:QI (match_dup 0)
         6836                            (match_operand:QI 1 
"register_operand")))]
         6837              ""
         6838              [(set (match_dup 0)
         6839                    (match_dup 1))])

https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/avr/avr.md?r1=242907&r2=242906&pathrev=242907

Gr.

Matthijs

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]