r254679 - in /trunk/gcc: ChangeLog gimple-ssa-s...

jakub@gcc.gnu.org jakub@gcc.gnu.org
Mon Nov 13 10:26:00 GMT 2017


Author: jakub
Date: Mon Nov 13 10:26:13 2017
New Revision: 254679

URL: https://gcc.gnu.org/viewcvs?rev=254679&root=gcc&view=rev
Log:
	PR tree-optimization/78821
	* gimple-ssa-store-merging.c (compatible_load_p): Don't require
	that bit_not_p is the same.
	(imm_store_chain_info::coalesce_immediate_stores): Likewise.
	(split_group): Count precisely bit_not_p bits in each statement.
	(invert_op): New function.
	(imm_store_chain_info::output_merged_store): Use invert_op to
	emit BIT_XOR_EXPR with a xor_mask instead of BIT_NOT_EXPR if some
	but not all orig_stores have BIT_NOT_EXPR in the corresponding spots.

	* gcc.dg/store_merging_15.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/store_merging_15.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple-ssa-store-merging.c
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list