re PR rtl-optimization/8396 ([sparc] optimizer ICE)

PR optimization/8396
	* tree-inline.c (initialize_inlined_parameters): Make sure the value
	of read-only constant arguments is passed with the right type.

From-SVN: r64362
This commit is contained in:
Eric Botcazou 2003-03-14 14:59:34 +00:00
parent 4d4b3a0316
commit 67c3c951a7
3 changed files with 15 additions and 1 deletions

View File

@ -1,6 +1,12 @@
2003-03-14 Eric Botcazou <ebotcazou@libertysurf.fr>
PR optimization/8396
* tree-inline.c (initialize_inlined_parameters): Make sure the value
of read-only constant arguments is passed with the right type.
2003-03-14 Andreas Jaeger <aj@suse.de>
* config/i386/linux64.h (CPP_SPEC): Define __LP64__ and _LP64 for
* config/i386/linux64.h (CPP_SPEC): Define __LP64__ and _LP64 for
64-bit.
2003-03-12 Richard Henderson <rth@redhat.com>

View File

@ -1,3 +1,7 @@
2003-03-14 Eric Botcazou <ebotcazou@libertysurf.fr>
* gcc.c-torture/compile/20030314-1.c: New test.
2003-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
* gcc.dg/decl-3.c: New test.

View File

@ -509,6 +509,10 @@ initialize_inlined_parameters (id, args, fn)
if (DECL_P (value))
value = build1 (NOP_EXPR, TREE_TYPE (value), value);
/* If this is a constant, make sure it has the right type. */
else if (TREE_TYPE (value) != TREE_TYPE (p))
value = fold (build1 (NOP_EXPR, TREE_TYPE (p), value));
splay_tree_insert (id->decl_map,
(splay_tree_key) p,
(splay_tree_value) value);