aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-09-18 10:48:31 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2009-09-18 10:48:31 +0200
commit2b5bcdeec811568080fbf35bf5927d6fa15b8e05 (patch)
tree981d8e57bf02df440ca5d153822f8c56b8b3fcaf
parent183d3da9969eba4318bb4a081529bfe612ef9505 (diff)
downloadgcc-2b5bcdeec811568080fbf35bf5927d6fa15b8e05.zip
gcc-2b5bcdeec811568080fbf35bf5927d6fa15b8e05.tar.gz
gcc-2b5bcdeec811568080fbf35bf5927d6fa15b8e05.tar.bz2
stmt.c (expand_asm_operands): Set REG_ATTRS on the temporary from output decl.
* stmt.c (expand_asm_operands): Set REG_ATTRS on the temporary from output decl. From-SVN: r151837
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/stmt.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d0e229f..cc4e9dc 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-18 Jakub Jelinek <jakub@redhat.com>
+
+ * stmt.c (expand_asm_operands): Set REG_ATTRS on the temporary from
+ output decl.
+
2009-09-17 Michael Haubenwallner <michael.haubenwallner@salomon.at>
PR target/40913
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 42f22b5..ffd180e 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -825,6 +825,8 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
{
op = assign_temp (type, 0, 0, 1);
op = validize_mem (op);
+ if (!MEM_P (op) && TREE_CODE (TREE_VALUE (tail)) == SSA_NAME)
+ set_reg_attrs_for_decl_rtl (SSA_NAME_VAR (TREE_VALUE (tail)), op);
TREE_VALUE (tail) = make_tree (type, op);
}
output_rtx[i] = op;