flow.c (mark_regs_live_at_end): Follow expand_function_end and replace BLKmode with DECL_RTL's mode.
* flow.c (mark_regs_live_at_end): Follow expand_function_end and replace BLKmode with DECL_RTL's mode. From-SVN: r31754
This commit is contained in:
parent
eca1bd08cf
commit
ea2d416aac
@ -1,3 +1,8 @@
|
||||
2000-02-01 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* flow.c (mark_regs_live_at_end): Follow expand_function_end and
|
||||
replace BLKmode with DECL_RTL's mode.
|
||||
|
||||
2000-02-01 Zack Weinberg <zack@wolery.cumb.org>
|
||||
|
||||
* frame.c (find_fde): Convert for loop to do-while so compiler
|
||||
@ -206,7 +211,7 @@ Tue Feb 1 00:57:40 2000 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||||
|
||||
* c4x.h (INIT_TARGET_OPTABS): Add all missing local optab entries.
|
||||
* c4x.h (INIT_TARGET_OPTABS): Add all missing local optab entries.
|
||||
* c4x.c: Define the optab rtx values.
|
||||
(c4x_add_gc_roots): Add the ggc roots for these optab rtx values.
|
||||
(c4x_emit_libcall): Use new optab rtx values.
|
||||
@ -217,7 +222,7 @@ Tue Feb 1 00:57:40 2000 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||||
|
||||
* c4x.c (c4x_output_ascii): Restrict line length of output when TI
|
||||
* c4x.c (c4x_output_ascii): Restrict line length of output when TI
|
||||
syntax is used.
|
||||
(c4x_function_prologue): Use regnames intead of float_reg_names when
|
||||
TI syntax is used.
|
||||
@ -309,7 +314,7 @@ Fri Jan 28 10:57:58 2000 Jason Eckhardt <jle@cygnus.com>
|
||||
|
||||
2000-01-27 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* alpha.md (trunctfsf2): New.
|
||||
* alpha.md (trunctfsf2): New.
|
||||
|
||||
2000-01-27 Andrew Hobson <ahobson@eng.mindspring.net>
|
||||
|
||||
|
14
gcc/flow.c
14
gcc/flow.c
@ -2809,7 +2809,7 @@ static void
|
||||
mark_regs_live_at_end (set)
|
||||
regset set;
|
||||
{
|
||||
tree type;
|
||||
tree result, type;
|
||||
int i;
|
||||
|
||||
/* If exiting needs the right stack value, consider the stack pointer
|
||||
@ -2868,22 +2868,22 @@ mark_regs_live_at_end (set)
|
||||
|
||||
/* Mark function return value. */
|
||||
|
||||
type = TREE_TYPE (DECL_RESULT (current_function_decl));
|
||||
result = DECL_RESULT (current_function_decl);
|
||||
type = TREE_TYPE (result);
|
||||
if (type != void_type_node)
|
||||
{
|
||||
rtx outgoing;
|
||||
|
||||
if (current_function_returns_struct
|
||||
|| current_function_returns_pcc_struct)
|
||||
type = build_pointer_type (type);
|
||||
|
||||
/* ??? Share this code with expand_function_end. */
|
||||
#ifdef FUNCTION_OUTGOING_VALUE
|
||||
outgoing = FUNCTION_OUTGOING_VALUE (type, current_function_decl);
|
||||
#else
|
||||
outgoing = FUNCTION_VALUE (type, current_function_decl);
|
||||
#endif
|
||||
/* If this is a BLKmode structure being returned in registers,
|
||||
then use the mode computed in expand_return. */
|
||||
if (GET_MODE (outgoing) == BLKmode)
|
||||
PUT_MODE (outgoing, DECL_MODE (DECL_RESULT (current_function_decl)));
|
||||
PUT_MODE (outgoing, GET_MODE (DECL_RTL (result)));
|
||||
|
||||
if (GET_CODE (outgoing) == REG)
|
||||
mark_reg (set, outgoing);
|
||||
|
Loading…
Reference in New Issue
Block a user