This is the mail archive of the gcc-cvs@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]

r232689 - in /trunk/gcc: ChangeLog expr.c rtl.h...


Author: bernds
Date: Thu Jan 21 18:10:03 2016
New Revision: 232689

URL: https://gcc.gnu.org/viewcvs?rev=232689&root=gcc&view=rev
Log:
Fix PR66178, ICE due to misexpansion of constant expressions involving labels.

	PR middle-end/66178
	* expr.c (expand_expr_real_2) [PLUS_EXPR, MINUS_EXPR]: Don't
	drop EXPAND_INITIALIZER.
	* rtl.h (contains_symbolic_reference_p): Declare.
	* rtlanal.c (contains_symbolic_reference_p): New function.
	* simplify-rtx.c (simplify_binary_operation_1): Don't turn
	a subtraction into a NOT if symbolic constants are involved.

testsuite/
	PR middle-end/66178
	gcc.dg/torture/pr66178.c: New test.


Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr66178.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/expr.c
    trunk/gcc/rtl.h
    trunk/gcc/rtlanal.c
    trunk/gcc/simplify-rtx.c
    trunk/gcc/testsuite/ChangeLog


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