1 /* Shift right
, logical.
*/
3 DEFTREECODE (URSHIFT_EXPR
, "urshift_expr", '2', 2)
5 /* Return
-1, 0, 1 depending on whether the first argument is
6 less
, equal
, or greater to the second argument.
*/
7 DEFTREECODE (COMPARE_EXPR
, "compare_expr", '2', 2)
9 /* Same as COMPARE_EXPR
, but if either value is NaN
, the result is
-1.
*/
10 DEFTREECODE (COMPARE_L_EXPR
, "compare_l_expr", '2', 2)
11 /* Same as COMPARE_EXPR
, but if either value is NaN
, the result is
1.
*/
12 DEFTREECODE (COMPARE_G_EXPR
, "compare_g_expr", '2', 2)
14 /* Unary plus. Operand
0 is the expression the unary plus is applied
16 DEFTREECODE (UNARY_PLUS_EXPR
, "unary_plus_expr", '1', 1)
18 /* New array creation expression.
19 Operand
0 is the array base type.
20 Operand
1 is the list of dimension expressions.
21 Operand
2 is the number of other dimensions of unspecified range.
22 Once patched
, the node will bear the type of the created array.
*/
23 DEFTREECODE (NEW_ARRAY_EXPR
, "new_array_expr", 'e', 3)
25 /* New class creation expression.
26 Operand
0 is the name of the class to be created
27 Operand
1 is the argument list used to select a constructor.
28 There is no operand
2. That slot is used for the
29 CALL_EXPR_RTL
macro (see preexpand_calls
).
30 The type should be the one of the created class.
*/
31 DEFTREECODE (NEW_CLASS_EXPR
, "new_class_expr", 'e', 3)
33 /* Defines `this
' as an expression. */
34 DEFTREECODE (THIS_EXPR, "this", '1', 0)
36 /* Case statement expression.
37 Operand 1 is the case value. */
38 DEFTREECODE (CASE_EXPR, "case", 'x
', 1)
40 /* Default statement expression. */
41 DEFTREECODE (DEFAULT_EXPR, "default", 'x
', 0)
44 Operand 0 is the tried block,
45 Operand 1 contains chained catch nodes. */
46 DEFTREECODE (TRY_EXPR, "try-catch-finally", 'e
', 2)
49 Operand 0 is the catch clause block, which contains the declaration of
50 the catch clause parameter. */
51 DEFTREECODE (CATCH_EXPR, "catch", '1', 1)
53 /* Synchronized statement.
54 Operand 0 is the expression on which we whish to synchronize,
55 Operand 1 is the synchronized expression block. */
56 DEFTREECODE (SYNCHRONIZED_EXPR, "synchronized", 'e
', 2)
59 Operand 0 is the throw expresion. */
60 DEFTREECODE (THROW_EXPR, "throw", '1', 1)
62 /* Conditional operator.
63 Operand 0 is the condition expression
64 Operand 1 is the then-value
65 Operand 2 is the else-value. */
66 DEFTREECODE (CONDITIONAL_EXPR, "?:", 'e
', 3)
68 /* instanceof operator.
69 Operand 0 is the expression that is getting tested
70 Operand 1 is the class used for the test. */
71 DEFTREECODE (INSTANCEOF_EXPR, "instanceof", 'e
', 2)
73 /* Array initializers.
74 Operand 0 is the (sub) array target to initialize, left to NULL_TREE
75 when the node is created.
76 Operand 1 is a CONSTRUCTOR node. */
77 DEFTREECODE (NEW_ARRAY_INIT, "new_array_init", '1', 1)