aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.cc
diff options
context:
space:
mode:
authorTriffid Hunter <triffid.hunter@gmail.com>2023-05-20 07:50:00 +0200
committerGeorg-Johann Lay <avr@gjlay.de>2023-05-20 07:53:06 +0200
commit80348e6aec44966e20ca1ca823247ce1381071eb (patch)
treec5d3742e659174a7b421a125fc0ea1d634c4c560 /gcc/expr.cc
parent40c5ba42bbdb582a5250e6b3e237fb7afc9df9bf (diff)
downloadgcc-80348e6aec44966e20ca1ca823247ce1381071eb.zip
gcc-80348e6aec44966e20ca1ca823247ce1381071eb.tar.gz
gcc-80348e6aec44966e20ca1ca823247ce1381071eb.tar.bz2
target/105753: Fix ICE in add_clobbers due to extra PARALLEL in insn.
This patch removes the superfluous parallel in [u]divmod patterns in the AVR backend. Effect of extra parallel is that add_clobbers reaches gcc_unreachable() because the clobbers for [u]divmod are missing. If an insn has multiple parts like clobbers, the parallel around the parts of the insn pattern is implicit. gcc/ PR target/105753 * config/avr/avr.md (divmodpsi, udivmodpsi, divmodsi, udivmodsi): Remove superfluous "parallel" in insn pattern. ([u]divmod<mode>4): Tidy code. Use gcc_unreachable() instead of printing error text to assembly. gcc/testsuite/ PR target/105753 * gcc.target/avr/torture/pr105753.c: New test.
Diffstat (limited to 'gcc/expr.cc')
0 files changed, 0 insertions, 0 deletions