From c11c10d87b229fc9bfa4a1e0a5a342e3344f737d Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Wed, 21 Nov 2001 23:32:03 +0000 Subject: expr.c (expand_expr, [...]): Refine slightly and also support TREE_ADDRESSABLE. * expr.c (expand_expr, case VIEW_CONVERT_EXPR): Refine slightly and also support TREE_ADDRESSABLE. * tree.def (VIEW_CONVERT_EXPR): Document TREE_ADDRESSABLE. From-SVN: r47249 --- gcc/tree.def | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'gcc/tree.def') diff --git a/gcc/tree.def b/gcc/tree.def index c4f08cf..39ea31c 100644 --- a/gcc/tree.def +++ b/gcc/tree.def @@ -695,7 +695,12 @@ DEFTREECODE (NON_LVALUE_EXPR, "non_lvalue_expr", '1', 1) This corresponds to an "Unchecked Conversion" in Ada and roughly to the idiom *(type2 *)&X in C. The only operand is the value to be viewed as being of another type. It is undefined if the type of the - input and of the expression have different sizes. */ + input and of the expression have different sizes. + + This code may also be used within the LHS of a MODIFY_EXPR, in which + case no actual data motion may occur. TREE_ADDRESSABLE will be set in + this case and GCC must abort if it could not do the operation without + generating insns. */ DEFTREECODE (VIEW_CONVERT_EXPR, "view_convert_expr", '1', 1) /* Represents something we computed once and will use multiple times. -- cgit v1.1