diff options
author | olegendo <olegendo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-08-18 12:25:47 +0000 |
---|---|---|
committer | olegendo <olegendo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-08-18 12:25:47 +0000 |
commit | 0e2b742287fbbc69be36e18dc8eeff5995fccc99 (patch) | |
tree | 5a6ecfdf6454fb207e0b3aaf5c71d52652a7f552 | |
parent | 72b3c3fce3f37fd5761d6b88107c78e6b39c629f (diff) |
gcc/
Backport from mainline
2016-06-17 DJ Delorie <dj@redhat.com>
PR target/71338
* config/rl78/rl78-expand.c (umulqihi3): Enable for G10.
* config/rl78/rl78-virtual.c (umulhi3_shift_virt): Likewise.
(umulqihi3_virt): Likewise.
* config/rl78/rl78-real.c (umulhi3_shift_real): Likewise.
(umulqihi3_real): Likewise.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@239569 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/config/rl78/rl78-expand.md | 2 | ||||
-rw-r--r-- | gcc/config/rl78/rl78-real.md | 4 | ||||
-rw-r--r-- | gcc/config/rl78/rl78-virt.md | 4 |
4 files changed, 17 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 09122264129..43b4f6a7cb0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2016-08-18 Oleg Endo <olegendo@gcc.gnu.org> + + Backport from mainline + 2016-06-17 DJ Delorie <dj@redhat.com> + + PR target/71338 + * config/rl78/rl78-expand.c (umulqihi3): Enable for G10. + * config/rl78/rl78-virtual.c (umulhi3_shift_virt): Likewise. + (umulqihi3_virt): Likewise. + * config/rl78/rl78-real.c (umulhi3_shift_real): Likewise. + (umulqihi3_real): Likewise. + 2016-08-16 Eric Botcazou <ebotcazou@adacore.com> * doc/install.texi (*-*-solaris2*): Adjust latest change. diff --git a/gcc/config/rl78/rl78-expand.md b/gcc/config/rl78/rl78-expand.md index 331eec1e902..4fd195865a4 100644 --- a/gcc/config/rl78/rl78-expand.md +++ b/gcc/config/rl78/rl78-expand.md @@ -159,7 +159,7 @@ [(set (match_operand:HI 0 "register_operand") (mult:HI (zero_extend:HI (match_operand:QI 1 "register_operand")) (zero_extend:HI (match_operand:QI 2 "register_operand"))))] - "!TARGET_G10" + "" "" ) diff --git a/gcc/config/rl78/rl78-real.md b/gcc/config/rl78/rl78-real.md index aacaefff9e8..530b2fe90f9 100644 --- a/gcc/config/rl78/rl78-real.md +++ b/gcc/config/rl78/rl78-real.md @@ -179,7 +179,7 @@ [(set (match_operand:HI 0 "register_operand" "=A,A") (mult:HI (match_operand:HI 1 "rl78_nonfar_operand" "0,0") (match_operand:HI 2 "rl78_24_operand" "N,i")))] - "rl78_real_insns_ok () && !TARGET_G10" + "rl78_real_insns_ok ()" "@ shlw\t%0, 1 shlw\t%0, 2" @@ -189,7 +189,7 @@ [(set (match_operand:HI 0 "nonimmediate_operand" "=A") (mult:HI (zero_extend:HI (match_operand:QI 1 "general_operand" "%a")) (zero_extend:HI (match_operand:QI 2 "general_operand" "x"))))] - "rl78_real_insns_ok () && !TARGET_G10" + "rl78_real_insns_ok ()" "mulu\t%2" ) diff --git a/gcc/config/rl78/rl78-virt.md b/gcc/config/rl78/rl78-virt.md index e2e7f4750e2..8d1b2a8731c 100644 --- a/gcc/config/rl78/rl78-virt.md +++ b/gcc/config/rl78/rl78-virt.md @@ -116,7 +116,7 @@ [(set (match_operand:HI 0 "register_operand" "=v") (mult:HI (match_operand:HI 1 "rl78_nonfar_operand" "%vim") (match_operand:HI 2 "rl78_24_operand" "Ni")))] - "rl78_virt_insns_ok () && !TARGET_G10" + "rl78_virt_insns_ok ()" "v.mulu\t%0, %1, %2" [(set_attr "valloc" "umul")] ) @@ -125,7 +125,7 @@ [(set (match_operand:HI 0 "register_operand" "=v") (mult:HI (zero_extend:HI (match_operand:QI 1 "rl78_nonfar_operand" "%vim")) (zero_extend:HI (match_operand:QI 2 "general_operand" "vim"))))] - "rl78_virt_insns_ok () && !TARGET_G10" + "rl78_virt_insns_ok ()" "v.mulu\t%0, %2" [(set_attr "valloc" "umul")] ) |