[PR tree-optimization/52558]: RFC: questions on store data race

Tobias Burnus burnus@net-b.de
Fri Jun 1 06:22:00 GMT 2012


Aldy Hernandez wrote:
> 	PR tree-optimization/52558
> 	* cfg.c (alloc_aux_for_edge): Fix comment.
> 	(alloc_aux_for_edge): Remove static.
> 	* basic-block.h (alloc_aux_for_edge): Protoize.
> 	* tree-ssa-loop-im.c (execute_sm_if_changed): New.
> 	(execute_sm_if_changed_flag): New.
> 	(execute_sm_if_changed_flag_set): New.
> 	(execute_sm): Do not generate data races unless requested.
> 	(tree_ssa_lim_initialize): Call alloc_aux_for_edges.
> 	(tree_ssa_lim_finalize): Call free_aux_for_edges.
> 	* gimple.h (block_in_transaction): New.
> 	(gimple_in_transaction): Use block_in_transaction.

> Index: gimple.h
> ===================================================================
> --- gimple.h	(revision 188080)
> +++ gimple.h	(working copy)

> +/* Return true if BB is in a transaction.  */
> +
> +static inline bool
> +block_in_transaction (basic_block bb)
> +{
> +  return bb->flags & BB_IN_TRANSACTION;

The compile does not seem to like the latter very much and, thus, warns 
for every file which includes gimple.h:

gcc/gimple.h: In function 'block_in_transaction':
gcc/gimple.h:1596:20: warning: overflow in implicit constant conversion 
[-Woverflow]
    return bb->flags & BB_IN_TRANSACTION;
                     ^

Tobias



More information about the Gcc-patches mailing list