gcc_qsort: avoid overlapping memcpy (PR 86311)
PR middle-end/86311 * sort.cc (REORDER_23): Avoid memcpy with same destination and source. (REORDER_45): Likewise. From-SVN: r262092
This commit is contained in:
parent
3685dcd7fb
commit
21925ac173
@ -1,3 +1,9 @@
|
||||
2018-06-25 Alexander Monakov <amonakov@ispras.ru>
|
||||
|
||||
PR middle-end/86311
|
||||
* sort.cc (REORDER_23): Avoid memcpy with same destination and source.
|
||||
(REORDER_45): Likewise.
|
||||
|
||||
2018-06-25 Jeff Law <law@redhat.com>
|
||||
|
||||
* config/v850/v850.md (divmodhi4): Make sure to sign extend the
|
||||
|
@ -69,7 +69,7 @@ do { \
|
||||
memcpy (&t1, e1 + OFFSET, sizeof (TYPE)); \
|
||||
char *out = c->out + OFFSET; \
|
||||
if (likely (c->n == 3)) \
|
||||
memcpy (out + 2*STRIDE, e2 + OFFSET, sizeof (TYPE)); \
|
||||
memmove (out + 2*STRIDE, e2 + OFFSET, sizeof (TYPE));\
|
||||
memcpy (out, &t0, sizeof (TYPE)); out += STRIDE; \
|
||||
memcpy (out, &t1, sizeof (TYPE)); \
|
||||
} while (0)
|
||||
@ -101,7 +101,7 @@ do { \
|
||||
memcpy (&t3, e3 + OFFSET, sizeof (TYPE)); \
|
||||
char *out = c->out + OFFSET; \
|
||||
if (likely (c->n == 5)) \
|
||||
memcpy (out + 4*STRIDE, e4 + OFFSET, sizeof (TYPE)); \
|
||||
memmove (out + 4*STRIDE, e4 + OFFSET, sizeof (TYPE));\
|
||||
memcpy (out, &t0, sizeof (TYPE)); out += STRIDE; \
|
||||
memcpy (out, &t1, sizeof (TYPE)); out += STRIDE; \
|
||||
memcpy (out, &t2, sizeof (TYPE)); out += STRIDE; \
|
||||
|
Loading…
x
Reference in New Issue
Block a user