aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorGeorg-Johann Lay <avr@gjlay.de>2012-09-04 09:37:08 +0000
committerGeorg-Johann Lay <gjl@gcc.gnu.org>2012-09-04 09:37:08 +0000
commitb8db7f86fd47dcae8e559b990816243f27ade021 (patch)
treea2acfc9516bd58d23cedac26a39f56f956a7c135 /gcc
parent12b48dc897e64ae199c0201d9602d93a5245af20 (diff)
downloadgcc-b8db7f86fd47dcae8e559b990816243f27ade021.zip
gcc-b8db7f86fd47dcae8e559b990816243f27ade021.tar.gz
gcc-b8db7f86fd47dcae8e559b990816243f27ade021.tar.bz2
re PR target/54476 ([avr] __builtin_avr_delay_cycles (-1ul) causes memory usage to explode on x86_64 host)
PR target/54476 * config/avr/avr.c (avr_expand_delay_cycles): Mask operand with SImode. From-SVN: r190920
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/avr/avr.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5ba70bf..3709a63 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-09-04 Georg-Johann Lay <avr@gjlay.de>
+
+ PR target/54476
+ * config/avr/avr.c (avr_expand_delay_cycles): Mask operand with
+ SImode.
+
2012-09-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/54458
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index bab13a4..95892ad 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -10449,7 +10449,7 @@ avr_mem_clobber (void)
static void
avr_expand_delay_cycles (rtx operands0)
{
- unsigned HOST_WIDE_INT cycles = UINTVAL (operands0);
+ unsigned HOST_WIDE_INT cycles = UINTVAL (operands0) & GET_MODE_MASK (SImode);
unsigned HOST_WIDE_INT cycles_used;
unsigned HOST_WIDE_INT loop_count;