Module Name: src Committed By: martin Date: Sat Mar 22 20:36:45 UTC 2014
Modified Files: src/external/gpl3/gcc/dist/gcc: dse.c Log Message: Avoid undefined behaviour (which causes traps on VAX). To generate a diff of this commit: cvs rdiff -u -r1.1.1.2 -r1.2 src/external/gpl3/gcc/dist/gcc/dse.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/gpl3/gcc/dist/gcc/dse.c diff -u src/external/gpl3/gcc/dist/gcc/dse.c:1.1.1.2 src/external/gpl3/gcc/dist/gcc/dse.c:1.2 --- src/external/gpl3/gcc/dist/gcc/dse.c:1.1.1.2 Sat Mar 1 08:42:20 2014 +++ src/external/gpl3/gcc/dist/gcc/dse.c Sat Mar 22 20:36:45 2014 @@ -290,6 +290,9 @@ static unsigned HOST_WIDE_INT lowpart_bitmask (int n) { unsigned HOST_WIDE_INT mask = ~(unsigned HOST_WIDE_INT) 0; + gcc_assert(n >= 0 && n <= HOST_BITS_PER_WIDE_INT); + if (n == 0) + return 0; return mask >> (HOST_BITS_PER_WIDE_INT - n); }