re PR rtl-optimization/66790 (Invalid uninitialized register handling in REE)

PR rtl-optimization/66790
	* df-problems.c (LIVE): Amend documentation.

From-SVN: r227874
This commit is contained in:
Eric Botcazou 2015-09-17 15:35:24 +00:00 committed by Eric Botcazou
parent 01610fec49
commit 308fbc4290
2 changed files with 15 additions and 9 deletions

View file

@ -1,3 +1,8 @@
2015-09-17 Eric Botcazou <ebotcazou@adacore.com>
PR rtl-optimization/66790
* df-problems.c (LIVE): Amend documentation.
2015-09-17 Richard Sandiford <richard.sandiford@arm.com>
* Makefile.in (OBJS): Add optabs-libfuncs.o, optabs-query.o

View file

@ -1309,22 +1309,23 @@ df_lr_verify_transfer_functions (void)
/*----------------------------------------------------------------------------
LIVE AND MUST-INITIALIZED REGISTERS.
LIVE AND MAY-INITIALIZED REGISTERS.
This problem first computes the IN and OUT bitvectors for the
must-initialized registers problems, which is a forward problem.
It gives the set of registers for which we MUST have an available
definition on any path from the entry block to the entry/exit of
a basic block. Sets generate a definition, while clobbers kill
may-initialized registers problems, which is a forward problem.
It gives the set of registers for which we MAY have an available
definition, i.e. for which there is an available definition on
at least one path from the entry block to the entry/exit of a
basic block. Sets generate a definition, while clobbers kill
a definition.
In and out bitvectors are built for each basic block and are indexed by
regnum (see df.h for details). In and out bitvectors in struct
df_live_bb_info actually refers to the must-initialized problem;
df_live_bb_info actually refers to the may-initialized problem;
Then, the in and out sets for the LIVE problem itself are computed.
These are the logical AND of the IN and OUT sets from the LR problem
and the must-initialized problem.
and the may-initialized problem.
----------------------------------------------------------------------------*/
/* Private data used to verify the solution for this problem. */
@ -1531,7 +1532,7 @@ df_live_confluence_n (edge e)
}
/* Transfer function for the forwards must-initialized problem. */
/* Transfer function for the forwards may-initialized problem. */
static bool
df_live_transfer_function (int bb_index)
@ -1555,7 +1556,7 @@ df_live_transfer_function (int bb_index)
}
/* And the LR info with the must-initialized registers, to produce the LIVE info. */
/* And the LR info with the may-initialized registers to produce the LIVE info. */
static void
df_live_finalize (bitmap all_blocks)