diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2017-10-02 11:31:03 +0000 |
---|---|---|
committer | Georg-Johann Lay <gjl@gcc.gnu.org> | 2017-10-02 11:31:03 +0000 |
commit | 6146ee73730cd2a4406918a0d5f98f0f71331f01 (patch) | |
tree | 128295607805f4496811d06f4d24024f8ebbc01d | |
parent | 96e2d1d1ae69d409e3052d45f79f471c2caf6c9a (diff) | |
download | gcc-6146ee73730cd2a4406918a0d5f98f0f71331f01.zip gcc-6146ee73730cd2a4406918a0d5f98f0f71331f01.tar.gz gcc-6146ee73730cd2a4406918a0d5f98f0f71331f01.tar.bz2 |
re PR target/41076 ([avr] pessimal code for logical OR of 8-bit fields)
PR target/41076
* confg/avr/avr.md (*iorhi3.ashift8-ext.zerox): Add "r,r,0"
alternative.
From-SVN: r253343
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/avr/avr.md | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a2e33e4..8abda0a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-10-02 Georg-Johann Lay <avr@gjlay.de> + + PR target/41076 + * confg/avr/avr.md (*iorhi3.ashift8-ext.zerox): Add "r,r,0" + alternative. + 2017-10-02 Richard Biener <rguenther@suse.de> * graphite-isl-ast-to-gimple.c (set_codegen_error): With diff --git a/gcc/config/avr/avr.md b/gcc/config/avr/avr.md index fe5ca30..436f036 100644 --- a/gcc/config/avr/avr.md +++ b/gcc/config/avr/avr.md @@ -6804,11 +6804,11 @@ (define_insn_and_split "*iorhi3.ashift8-ext.zerox" - [(set (match_operand:HI 0 "register_operand" "=r") + [(set (match_operand:HI 0 "register_operand" "=r,r") (ior:HI (ashift:HI (any_extend:HI - (match_operand:QI 1 "register_operand" "r")) + (match_operand:QI 1 "register_operand" "r,r")) (const_int 8)) - (zero_extend:HI (match_operand:QI 2 "register_operand" "r"))))] + (zero_extend:HI (match_operand:QI 2 "register_operand" "0,r"))))] "optimize" { gcc_unreachable(); } "&& reload_completed" |