Commit 21925ac1 by Alexander Monakov Committed by Alexander Monakov

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
parent 3685dcd7
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; \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment