Commit 61c74e84 by Martin Liska Committed by Martin Liska

Revert 2 ::get to ::get_create for IPA summaries (PR ipa/86279).

2018-07-02  Martin Liska  <mliska@suse.cz>

        PR ipa/86279
	* ipa-pure-const.c (malloc_candidate_p): Revert usage of ::get.
	(propagate_nothrow): Likewise.
2018-07-02  Martin Liska  <mliska@suse.cz>

        PR ipa/86279
	* gcc.dg/ipa/pr86279.c: New test.

From-SVN: r262298
parent b412559e
2018-07-02 Martin Liska <mliska@suse.cz>
PR ipa/86279
* ipa-pure-const.c (malloc_candidate_p): Revert usage of ::get.
(propagate_nothrow): Likewise.
2018-07-02 Martin Liska <mliska@suse.cz>
PR ipa/86323
* ipa-inline.c (early_inliner): Revert wrongly added ::get call.
......
......@@ -923,8 +923,7 @@ malloc_candidate_p (function *fun, bool ipa)
cgraph_edge *cs = node->get_edge (call_stmt);
if (cs)
{
ipa_call_summary *es = ipa_call_summaries->get (cs);
gcc_assert (es);
ipa_call_summary *es = ipa_call_summaries->get_create (cs);
es->is_return_callee_uncaptured = true;
}
}
......@@ -1803,7 +1802,7 @@ propagate_nothrow (void)
w = node;
while (w)
{
funct_state w_l = funct_state_summaries->get (w);
funct_state w_l = funct_state_summaries->get_create (w);
if (!can_throw && !TREE_NOTHROW (w->decl))
{
/* Inline clones share declaration with their offline copies;
......
2018-07-02 Martin Liska <mliska@suse.cz>
PR ipa/86279
* gcc.dg/ipa/pr86279.c: New test.
2018-07-02 Martin Liska <mliska@suse.cz>
PR ipa/86323
* g++.dg/ipa/pr86323.C: New test.
......
/* PR ipa/86279 */
/* { dg-do compile } */
/* { dg-options "-fipa-pure-const" } */
typedef __SIZE_TYPE__ size_t;
extern inline __attribute__ ((__always_inline__))
void *
memset (void *x, int y, size_t z)
{
return __builtin___memset_chk (x, y, z, __builtin_object_size (x, 0));
}
void
foo (unsigned char *x, unsigned char *y, unsigned char *z,
unsigned char *w, unsigned int v, int u, int t)
{
int i;
for (i = 0; i < t; i++)
{
memset (z, x[0], v);
memset (w, y[0], v);
x += u;
}
__builtin_memcpy (z, x, u);
}
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