This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH GCC]Cleanup tree ifcvt by renaming any_mask_load_store.


Hi,
This is a simple patch for tree ifcvt.  It renames variable any_mask_load_store to any_pred_load_store, as well as makes the variable visible in file scope.  First rationale is name of that variable is confusing with masked load store.  In fact, it also covers cases in which data race store is introduced, and that's not masked load store at all.  From the point of view of the variable's def/use, it's clear the variable indicates we introduces new load/store during if-conversion that needs to be predicated by some conditions.  The second rationale is the variable records a global flag information and is used in many places.  Together with patch at https://gcc.gnu.org/ml/gcc-patches/2016-04/msg01395.html, this patch resolves ambiguity of the variable and is good for next patch fixing PR56541

Bootstrap and test on x86_64 and AArch64, is it OK?

Thanks,
bin

2016-04-22  Bin Cheng  <bin.cheng@arm.com>

	* tree-if-conv.c (any_pred_load_store): New static variable.
	(if_convertible_gimple_assign_stmt_p): Remove parameter.  Use
	any_pred_load_store instead of and_mask_load_store.
	(if_convertible_stmt_p, if_convertible_loop_p_1): Ditto.
	(if_convertible_loop_p, insert_gimplified_predicates): Ditto.
	(combine_blocks, tree_if_conversion): Ditto.

Attachment: cleanup-mask_load_store-ifcvt-20160422.txt
Description: cleanup-mask_load_store-ifcvt-20160422.txt


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]