]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR target/39139 (ICE with stringop and register var)
authorJakub Jelinek <jakub@redhat.com>
Tue, 10 Feb 2009 16:22:29 +0000 (17:22 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 10 Feb 2009 16:22:29 +0000 (17:22 +0100)
commitfc3103e7c981bfdd5c842f82ac6047256b5d1ee8
treeeb1fb857e229b58695341024ec649f95610b921f
parentdbf9ee15b8b1863086ac94c0e2657cd911655880
re PR target/39139 (ICE with stringop and register var)

PR target/39139
* function.h (struct function): Add has_local_explicit_reg_vars
bit.
* gimplify.c (gimplify_bind_expr): Set it if local DECL_HARD_REGISTER
VAR_DECLs were seen.
* tree-ssa-live.c (remove_unused_locals): Recompute
cfun->has_local_explicit_reg_vars.
* tree-ssa-sink.c (statement_sink_location): Don't sink BLKmode
copies or clearings if cfun->has_local_explicit_reg_vars.

* gcc.target/i386/pr39139.c: New test.

From-SVN: r144065
gcc/ChangeLog
gcc/function.h
gcc/gimplify.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr39139.c [new file with mode: 0644]
gcc/tree-ssa-live.c
gcc/tree-ssa-sink.c