Check for incompatible pointer sign extension
authorH.J. Lu <hongjiu.lu@intel.com>
Wed, 11 Apr 2012 19:31:45 +0000 (19:31 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Wed, 11 Apr 2012 19:31:45 +0000 (12:31 -0700)
commitde6f3f7ab8d0ffd3a01bd045a90317d8404c9591
treea22fa5858f537ac51f83ae37d539fb42a9c209ab
parentd3ea1dbdb267abe428d444f586af1fc724556898
Check for incompatible pointer sign extension

gcc/

PR rtl-optimization/52876
* emit-rtl.c (set_reg_attrs_from_value): Handle arbitrary value.
Don't call mark_reg_pointer for incompatible pointer sign
extension.

* reginfo.c (reg_scan_mark_refs): Call set_reg_attrs_from_value
directly.

gcc/testsuite

PR rtl-optimization/52876
* gcc.target/i386/pr52876.c: New.

From-SVN: r186351
gcc/ChangeLog
gcc/emit-rtl.c
gcc/reginfo.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr52876.c [new file with mode: 0644]